From patchwork Wed Apr 26 20:10:20 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Colin Walters X-Patchwork-Id: 9701939 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id DF525603F6 for ; Wed, 26 Apr 2017 20:11:07 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id CF2932041F for ; Wed, 26 Apr 2017 20:11:07 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id C36BB2861A; Wed, 26 Apr 2017 20:11:07 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.1 required=2.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_MED,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from emsm-gh1-uea11.nsa.gov (smtp.nsa.gov [8.44.101.9]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id E9BF82041F for ; Wed, 26 Apr 2017 20:11:03 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.37,255,1488844800"; d="scan'208";a="5249106" IronPort-PHdr: =?us-ascii?q?9a23=3AdF0UKxNxtIvFcExe+Mkl6mtUPXoX/o7sNwtQ0KIM?= =?us-ascii?q?zox0LP79rsbcNUDSrc9gkEXOFd2CrakV1ayK7+u5BTFIyK3CmUhKSIZLWR4BhJ?= =?us-ascii?q?detC0bK+nBN3fGKuX3ZTcxBsVIWQwt1Xi6NU9IBJS2PAWK8TW94jEIBxrwKxd+?= =?us-ascii?q?KPjrFY7OlcS30P2594HObwlSijewZbJ/IA+5oAjeucUanIRvJ6YswRbVv3VEfP?= =?us-ascii?q?hby3l1LlyJhRb84cmw/J9n8ytOvv8q6tBNX6bncakmVLJUFDspPXw7683trhnD?= =?us-ascii?q?UBCA5mAAXWUMkxpHGBbK4RfnVZrsqCT6t+592C6HPc3qSL0/RDqv47t3RBLulS?= =?us-ascii?q?wIOSQ58GXKgcJuiqxVrg+qqxhmz4PVZY2YMud1cKHActMAXWdPXcZfWTJODY2z?= =?us-ascii?q?c4QBCOQPM/tAr4T/ulcDowWxBRK3CePzyDJFnGP60Lcm3+kjFwzNwQwuH8gJsH?= =?us-ascii?q?TRtNj4KqASUeS0zKnO0D7Mb+lZ2TPh6IfWaBAhuuyHULV+cMXLzUkvCx3Kjk+L?= =?us-ascii?q?qYH+ITOayP4NvHOG7+plT+6vjHQnqw5orzWp28wihI7JhocPxVDF8yV02Ik1Jd?= =?us-ascii?q?ykSE57fN6rC4FcuD2dN4tzRM4pXmJmuD4ix7EbtpO2czIGxZQ6yxLFdfCKfJaE?= =?us-ascii?q?7gj+WOqJIDp1hWhpdK+iixqv60StxffwWte33VtMsyFLiMPDtmoX2BzW8sWHT/?= =?us-ascii?q?x98Vq/1juXzADT7/1EIVgzlarGN54t2r4wmYQXsUTEBiL2hF/5jLWXdkU54eik?= =?us-ascii?q?8fjnY7X6qZ+cMI94kAf+Pbg1msOjG+g4NwkOX2yD9eS90r3s41H5Ta1XgvA5na?= =?us-ascii?q?TVqpDXKdkBqqKnDAJZzJwv5wunAzejytsYnH0HLFxfeBKAiojkI0rOL+78Dfe+?= =?us-ascii?q?hVSsjThqy+ndMb3mH5XNKGTMn6n6fbtm905dyBY8zdBY555ODLEBO+j8VlX+tN?= =?us-ascii?q?zfEB81Kxa0zPr/CNVhyoMeXnqCAq2eMKPUq1CI+uIvLPOKZIIOujb9LP4l5/v0?= =?us-ascii?q?gn8ihV8SY7Op3YANZHC/BPRmLF2TYWDwjdcZDWcKog0+QfToiF2ASzFce3WyX7?= =?us-ascii?q?k75jE9CYKmE5zORo6pgLyc0ya0BYBWZmZaClCRC3vocJ+EW/gUYiKIPsBhiiAE?= =?us-ascii?q?VaSmS4I52xCutQv6y795IerO4SAYu4zs28Vy5+3Jjx4y7SZ0D8Of026TU250gn?= =?us-ascii?q?kERzgs3KBwuUZ90EuM0bBkg/xEEtxe/+5GXRs/NZ7byex6F83+VxnfftiXUlam?= =?us-ascii?q?Q9SnATY3Tt4rxd8BfVp9Ec24jh/fxyqqH6MVl7uTCZMp7qLTxWLxKt1hxHbB0a?= =?us-ascii?q?kuk0MpQtBTNWG8gK5w6RTTDZbTk0qFj6aqabgc3CnV+WaDzGuOu0dYXRV1UaXB?= =?us-ascii?q?RHwfZ03Woc7/5kzYVb+uCrUnMhVfxsKYLKtFdMHph01cRPj/INTef36xm2CoCB?= =?us-ascii?q?mW3rODdpDqe2QG3CjGEEgLiRoT/XedNQgmAieuuX7RAyJ0GVLoeUPs/vF0qGmn?= =?us-ascii?q?QU8s0wGKc0ph2qK7+h4Pn/OcTe8c3rMfuCo6rjV0BFe908vNC9uOvAptZqJcYc?= =?us-ascii?q?ky4F1fz2LWqxR9PoC8L6BlnlMecB54v0Dp1xVqEYhAktIlrHAtzApvM66Y10lB?= =?us-ascii?q?dzyA15DqJrLXMnXy/Ayoa6POwF7RzcyW+qYR5/QisFjsph2mFk84/3VgydlV3G?= =?us-ascii?q?OW5o/WAwoKTZLxTkE3+gBhp7HUeCk94JjU1WF3PKmvtD/C3NwoBO4/xRamZdtf?= =?us-ascii?q?Nr2LFBPqGc0AG8euMPAqm0Subh8cMuFd7qo0P9+4ePucw66mJ/hgkyy8jWtc/Y?= =?us-ascii?q?B911iA9y1mSu7Hx5wF2e2X3hObVzfgi1esqtz3lp1ZajETBGW/zTPpC5JWZq13?= =?us-ascii?q?YYkEE3yuI9GtytV4mZHtR2ZS9ES/CFMexM+pZR2SYkT73Q1R0UQXpWKomTCjwj?= =?us-ascii?q?NujT4ptK2f0DbJw+T4exoNInRLS3V6jVfwPYi0iMgXXFapbwc1iBul4lz6y7JH?= =?us-ascii?q?q6R/KGnTR0hIcjPyL2FjVKu/rKCCY8lV5JMvqyVXX/y2YUqGRb7lvxsazyTjEn?= =?us-ascii?q?NaxDA6bDGqpoz1nwdkh2KZLXZzqmfZeM5ryBfE/NzcRPhR3jsaSyljkzXXAEaz?= =?us-ascii?q?P8Wx99WOi5jDqvy+V36mVpBLaynryoeAtC+l6m1wHRK/mP6yl8b8EQgnzSD7zM?= =?us-ascii?q?NmVSLSrBbzeoPrzbi1Mfp7fkl0A1/x89J6FZtjkos0np0fw2IWiY6S/XoDjWfz?= =?us-ascii?q?NtNb1Ln7bHYRQz4LxMLa7BLj2EJ9MnKD35j5WWmFwst9e9m6ZXsb2iEj4MBME6?= =?us-ascii?q?eZ979EkjVzolqjqwLef+R9ki0ayfs0534Qm/sJtxY1ziWBHrASGlFVPTLqlxuV?= =?us-ascii?q?9N2+sqNXa3uvcbSq0kpxg8yhBqmYog5AQHb5ZosiHSho48VnKl3MzXnz55r4d9?= =?us-ascii?q?nRcdIStgSYkxnagOhTMp4xkeAKhSV/M2LnoXIl0/I7jQBp3ZyipoiINnhi8bm2?= =?us-ascii?q?Ah5dOTz5fcUT9S/xjaxGhMaZw5ivHol9GjUMRJboVeinEC8Wtfv5LwaBCjs8qm?= =?us-ascii?q?uFFrrFBgKf9VxmoGzVE5CwLX2XP34Zzch4RBaBOkNfjgcUXC81npEnDAyqwtLu?= =?us-ascii?q?cFth7DAL+lH4sgdMyv5vNxTnXGfQvgGoaiszSJiaNxdW4B9N6FrSMcyE9O1zBz?= =?us-ascii?q?tY/pqjrAOTNmObex5EDWYTWkyLH1rjJKWh5cHc8+iEAeqzN/7Obq+KqexaSfiI?= =?us-ascii?q?2Y6v3ZF88DuXMMWAIGViD+Yn1UVZRXB2Bd7VmzMRRCwLjyjNddKUpA+g+i1rqc?= =?us-ascii?q?Cy6O7rVBjh5IeVDrtdK9Fv+xe2gKqYLeGfmCN5JSxf1pMWyn/C0KIf00IKiyFy?= =?us-ascii?q?azmtFqwNtSDXTK3Oh6BXFAQUayVvNMtP9KIxxRNCNtLeit/v0b54lPE1AU9fVV?= =?us-ascii?q?P9gsGpedAKI2alOVPBHkaELqyGJSXQzsH5YKO8U6ZQjPlatx2xvzaUCUnjMSiC?= =?us-ascii?q?lzbzUxCjK+ZMjDuUPBZGooGybg5tCXT/TNLhchC7KMF4giYozr0yh3PKKWkcPC?= =?us-ascii?q?N9c0xTsLKf8zlUgvJlG2xO9nBlN/WLmz6F7+nELZYbqeBkDT9zm+Je4XQ60KdV?= =?us-ascii?q?7DpeSPxuhiTdssRio0q4nemLyzpnVgdOqzlQiY2XvURiI7jZ9oJaVXfK5h0N8X?= =?us-ascii?q?6QCxMMp9d/Dd3voa9QwMDVlK3vMDdC787U/cwECsjPMs2HLmAuMRX3Fz7PFwYF?= =?us-ascii?q?ViSkNX/FiExSjv6S7WeZrp4kpZjwgJAOUKNUVEQpFvMGDURoBMcNIJZ4XjMjl7?= =?us-ascii?q?6Wl9MH6mSloxnQXspauIrLVvWIAfXgMDyZl6VLZwMUwbPkKoQeLpf020N4ZVlk?= =?us-ascii?q?govHAE3QXchTrS1naw87ukRN8HxlQW001EPpcASt4GUcFfSshB45lhN+Yfgx9D?= =?us-ascii?q?fr+1o3Ol3KpC4qnEkrntXkgC6ecDjqI6eqWoFZFSn0ulMtPZP8RgZ6cRe9nVd4?= =?us-ascii?q?NDveQbJekadgf3hxiADAoZtPBeJcTapcbR8TxfCXY+sn3E9ZqiWgy09H6/XKCY?= =?us-ascii?q?d+lAsqdp6sqmxP1xhlbNErOazaPLBJwURIhqKSoi+o0fg8wAkAKEkX9GOfYy0I?= =?us-ascii?q?uEsTNrk6PSWo+Pds6Q+DmzdZfmgDSeYqqOpw9kwhI+SA0z7g07lbJ0CrKeOfNL?= =?us-ascii?q?2WtHLalcGUQlM9zVgHl0hf/bdr1scjfVKUV1oxw7qRDRgJM9TNKR1NZcpI6HfT?= =?us-ascii?q?ZTqOsfnKwZ9tIoq9EeboTemTu6kKhkKkHR0kEJ4S4cQbGZmgykbYLd3oLLQd0x?= =?us-ascii?q?Ui+BzrJEmZDPROYB+EjS0Io9++zJBqxolQPSsSAX9nMSWw6LfXvRElj+aeXNcs?= =?us-ascii?q?Y3caQosFOmgwWMKkhy5Tp25AAyWv0uIF1AiC6CfxqTnLDDbiddVja+2UaglyCN?= =?us-ascii?q?yt4jUw6au2iUPN8prEPW36McliutnV5uMAvpqHF/RUTbp9skfbgYVYQWKlU3LX?= =?us-ascii?q?G96vO5fwc5UsbcDzCnuiVly/jCg1QNn3PNesKaiFmg7oRYBJsIWB2zAjL8C9HC?= =?us-ascii?q?kEGxhsv+ED+L58ZQobbpogfxHoswU+N6qiIAaXydihX2GtKT5KQPZF1uW6e6Zb?= =?us-ascii?q?zywyYe+m0HEgVI01z/Gr8U4RQ5EHlhLexeyjZoZEVyjzBnxddh7ApSo+j2huKv?= =?us-ascii?q?w+wuEhzxPUqVMcKSyEdPR1aGxYuNExHU+SIXRzCmo/W1+cjYrC7xWx0LAT/ypS?= =?us-ascii?q?hc1b3fdDsHfgop/VeCisV7CzqZXJryogasArrLd1MYziPsSJqovRnjnfTZnWtQ?= =?us-ascii?q?2FVjS1GuFBldhROi1YRuBEmW84OcAcv4pO91YxXN8kJ7NTEKksuqyqaT18ACEJ?= =?us-ascii?q?0yAZUZiN0yYfjeeixbTajAyQf444MB0EqplChcEdUyFuaCMEuKCjT5nWl3ODSm?= =?us-ascii?q?UTLwcT8AVM5AYEloBue+Do+5fHQ4FXxD5Xuf10VDHHFp5y91v0UmuWm0T3SO29?= =?us-ascii?q?k+y12gJf1Ojs0t8aWBFjCUhdwOJWllAwJr9uNqcepJLHvDiTeEzmu2LtzfepK0?= =?us-ascii?q?NKyc3IbVH4CpTKtXbkWC0G5XIUXZNPyG3YFZkKiQp2crwrpFJXL429Zkb+/SYr?= =?us-ascii?q?x5p3ELm8VMCrwVklrXIHRyelE9pBF+9mv0jNWD1geZyrrovqO4lKSG9K5JKds0?= =?us-ascii?q?tZkFlqMyOhx5tQMd1C4j4NXDhKoDWSptiyRdZC2cBoEZADPM1zu3DnGKNLIJKR?= =?us-ascii?q?uWE5uqTzyn/F/DAxqE21xC+uG6++Ve5Z/HYTGgQoJ2SftkkgFPEg8mHM/VDRql?= =?us-ascii?q?p05ftUBqCTjUVtpzZwBpFOBjBV1X+7K1R8UnxGvPtGKKTPc81RWP4yZQexNBw4?= =?us-ascii?q?EP4pxU2J/UVvknf+bC1+rAxa+zrSXwMsTykanq/tmSECqsGgITIaRIhIYi8nby?= =?us-ascii?q?fZMA+bmCdXvRhZa0F2W5AWHNdF+7cH3YRK5MrOU0CsJj8ZXBZ6LAI3zeJflVJf?= =?us-ascii?q?sEWfYS3dEQ2odfPUvx1rYcuRqdWmIO7//AhZloPtqPo4+LkbR326hQ2tRsjTr4?= =?us-ascii?q?/mud2QrESOcLr3PvahbnDfVDjMlQ6/hbM6AJnQ5STTNxBbK5Ziw3o+fZfhEXLL?= =?us-ascii?q?PQhBJ68DJUpbUr51ZM5bre9EfM9rZrwJ+bNzCR2aXB/vHpKgrOVeJFbJWTveNz?= =?us-ascii?q?mB8vC4oY/L9rPdR/TvatCOynraTa96JYt16T7+G7j2y4Be4Vb21u1r9kxkVVjM?= =?us-ascii?q?KzqBo8j5JgMX+MmicVPvvoc3EjzLAJd/imbty1pEd8oQXS2l7ooUx49e6HntV+?= =?us-ascii?q?10yE7zv/NO97N884k4/6hpyduoJafVMflaqVRnAgSOCQp36pUgG3N/R2dMYu8L?= =?us-ascii?q?NPjeY6IZjdz0q+/tE6wb8hqV+/ZWadHfPUHOhtG/Ci2ASRxDhAoBtSQaIRWC2P?= =?us-ascii?q?GYgKJ0VMKlpfTj2k03/Vi+LxkGzLRz6oeY4KaIo/XXbxTJx7geRqfqXt/zrqgr?= =?us-ascii?q?u06K5/0rjqQOemtuYw2jCucdSNUQxmL9zaAu0SIsEt/MH7P69/5FTHI1hDXgm4?= =?us-ascii?q?pyH18OAPMbAaKL/ZhCnmc/g+HZNMcZcqZMmmaVEh6rD6ENxGW36ySNJmllmRbO?= =?us-ascii?q?3wv2QWyt8F/8tTV4TjfUz9f/jkpVUaG6BUFWXyeyOE94tjaPMBDptNrxt6Q19l?= =?us-ascii?q?s5Mnf4tNKXiWuuJK9XH9DlJNOCOyU0o0gXjJIpTNy1xY8bAca9IMsW8HxmaPve?= =?us-ascii?q?6n+kkyhFo6hdnIrS+MCV+vLQHXm7lK2XsLCNyT9Xy3QiulE/8N+gPOnU59KWW/?= =?us-ascii?q?Soy3oRTyBntgTdRRG1rqLUr0sIOU2L10fGg5cKMc1Y3XYm0EHm+OkjT8gp+AVY?= =?us-ascii?q?CInAe+sIpSrvNzvs3Vaff9U3WzGa0ztMG1L4EUJ1GKYi123tu8LJj23f+0UyRo?= =?us-ascii?q?l3dUzomwB4D5kiJUIq8lgXzTIJERIRZhCDELGoGUPlIJMGVUgCbBSKx726dbk3?= =?us-ascii?q?3EJt2LOv5enTbeNmC6oLKPldkhaEnEJHFZIOra0eXLV8dkdc9K/WvAftEZToUu?= =?us-ascii?q?P9lXUuKf26XNxV/doet3s47Qa1XwCg5otb77YHlJCIcbZJboPNvMBn4UZo/zwP?= =?us-ascii?q?di1RgBhnlRy5TOQcqfv/7djcrZWn9PyhVLs3R+UQ7Rg7HX5yj5zqgFAsudvXzf?= =?us-ascii?q?tTSpXJiYTj9wBAO2aKt5zG0xZgKeoPJYWrfKxj93kePCgROXYOPduQa/kh7C5g?= =?us-ascii?q?Ky3T6EZeAswQZdMZMs3NmRpXikHzW7Fc6NDbGlmGBId3bcwo6HD3yD8t+5smTu?= =?us-ascii?q?ng8CO2JYzY71xVI/NDljtjlNbYq+gT3/XfEzUY4XiWaxh03iON0YKNBOzq/eWR?= =?us-ascii?q?0t3UUU0JHjIuWYdHODWC4RCnRvaylJjxXQOb8NXzj4widEKQXXGxmKUFsrpSHu?= =?us-ascii?q?5AkCr7wyNeGprzh/2Lr9qm8HFXuUFfEIZv8R3FH71SPpplNhT+ismrQU98Cizk?= =?us-ascii?q?eM7KchouueyWxvoD4uhlM0vxe5UbIxIexL7g73paUBduQqbsvlmFReIReMdmSP?= =?us-ascii?q?Tco39J64JvMbMAMUOBq5ztqjdIrFE2DxEzaL8ssDNVaknOkBdSW6but74KkhEc?= =?us-ascii?q?XsJhuU9QBWKwP3oz5z/AVaRTkKmRB+Ia/y6WTqwPSUpoND1xQw+72ZVpYbupnu?= =?us-ascii?q?tHvnlAnixjvPggyyZmSwekuS3wu6IN3iot+L6kuzUaonxJV/iQnSjOB1VCyvQK?= =?us-ascii?q?kKgdBm3t6Vy5enYDapX97KNgJcT6+okr+24/bgk7fy0aQeSgDDn9j6GPAoyPtt?= =?us-ascii?q?JQngKCuMXKbb+uMCcTN7U9yRT4R3h+0wjThwho8GoVQjq66N8rOYS9NdwjxiW2?= =?us-ascii?q?BWjRbEwM7b9RsMvtqV4LS/M7aVJ/wGp51MiKXSkNRNHSFGY0iQgkcn9IcJVZ6R?= =?us-ascii?q?8VD6MomCqHvrFa/gEIZzfZCoal9ZfencfG3XkwVtlryXjQpqKbmpMmyntllM1o?= =?us-ascii?q?7iSWonQda/TYU9NwAnj0zopfxuj+Z/Kjs+8ZTItmzK+sUOQFMsml+Gu5xI9mWk?= =?us-ascii?q?m7ybQCB1C5KvMMxq/HUye5Tm2VQeaLc2iMnjYhNU7y4RioLkEpZ8pRqk89M/fC?= =?us-ascii?q?hoRCmAH7VrN0XCqQr0fBzGM/KeMaax42uIC/dgwFUe4RZvWTJe81zf0iElsDcX?= =?us-ascii?q?nJHTdsBO+yq1GtmpR0O3R67kngZ+Ti7BzmOsOIGhYYCY7asoJx+fuiS2KdOH9g?= =?us-ascii?q?yQZ/PFV19+jDFFQ+qOtcf4yXndfOm9RxyfQFeOt1MS0hpt4TnZpu6YyV0MeJch?= =?us-ascii?q?HRyY3/JdPPrfibBP3fyVolemdAXroffwz1+50wPsQlVL3LAbtZoRMcCLAhT5M/?= =?us-ascii?q?MWfx6Lp5LBh3cg7WeLS0ntfqqfyWaZdOoH/W9F0wJj/GuxIf0vy0URB7b5eyin?= =?us-ascii?q?XqJ5AwQihOr8djCxthGItPFdgNrw+gA56Tg6G0lcO++1l9u+8RqqrwC/bK1Nuj?= =?us-ascii?q?04V2RZha6lSBPCzNC6lznkRlkuOyj+/O0pbvDcPieMsEW/ZgT2/Ea7/GG4C/JS?= =?us-ascii?q?yUOsL4ZUFK6bmc0Kh2Uh+JfiD2Q7KGtDG4NPVj+Ug6xJR4fPDSzDMx8b7Ww97y?= =?us-ascii?q?Z2BHpie5s3GFLpxf7EbFBebGRRJbVeKF8Hp5Ha0QdYb08+MOPsI5zdiE5wl89i?= =?us-ascii?q?9C0NeEI6e9sk/MwFx0eozBIEvvxSk5RZEAIA6jPks0nW/ZtnPdDGxYLsilL8lt?= =?us-ascii?q?ndmUAgXp50lwgmEtenVBF3HpRdiLP2gb3NiyZAqQ9AJEF9wDhfK4eVYktq2uTu?= =?us-ascii?q?llIo5FlvuutLUGl9ZpNi7OSM9VMSHMLL95ICBRAfvXpFcyeRMEsKY6Wp0zZZeQ?= =?us-ascii?q?JEMIK1qAySzowQvFy030eMSm1LyVLyYO7nVH07XF3CBJpwajpfmZgszjULbebJ?= =?us-ascii?q?ztQv7SMSwlWS+eRTQzF0ap5Filt+ADvPqCLmcVukoUbT6KCA4PuqBvqsDdDm3J?= =?us-ascii?q?lu1ge50Fn+uXWz32SC1klKoyATtLtU+MQ/ofDwXWaWHugHZEsgy4OvBM5W7lb6?= =?us-ascii?q?GfxqdNVOwZGJBDcueYQ9TGffBTPCkoljEDN+anft3csqw10lTWQmsFC6PI7kGR?= =?us-ascii?q?TFaKQvyAwDLmRYcVv40zuioy4NLQnzR3Hr/OP7mFoj6h7I+4gDyfue3EWWkne1?= =?us-ascii?q?Y1j/4aAGmd3BlAL3kJC8obuEHoXqGNZkVB2Wk3ie1wwR8MeQVyUnpo0nFMmvay?= =?us-ascii?q?BNFZQ0YOjGyyWP0GcEx3DDQo8E+I5Q3yZ9gAtNvWR2BA67QMR40dLOM054bJIq?= =?us-ascii?q?cQxugm3C416BA95j6QC1JbkxKt77vbHKU6wKZLo2Y/4aJYREaKFhjYdmnBgrWv?= =?us-ascii?q?D95C3zwm9W/t09bZpPtFKrZArZx8RlAQDnQldZjm4TldXDSsi0OJtBGhEWHbfj?= =?us-ascii?q?8=3D?= X-IPAS-Result: =?us-ascii?q?A2HABgAb/gBZ/wHyM5BcHQEFAQsBGAEFAQsBgwEpYYEMg2i?= =?us-ascii?q?LCZA1kS6GKjctD4UqhHZXAQEBAQEBAQECAQJoKIIzIgkERikuAQEBAQEBAQEBA?= =?us-ascii?q?QEBAQEBARoCCAVDAQEgAiAdAQE4AgMJAhcNAiIEAgIDASgbLohLgUsOqjRrgiY?= =?us-ascii?q?mAoJhAQEFiCMeAwWBC4ddgjCDL4IwgjougjGdVYcZlwWGTEiTX1iBBycdCCYIh?= =?us-ascii?q?G01gipZBYhwAQEB?= Received: from unknown (HELO tarius.tycho.ncsc.mil) ([144.51.242.1]) by emsm-gh1-uea11.nsa.gov with ESMTP; 26 Apr 2017 20:11:01 +0000 Received: from prometheus.infosec.tycho.ncsc.mil (prometheus [192.168.25.40]) by tarius.tycho.ncsc.mil (8.14.4/8.14.4) with ESMTP id v3QKAPJc011396; Wed, 26 Apr 2017 16:10:33 -0400 Received: from tarius.tycho.ncsc.mil (tarius.infosec.tycho.ncsc.mil [144.51.242.1]) by prometheus.infosec.tycho.ncsc.mil (8.15.2/8.15.2) with ESMTP id v3QKAMww161994 for ; Wed, 26 Apr 2017 16:10:22 -0400 Received: from goalie.tycho.ncsc.mil (goalie [144.51.242.250]) by tarius.tycho.ncsc.mil (8.14.4/8.14.4) with ESMTP id v3QKAM3V011392 for ; Wed, 26 Apr 2017 16:10:22 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A1DdAgDd/QBZhxwEb0JcHgYMgyyBCoEMg2iLCZA1kS6GbRwUhSpKhCxXAQIBAQEBAQITAQEBCA0JCCiFbh0BATcBNAImAi4biHmBSw6qM2uCJoMJAQEFiBYBAQEHAQEBARwDBYELh12CMIMvgjCCAAwuLoIxnVWHGZ1RSJNfgV4nHQgmCIUiH4ILJDUFiHABAQE X-IPAS-Result: A1DdAgDd/QBZhxwEb0JcHgYMgyyBCoEMg2iLCZA1kS6GbRwUhSpKhCxXAQIBAQEBAQITAQEBCA0JCCiFbh0BATcBNAImAi4biHmBSw6qM2uCJoMJAQEFiBYBAQEHAQEBARwDBYELh12CMIMvgjCCAAwuLoIxnVWHGZ1RSJNfgV4nHQgmCIUiH4ILJDUFiHABAQE X-IronPort-AV: E=Sophos;i="5.37,255,1488862800"; d="scan'208";a="6031529" Received: from emsm-gh1-uea11.corp.nsa.gov (HELO emsm-gh1-uea11.nsa.gov) ([10.208.41.37]) by goalie.tycho.ncsc.mil with ESMTP; 26 Apr 2017 16:10:21 -0400 IronPort-PHdr: =?us-ascii?q?9a23=3A5AnCCxch3glTi/P10P8VqiwqlGMj4u6mDksu8pMi?= =?us-ascii?q?zoh2WeGdxcuyZR7h7PlgxGXEQZ/co6odzbGH7ea8BSdZvcvJmUtBWaQEbwUCh8?= =?us-ascii?q?QSkl5oK+++Imq/EsTXaTcnFt9JTl5v8iLzG0FUHMHjew+a+SXqvnYdFRrlKAV6?= =?us-ascii?q?OPn+FJLMgMSrzeCy/IDYbxlViDanb75/KBS7oR/eu8QZjoduN6k8xxvUqXZUZu?= =?us-ascii?q?pawn9lK0iOlBjm/Mew+5Bj8yVUu/0/8sNLTLv3caclQ7FGFToqK2866tHluhnF?= =?us-ascii?q?VguP+2ATUn4KnRpSAgjK9w/1U5HsuSbnrOV92S2aPcrrTbAoXDmp8qlmRAP0hC?= =?us-ascii?q?oBKjU063/chNBug61HoRKhvx1/zJDSYIGJL/p1Y6fRccoHSWZdQspdUipMCZ6+?= =?us-ascii?q?YYQSFeoMJeVWoYnjqVQBohWxGQ6iCu3yxDJTmn/737c33/g7HA3a3gEtGc8Fvn?= =?us-ascii?q?TOrNXyMacfSf64zK7MzTXCafNdxDfy55LMchA9v/6MR6lwetfWxEghDQzFikmQ?= =?us-ascii?q?ppL/PzOOzekNrXaU7/B7WuKyjm4rsQZxoiKgxso1jITCm4wbylfB9SpjwYY1I8?= =?us-ascii?q?W1SEF6Yd64EJtQqjqVO5FqTcMlRmFlvjsxxL4euZOjfSUHyY4rywPCZ/CaaYSF?= =?us-ascii?q?7QjvWPiSLDp+mXlrYqiwhwyo/kil0uD8Vte70FJNriddldnMq2wN2hPK5sicT/?= =?us-ascii?q?t94l+h1SyK1w/N8eFEOlo7laXaK54nzb4/iJwTsUvCHi/whkr6lrOZdkIh+uSw?= =?us-ascii?q?6uTnZKvppoOEOoJ1iwzyKLkiltGiDegiPQUCRXaX9Oek2L3m50L5QbFKjvMskq?= =?us-ascii?q?netZDXPcoaqbS9Aw9JzIkj8Q2/Aiy40NsGh3kIN09FeBedg4juIVHOL+j0De2j?= =?us-ascii?q?jFS0jDdr2/fGM6X6AprTKnjDkbHhfaty6kNH1AoyzcxQ55JTCr0bJvLzQVX+uM?= =?us-ascii?q?bXDh8+LQzni9rgXc5w0oIYRHKnHr6SMKSUt0SBoO0oPbqifogQ7R36L/kjr8Hn?= =?us-ascii?q?iWM0g0RVKbag2YcacmuQAPl8KVicJ332jYFSQi8xogMiQbmy2xW5WjlJaiP3Bv?= =?us-ascii?q?pk6w=3D=3D?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0G5BAAb/gBZhxwEb0JcHgYMGQYMgwGBC?= =?us-ascii?q?oEMg2iLCZA1kS6GKkMcFIUqSoQsVwEBAQEBAQEBAgECEAEBAQgNCQgoL4IzIgE?= =?us-ascii?q?IBEYpLgEBAQEBAQEBAQEBAQEBAQEaAggFQ0QdAQE3ATQCJgIuG4h5gUsOqjRrg?= =?us-ascii?q?iaDCQEBBYgXAQEBBwEBAQEBGwMFgQuHXYIwgy+CMIIADC4ugjGdVYcZnVFIk1+?= =?us-ascii?q?BXycdCCYIhSIfggskNQWIcAEBAQ?= X-IPAS-Result: =?us-ascii?q?A0G5BAAb/gBZhxwEb0JcHgYMGQYMgwGBCoEMg2iLCZA1kS6?= =?us-ascii?q?GKkMcFIUqSoQsVwEBAQEBAQEBAgECEAEBAQgNCQgoL4IzIgEIBEYpLgEBAQEBA?= =?us-ascii?q?QEBAQEBAQEBAQEaAggFQ0QdAQE3ATQCJgIuG4h5gUsOqjRrgiaDCQEBBYgXAQE?= =?us-ascii?q?BBwEBAQEBGwMFgQuHXYIwgy+CMIIADC4ugjGdVYcZnVFIk1+BXycdCCYIhSIfg?= =?us-ascii?q?gskNQWIcAEBAQ?= X-IronPort-AV: E=Sophos;i="5.37,255,1488844800"; d="scan'208";a="5249071" X-IronPort-Outbreak-Status: No, level 0, Unknown - Unknown Received: from out4-smtp.messagingengine.com ([66.111.4.28]) by emsm-gh1-uea11.nsa.gov with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 26 Apr 2017 20:10:20 +0000 Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailout.nyi.internal (Postfix) with ESMTP id 4298021F9D; Wed, 26 Apr 2017 16:10:20 -0400 (EDT) Received: from web2 ([10.202.2.212]) by compute3.internal (MEProxy); Wed, 26 Apr 2017 16:10:20 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:message-id:mime-version:subject:to:x-me-sender :x-me-sender:x-sasl-enc; s=fm1; bh=+ysp+xNr5+oh6Xo/nzUQMwzuXBFwe ffnlQmNo4n1uv0=; b=q3BjufAH3eMDxjo3rfRM3lp3Y6Zw9Fe1o0d0yzTfD1jSE +1aNNDGxj/SlIYsFy9sm5Y99CwCwS7IetKMD3QtGQJD7qScTaH/JjbzcOsIfNsuI PURfIvOx4m/vttDK8e8bSPcLflNOcph4HKE/fq9BGSkKKmq4DhNTcht3mIeuCyT2 fdFGptLfVOcTdRryWQsLh0NMI6Z3od8phuuYbegdiMdLtR9gJy82RQpdqswf7nuN sJaFmTZAzkpGG+yaOwv6pnvJa2DmglrfO/tazDtR3D220+Ga2td2HfNVRF8IC4hJ Askql13dCmbVrVSp4WsG3o5NSWVn0WeDRyTwAzoSg== X-ME-Sender: Received: by mailuser.nyi.internal (Postfix, from userid 99) id 2204762738; Wed, 26 Apr 2017 16:10:20 -0400 (EDT) Message-Id: <1493237420.1820719.957368808.08E54C5A@webmail.messagingengine.com> From: Colin Walters To: selinux@tycho.nsa.gov MIME-Version: 1.0 X-Mailer: MessagingEngine.com Webmail Interface - ajax-88a795dc Date: Wed, 26 Apr 2017 16:10:20 -0400 Subject: is_selinux_enabled() always returns 0 after selinux_set_policy_root() X-BeenThere: selinux@tycho.nsa.gov X-Mailman-Version: 2.1.20 Precedence: list List-Id: "Security-Enhanced Linux \(SELinux\) mailing list" List-Post: List-Help: Errors-To: selinux-bounces@tycho.nsa.gov Sender: "Selinux" X-Virus-Scanned: ClamAV using ClamSMTP I've been reworking some bits of ostree/rpm-ostree's SELinux support recently in https://github.com/ostreedev/ostree/pull/797 - basically using setfscreatecon() more. However, I ran into an interesting thing I think is a bug - if others agree I can write a patch. Right now, as far as I can see, after a process calls selinux_set_policy_root(), every further call to is_selinux_enabled() will return FALSE (0). In current git master of libselinux, we initialize via a library constructor: https://github.com/SELinuxProject/selinux/blob/89ce96cac6ce5eeed78cb39c58514cd68494d7aa/libselinux/src/init.c#L151 Now, selinux_set_policy_root() explicitly undoes this initialization: https://github.com/SELinuxProject/selinux/blob/89ce96cac6ce5eeed78cb39c58514cd68494d7aa/libselinux/src/selinux_config.c#L285 Why does it do that? It looks like this call existed since the function was created in https://github.com/SELinuxProject/selinux/commit/7fe6036ca5e3624d6e3a0294b909d93b145eac31 And I can't see any other place where we will reinitialize the variable; There's no API to reinitialize `selinux_mnt`, it's only set once at library init time. In other words... Right? diff --git a/libselinux/src/selinux_config.c b/libselinux/src/selinux_config.c index d8e140c..292728f 100644 --- a/libselinux/src/selinux_config.c +++ b/libselinux/src/selinux_config.c @@ -282,7 +282,6 @@ int selinux_set_policy_root(const char *path) } policy_type++; - fini_selinuxmnt(); fini_selinux_policyroot(); selinux_policyroot = strdup(path);