From patchwork Tue Jul 25 16:14:12 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stephen Smalley X-Patchwork-Id: 9862489 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 5AF21602B1 for ; Tue, 25 Jul 2017 16:11:37 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5FA7127D0E for ; Tue, 25 Jul 2017 16:11:37 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 54882286F6; Tue, 25 Jul 2017 16:11:37 +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.2 required=2.0 tests=BAYES_00, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from upbd19pa08.eemsg.mail.mil (upbd19pa08.eemsg.mail.mil [214.24.27.83]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 4601027D0E for ; Tue, 25 Jul 2017 16:11:35 +0000 (UTC) Received: from emsm-gh1-uea11.ncsc.mil ([214.29.60.3]) by upbd19pa08.eemsg.mail.mil with ESMTP; 25 Jul 2017 16:11:33 +0000 X-IronPort-AV: E=Sophos;i="5.40,411,1496102400"; d="scan'208";a="464546" IronPort-PHdr: =?us-ascii?q?9a23=3AP+q5tRUBMvaDVspuCLj/m/LdLiXV8LGtZVwlr6E/?= =?us-ascii?q?grcLSJyIuqrYYhSEvqdThVPEFb/W9+hDw7KP9fuxCSpYud6oizMrSNR0TRgLiM?= =?us-ascii?q?EbzUQLIfWuLgnFFsPsdDEwB89YVVVorDmROElRH9viNRWJ+iXhpTEdFQ/iOgVr?= =?us-ascii?q?O+/7BpDdj9it1+C15pbffxhEiCCzbL52Lxi6txndutULioZ+N6g9zQfErGFVcO?= =?us-ascii?q?pM32NoIlyTnxf45siu+ZNo7jpdtfE8+cNeSKv2Z6s3Q6BWAzQgKGA1+dbktQLf?= =?us-ascii?q?QguV53sTSXsZnxxVCAXY9h76X5Pxsizntuph3SSRIMP7QawoVTmk8qxkRgXoiC?= =?us-ascii?q?MaPDAn9m/ZhNF7gKZCrB6/uxBzxojZa5yXOvVjZKPQZdMUS3RPUMhSUCJPH5u8?= =?us-ascii?q?YokSA+cPI+lYtJLwq0cSoRakGQWhHv/jxiNOi3Tr3aM6yeMhEQTe0QI9A9IBrm?= =?us-ascii?q?zUrNXrO6cUTOu70azIwi/Hb/NSxzj86JXDfxc6of6RRrJ9atbRyEkzGAPFiVWc?= =?us-ascii?q?s4rlPyiP2egXvGib6PRgWPuphmU6qA9xuiCiytojh4TGnI4Yyk3I+T9nzIs6O9?= =?us-ascii?q?G0UlN3bNi5G5VKrS6aLZF5QsY6TmFtvyY116MJtIagfCgP1JQn3xnfa+Gbc4SQ?= =?us-ascii?q?4hLsSuKRITBgiXJ5Yr2/nRey8VW7yuHmSsm10EpFripCktXWsHACywfT5dSdRv?= =?us-ascii?q?t4/0eh3S6D1wHV6u5aPUA5jbfXJpEuz7IqlpcfrF7PEjH5lUnolqOaa10o+u2y?= =?us-ascii?q?5OTmZrXmqIWcN4hxigzmKaQhhMi/AeU+MggTUGmX4P+z1Lr+/U3/XLpFkOY2n7?= =?us-ascii?q?LFsJHaOcsbpqm5DxVT0oY48RmzFTim0NMGnXUfNlJKZAqHj5T1O1HJOP34D/C/?= =?us-ascii?q?g1K2nzd3x/DJJLvhD47PLnjElrfheKxy61VAyAUt19Bf/IhYCrYbIPL8QkXxrs?= =?us-ascii?q?DXDgclMwyoxObqENd91oEEVm2TAa+ZK6TSsVmJ5uIxOOSMaosVuCvyKvc++v7u?= =?us-ascii?q?i2M5mUIHcamux5sXZ2iyHu56LEWBfXrsntABHH8SvgUgV+PllluCUT9PZ3a1RK?= =?us-ascii?q?885y80B5y4AovZQYCtmrOB1j+hHpJKfmBGFkyMEXDweoqZXPcMbiSSLdJ/nTwA?= =?us-ascii?q?VLisUJUu2g+0tA/90bZnKfDU+iIAv5L5yNd1//HTlQ019TFsEsudz3uCT3tvk2?= =?us-ascii?q?wUQD822bxwrlZmylefy6R4heJXFcBL7fNTTgg6LYLcz/B9C93qWwLBeMuJR0ii?= =?us-ascii?q?Qtq4BDE+UM4xw8UOYktmHNWilg7M3yyvA7APlryLAIc78qXT3nTrIMZ90XnG3r?= =?us-ascii?q?E7j1Y6WstPKXGmhqln+gnTBo/JlEOZmr2vdaQYxSLN9WGDwXCIvE5CSg5wUqTF?= =?us-ascii?q?XW4BaUfMq9T2+F/CRae0Cbs7KgtB1dKCKqxSZ9L3lVVJXu3jONXFY2+qg2e/Hw?= =?us-ascii?q?yIxrKXbIryf2USxjnSB1YenwAU53aGOhA0Bj29rGLGEDxuCVXvblvi8Ol/rHO7?= =?us-ascii?q?S1E7zxuRYk1vybW65xkVheaGRPMLxLIEvyUhpCtoE1ahxd7WDMCApwV5dqVGfd?= =?us-ascii?q?w9+EtH1X7etwFlMJygNbpthlgCfAR2pEPjzBB3Cp1BkcQzt3MrwhFyJbif0FNb?= =?us-ascii?q?eDOSxYrwNaHPKmnu4BCvbLbb2lLE39aV/acP9e81q1b5swGqEUoi7m9r095P03?= =?us-ascii?q?uT/p/KFhYdUYrtUkYr8Bh3v6vVbTQn54PVy3JsK7K5vSXe1NIsHuclzQygf9hH?= =?us-ascii?q?OqOeCADyC9EaB9SpKOEyh1emdBYEM/5J9K4oP8KmcOCL2LW3M+Zhgj2mi3hH4I?= =?us-ascii?q?Fn3U6W8SpzVPLI1Y4fw/6ExguHSyv8jFC5v8DthI9LeCofHmW6ySnrHoJRYLN9?= =?us-ascii?q?fZoTA2e0P8K33sl+h4LqW3NA716jCUkG2MiyeRqOdFH9xgtQ1UMZoHyigyS4yS?= =?us-ascii?q?Z4kzc3oaqDxCbO2fjtdAIbOm5XQ2lvlVntLpKwj9AGQkeodRMpmQC75Unk3ahU?= =?us-ascii?q?v7l/L2zJTUdPZSj2IHloUrGsubqaf85P9JQovD1LUOuhfF+aS6Tyox8B3iz/GG?= =?us-ascii?q?tewSw0eCuxupXlhRB6jnySLGprpnrDZc5w3Qvf5MDbRfNJwDoGRTV3iSXQBlim?= =?us-ascii?q?JdWm4dWUl5DFsuCxTG+hUpxTcS/xwoOasyu3/2pqAQewn/qrgN3oDRA60TPn19?= =?us-ascii?q?ltTSjIqBf8YpL316ijKuJoYE1oBF7668pnFYBziZAwhIkR2Xgch5Wa4WEHnX31?= =?us-ascii?q?MdpFxaL0dGANSiITw97J/Ajl31VuLmiOx4L9UnWS3NFhaMW9YmIYwS899N1KB7?= =?us-ascii?q?uP7LBemit1uFW4pxrLYfdhhjcd1ecu6HkCjuERogUt0yGdDqoIEkVCJiPskBCI?= =?us-ascii?q?78y5rKVRf2uvdKS81Ex5nd+9Fr2CpB9TWGrhcJc4ASBw9tl/ME7L0HDr6YHrZt?= =?us-ascii?q?/QbckIux2XjRjAifNVKJQvmfoWnyZnPnj9vXI9we4hkRNuxY26vJSAK2h15KK2?= =?us-ascii?q?GANYNjnraMML4D7ti7pekdiM3420A5VhASsEXIHzTf6yCzISsunnNxySHzIipH?= =?us-ascii?q?ebHqDfHQCB50t8qXLADYyrPWmNJHYF1dViWAWdJEtHjQAKWjU1g4U0Fh6sxMP8?= =?us-ascii?q?cEd1/DYR6UDkqhFU0OJnKwH/UnvDpAevcjo0UIKQLAdS7gxZ+0jVMNCe7+JqEy?= =?us-ascii?q?FW5JKhqhaBKmuBZwRHFWsJQFCLB0j/Prmy4tnN6+uYB+q6L/TQeriOrOteV/mG?= =?us-ascii?q?xZ2xzotm4zaMNsKKPnZ8FfE73FRMXWxhEcTDhzoPUzAXlz7Kb8ODqhez4Ct3rt?= =?us-ascii?q?y48PTuQw/v65WABKZVMdV14R+2mb2DN+mShClnNTlYyokAxXjSyLgQxFQSkT1h?= =?us-ascii?q?dyGxEbQcsi7AVLjQlrVZDhIBbiN8Ls9I76U83wRWI8HUltb12qR/jv4vBFdPTU?= =?us-ascii?q?bhld2xZcwWP2G9M0vKBEiRNLuYODLL2Nv4YaWgSb1Xl+VZrAe/tiqeE0P5OTSD?= =?us-ascii?q?jTbpXQi1Me5QlCGbIABeuIalfxZrE2jsVsrmagWgPd95jD0226Y0hm/ENW4dNz?= =?us-ascii?q?hzaUVNoaGR7SxChvVzAWtB7mBqLeOcgSaW8/HYKooKsftsGil7ivla72ogxLta?= =?us-ascii?q?9iFLXuJ1lTDJrtF0oFGmj/OPxSB9XBpKtzZLgpiEvV97NaXF8ZlAWnbF/BUX4W?= =?us-ascii?q?WWFRsKu8NvCsfztKBI1tjPiKXzJS9E89LV+cscA9bbKNmcPXU7LxXpAjnUABEC?= =?us-ascii?q?TT6xOmHVn1Zdn+2K9n2Jspg6rYDhl4EPSr9UU1w1EOgXBVl7E9MZIZd4RDUkna?= =?us-ascii?q?ScjM4S6nq0tAPRS9lCvpDbSvKSBu3iJyyWjbZeeRsH36j1LYMLNoLl3Uxib0N1?= =?us-ascii?q?nIXOG0XLWtBMrTdtbgguoEVC6HJ+VHE821r5agOx538eDeK0nhkzigdke+Qt8z?= =?us-ascii?q?bt7EkxJlXRviswl1c+mdb+jD+Ndz7xKbu/UptNCyrorUQxNI30QxptZw2ogUNk?= =?us-ascii?q?LCvER65Wj7Z4c2BklhXTuZ9UFP5fSq1EewMQyuuRZ/Uz0lRcqz+rxUlZ6uvZEZ?= =?us-ascii?q?FijhclcYawr3Jc3AJudMQ1KrLLJKVX1FdQnL6Bvi+z2+8qwQ8ePVsC8GSceC4Q?= =?us-ascii?q?okwHKLknKzCu/uNy9QyIgyFDd3QUV/o2vvJq8VswNPmawCL+0r5MN1uxOveFIK?= =?us-ascii?q?ODoWjAksCJQkgu2UwUiklF57l20dsjckaOUUAg0qeRHQwTNcXeMQFVc9ZS9H/L?= =?us-ascii?q?cCaKtuXN24x6P4O8F+DvVuKOu6AUgl++EAYuBYQM4dwLHoOw30HAMcfnMLkFxA?= =?us-ascii?q?025Av1IFWFDfJJeA+EkTocv86/y5p30pVHKTEGHWVxKyO36ajLpgUymvqMQM82?= =?us-ascii?q?YmsGXosDLn85RdG1mytev3RGEDm7z/kUyBac4D/mpyTRDT78b9x5aPeSexxsFM?= =?us-ascii?q?m8+S8j/KiulV7X7pLeKnn5NdR4ut7A8+Uap4qHC/5PQrl9tF/clJVCS3ysTWHP?= =?us-ascii?q?Dca/J4LsZIk0cdz0FnG6X0SjizI0SsfxO8qtLqiIgAzzWIlUsYma0yo4OsOnED?= =?us-ascii?q?ERBQtwrfkZ5K1gfQ0Df4Y7YRnwugQxLaywOgGY0sm1TmasLjtXQf9fzfm6Z7NJ?= =?us-ascii?q?ziosaPO6x2U6Tp0gyem471INTokQjh7C3faje5VeUS/rF3NHfwXPpDY2mHZ5Oe?= =?us-ascii?q?Y3wuY/xhTIsV8GPD2Qb+NpaXZLv9clCVOcPHV6EGw4SEGAjYDb+A6jw6gS/zdB?= =?us-ascii?q?n9ZTyeBKq2bxvpnEbT22RaOrt4vaszA7bdc8ua1wMZbvIsyctJPRhjbfVoXfsh?= =?us-ascii?q?WZUC6mEPpXgsJQICRZQPZUmWElPsgGuZFZ50QoS8kwPaBCBq43q7+2bjpkCDId?= =?us-ascii?q?wjUCV4OcxjAChPmz26fCnBeKbJsiKAAEsIlFgtYFTyF2YDkRq7O4WorKkG+ETm?= =?us-ascii?q?wLIAYN4gRW+AIPiJN/fuD/7IrPVp9MxCZco+hoXSvTCplo61z7R3mMgVfiUvWh?= =?us-ascii?q?lPem0BlOzPL2yNYbRgBwCUxcx+ZQmUsoLLB3K6YQvo7WvD+Hb1n6vGf3xOugOl?= =?us-ascii?q?ZR1dXed0fkA4rdqWr8Tioc9GUaRINV1H7fFZUSkw94aKkxp1VBO4GmdVjg6DM6?= =?us-ascii?q?3YhpGKO4Vc+zzVY/sXkGXzuqE8ZGC+x+qFLXXzllbIqxqJTrPJVSRmFQ9YaYq1?= =?us-ascii?q?del0VtKDC2xoZGK8FK+T4MRzlPoTOSvNeoT81Dw8B2BYcWIthjo3f9BL9EOJ+J?= =?us-ascii?q?rnIsoLzv13nZ9yo/sFqhxTWzGq64T/5C8GEEHAUmOXieoFE1D+Qw6mfS7kzNsl?= =?us-ascii?q?ds8udHAbiPiF58oCphEpBLHTlFz3alIEpvTHNeqeVVNLzVc9BAQ/k1fRKvOwYx?= =?us-ascii?q?FeQ80EyN4E55hmr2bDJqtgtC5S/dWxc7VTMPjrfqgz0epdmtOSUGRJJQcTUhcy?= =?us-ascii?q?DFJhqZmSBQohlScFxlVI4CAtlb4bEbwZVb8dfYRUaqNy4FQARoNhgk3vpHiU5D?= =?us-ascii?q?rEKYdDjGAgqmafnDrh96cdqfocOyMPv5+wJHhZ/9v+Aj66UPXXumlhOxQdrGtY?= =?us-ascii?q?/zqsWKtleSdKf/K+C8e2HOQyXMjR+qmbcpFJ3K/y/NMAVFNZV11X0kboX/BmLR?= =?us-ascii?q?OxRJOb4bLVJBVa9mcdVGvvxaZ8h8daYR4q9tGgiISQ7zGIG0t/lGKUvTRS7CIC?= =?us-ascii?q?qf9Oy/vZjT4qbZSeT6YcyM3XnHSbptPphm8Tn7B6vq0YhG90rqwPdi6F11RkXd?= =?us-ascii?q?PiCcqNThOhkL69O8dkvjuZ0pGS3ZAItqnHrq3EFAeNIdQze2/5QA1JNZ9HHwRP?= =?us-ascii?q?p90kfptO1S86dr6ZUr479z08i5PqHSJupGsU98HhebHB1q+Ys3DGh5WW9Rfvcb?= =?us-ascii?q?KO3NcqQBkcDut+f3GrQV6BKP4exZbsDHJ0XblcmhETycTAFEnAMdqT4bMgSc1u?= =?us-ascii?q?SKm6lvScq/ouj5wE0t6UCkLhEa1LBt+ZuE+q2Qqe/VdRTRy7YEWrLtRszusLsh?= =?us-ascii?q?oF+S6ucilL4VfWx5eQunH/YBVsQF3Gfv0bgqzT4wE8PEB7/g9+NDV3M9njLkhZ?= =?us-ascii?q?99Gk4bFe4KErWQ/IRRhGE4l/beNt0MfaBIgnyPGgK8Er8e1X6r7DOaIG9hghzV?= =?us-ascii?q?0hHwR2az4EX3rS9+TyvM1c3sklFJVrmtGEddQzapOVJisDyRJgbos8D3uast5k?= =?us-ascii?q?EsLmPkrM6NlHemOL5PGs3/I9qcITU7pF0Jl5AxQ92v1podGdWjPNcQ/nZ+buHd?= =?us-ascii?q?62OwiSNBpblIh5bG6MGP5vrXBWWgj7Gdq7iVwDBY0X04sFEk59CuKP7B+tqKQ+?= =?us-ascii?q?6y2GYJVSd/vAnBUACppbzHtVwUPlaL0EjTkowQIt5ZxWU41l3h5OU7W9I87hte?= =?us-ascii?q?GZzPZ/wcvjD+IyD0zkyBY90tWSmRzSBXEkjzEVZmBKg2wHjws97RlXfM510oQZ?= =?us-ascii?q?F9d07mhRxyFIg4LFwi6VgJzSoZEAgNbx+bAKuuBUv7MYsOTVIDZgif3LimZqc3?= =?us-ascii?q?2lV+wrKu5eDJd+NzG7EANu1DgQ6SgldUBogasaoEQLJzY1Vd7rLYphD+C4j7WP?= =?us-ascii?q?jrjWE/NfyuQsFU688ZtXoi4hqnRxW69JdD660Wh4yPdqFZf5fDpt18711g5T4V?= =?us-ascii?q?bCNBmh9/jwm2UeoEvuDs/sDbsIa06uapTKstX/8Y9wQoCGR+gZrwh0ojodLO2+?= =?us-ascii?q?dHVILVjYX/8AZQI3+Fo4vaywNzKfYSJIKrcrdg8G8HJysEK3INI9WWcf887DFp?= =?us-ascii?q?MDnJ4FxCGMwMb8sCPMXRgQBUllHpWLZL+8rHAF+XFYNzeNou72Xp0z067Jo8Uu?= =?us-ascii?q?nh6D+qP5/f9EtCP+lejCl2ktLNuvQVy+LICCcL+XmZdwR1wiSaxpmCEfnw5/uD?= =?us-ascii?q?yM3UV14dGi42UptdKySC+QO9W+q1j4/lUgWK5c/vmJg+bl6fRmStnKQZtaZBCe?= =?us-ascii?q?FAhTv93jhCEYD1gPWZs8Gy52tTt11HFptz7BLeFaVbIJp7IxT5mdOxSkh6GCT/?= =?us-ascii?q?ZNnedgAyt+qO2ucM/+J+OlP4ZY8aPh0EzLb65mBOTgd0Sb72uVGZXfkKZNZ9Tf?= =?us-ascii?q?PJoX9U5ZhnK68VM1iXvIbqoStQqFAqHA8pb6c9rjNGeUnVhw1ZQrv6trEGhAsd?= =?us-ascii?q?V955pEBNFHm/OGI7/TXHU7pagLOWCPwP/TWZVrYOXFlwMiNiXxO1341je7munf?= =?us-ascii?q?BHtGNKhD9yoPgu0zx7WRS9uCzsp6QW2TIj+bG1rysBuX1bTuqElyfHFFRDwO4M?= =?us-ascii?q?jagCF3bo8Ua8b2UbbIvu/LlnItzt9Yg/43slZxUuZCkGXfm9BCHxiKOIGZaDsN?= =?us-ascii?q?VGhB6CoM/Od6O8LTAONrQhzhLuX3p93RbQnBZm9GsGWTuh48UiJIqjJcYp3Cyo?= =?us-ascii?q?FnbHdFwU+KNGrNPxtUIXTOsxcV5hz2Fj0s+JRyITQMzPH304jhMjaWVCcZJM9Q?= =?us-ascii?q?UWF682jTaUpqNG5B0bYC/IEoS5/YndhcXI2Xk9TNdywWLWoqyFho8033B+ntN0?= =?us-ascii?q?7zKOuG4MeODCVM9sGHfz3J9FyePif/WtrvwHSIx+xbS9Uf8CN9Ku+Xe32Jp2WU?= =?us-ascii?q?+q2LAeE0C/MOAd2rfRSz2lRnGAWeSXb2iMmC40Mkvz5RmrLV03b9xHr00nPevB?= =?us-ascii?q?gZ5ckRPuUbVuSiWWu1Db0HQpMfkGeAIupIenZwsKQfYKaOeCI+gu3OYzCEAIb3?= =?us-ascii?q?/OASt2F/G2vkCwk4RhPHVg+0r6a/z38g/6KNuSBgUEEYnCo55/5/O6QmOBOWd+?= =?us-ascii?q?wxBpPUh09uLfF1Evue9Gd5aeg8Lch9Nh0e4Kb/1tKzEyusYPmoJ/7omZyMmLcQ?= =?us-ascii?q?nLzpbzOd7avOOVA/jez0Q2YGFVTKAVYQTv54U1JtQ5QaHcHaNFvRQAAqg3WJsh?= =?us-ascii?q?N2Pv+6xvNANzdhTeZK+ogsnruu2LeoFUqGHI4V4qKifTpQEDwOSuTQNnd5Cqm2?= =?us-ascii?q?nyIJcoSzJFrt1tDAZmHYRWF8MErgqnGIKUmLqght+w4Ux6vegKvbD3CvDQ29Sz?= =?us-ascii?q?x59xUIRC5UyXIDbRA7Fmgl97geS2g/fA1ITxCMzldd0LSOh7QnDKaqXYEYWnMD?= =?us-ascii?q?2DIcH8dFBc876azr15Vg6eZD32X6acsy2kLvpk610hyoNkZOrT0CAt77bD1dv3?= =?us-ascii?q?fW5UuiejrX+PNJtY91HKG+3eXxRKRvqB8WZlG7AXbITu+OcJK9wiz8CW4xNv4z?= =?us-ascii?q?RazMuFP6+ho1fO2k1hdpLbK1Dm1j0kWYkMPBS/MUwsgXLWqnTdHXRQNM6kJtdx?= =?us-ascii?q?gNyNFBzi+1FxmX0xZm5GAmfnXsyeNW8f28K/fw2K6BlLA8wYn+GpZUE0rLayRv?= =?us-ascii?q?dsOpVEn+WqqboGnM11JCDPXshaIjrQIKV4PzVLEuXPv18oYhgev7gyQIc1aoCE?= =?us-ascii?q?IFkbP0eY1SPy0QzC3FX2d9yp06aJOjwW8nRcz7/e1zhDvQy5tuiYgsH5V7DZdp?= =?us-ascii?q?72VubIMCU5TjGaWSgyEUGx9Fe/tfoEueaXLGYcr10PfCKdFhQTpqFurNjXCG/f?= =?us-ascii?q?g+tjc4MWhKPSZyelUyB8lawvFg5XpEuMRLwFDgCQYHj/00RGvwn3HeNB5XLoaf?= =?us-ascii?q?Wjw6NRX+EHSt9XfuaxX8rTefcYISwh0DoeJrDvLJXns78l3weQHiMiGK7S+Qjb?= =?us-ascii?q?Fhab?= X-IPAS-Result: =?us-ascii?q?A2DmAQApbXdZ/wHyM5BdGgEBAQECAQEBAQgBAQEBFQEBAQE?= =?us-ascii?q?CAQEBAQgBAQEBgwQrgWUTjn+pAyuIX1cBAQEBAQEBAQIBaiiCMySCSQIkUgMDC?= =?us-ascii?q?QIXMQgDAWwFiAlPgUUNs0c6IgKLV4MojRCBAYUoBZBhjnaUEg2LSIZvApVpV4E?= =?us-ascii?q?KKAoCHwgiD4d+WoZ1gkABAQE?= Received: from unknown (HELO tarius.tycho.ncsc.mil) ([144.51.242.1]) by emsm-gh1-uea11.NCSC.MIL with ESMTP; 25 Jul 2017 16:11:14 +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 v6PG9kR7002694; Tue, 25 Jul 2017 12:10:09 -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 v6PG9dqI026478 for ; Tue, 25 Jul 2017 12:09:39 -0400 Received: from moss-pluto.infosec.tycho.ncsc.mil (moss-pluto [192.168.25.131]) by tarius.tycho.ncsc.mil (8.14.4/8.14.4) with ESMTP id v6PG9Z2i002681; Tue, 25 Jul 2017 12:09:35 -0400 From: Stephen Smalley To: selinux@tycho.nsa.gov Date: Tue, 25 Jul 2017 12:14:12 -0400 Message-Id: <20170725161412.969-1-sds@tycho.nsa.gov> X-Mailer: git-send-email 2.9.4 Subject: [PATCH] selinux: genheaders should fail if too many permissions are defined 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: Cc: Stephen Smalley Errors-To: selinux-bounces@tycho.nsa.gov Sender: "Selinux" X-Virus-Scanned: ClamAV using ClamSMTP Ensure that genheaders fails with an error if too many permissions are defined in a class to fit within an access vector. This is similar to a check performed by checkpolicy when compiling the policy. Also, fix the suffix on the permission constants generated by this program. Signed-off-by: Stephen Smalley --- scripts/selinux/genheaders/genheaders.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/scripts/selinux/genheaders/genheaders.c b/scripts/selinux/genheaders/genheaders.c index 6a24569..672b069 100644 --- a/scripts/selinux/genheaders/genheaders.c +++ b/scripts/selinux/genheaders/genheaders.c @@ -129,11 +129,16 @@ int main(int argc, char *argv[]) for (i = 0; secclass_map[i].name; i++) { struct security_class_mapping *map = &secclass_map[i]; for (j = 0; map->perms[j]; j++) { + if (j >= 32) { + fprintf(stderr, "Too many permissions to fit into an access vector at (%s, %s).\n", + map->name, map->perms[j]); + exit(5); + } fprintf(fout, "#define %s__%s", map->name, map->perms[j]); for (k = 0; k < max(1, 40 - strlen(map->name) - strlen(map->perms[j])); k++) fprintf(fout, " "); - fprintf(fout, "0x%08xUL\n", (1<