From patchwork Thu May 4 21:12:37 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Jann Horn via Selinux X-Patchwork-Id: 9712721 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 09E9860387 for ; Thu, 4 May 2017 21:14:35 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id EF3132869F for ; Thu, 4 May 2017 21:14:34 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id E201B286B1; Thu, 4 May 2017 21:14:34 +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=-3.7 required=2.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, RCVD_IN_SORBS_SPAM autolearn=ham version=3.3.1 Received: from emsm-gh1-uea11.nsa.gov (emsm-gh1-uea11.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 0E8CA2869F for ; Thu, 4 May 2017 21:14:33 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.38,289,1491264000"; d="scan'208";a="5500626" IronPort-PHdr: =?us-ascii?q?9a23=3ApGBN8BfYiFQFhq/4TBUQBF7GlGMj4u6mDksu8pMi?= =?us-ascii?q?zoh2WeGdxcq5ZhCN2/xhgRfzUJnB7Loc0qyN4v6mBzZLuMzf+Fk5M7V0Hycfjs?= =?us-ascii?q?sXmwFySOWkMmbcaMDQUiohAc5ZX0Vk9XzoeWJcGcL5ekGA6ibqtW1aFRrwLxd6?= =?us-ascii?q?KfroEYDOkcu3y/qy+5rOaAlUmTaxe71/IRG3oAnLt8Qan4RuJrsvxhbIv3BFZ/?= =?us-ascii?q?lYyWR0KFyJgh3y/N2w/Jlt8yRRv/Iu6ctNWrjkcqo7ULJVEi0oP3g668P3uxbD?= =?us-ascii?q?SxCP5mYHXWUNjhVIGQnF4wrkUZr3ryD3q/By2CiePc3xULA0RTGv5LplRRP0lC?= =?us-ascii?q?sKMSMy/2/Nisx0kalVvhSvqRJiyILQeY2ZKeZycqbbcNwdWWdMUNpdWzFYDo+g?= =?us-ascii?q?cocEEu4NMftYooX4oVYFsBmwChS2BO731DFGm3H406493esuDQ7I0xQgEtATvH?= =?us-ascii?q?narNv1LrkdUfuuwanUzjjOde9a1C3h5IXKdB0qvPGCXah3ccrU0UQiCQPFjk+R?= =?us-ascii?q?qYz+IzOV1/4Cs26G5ORhU/qvl3InqxptrTiv2Mgnl5fJhoMPxVvZ6Ct23oI1Jd?= =?us-ascii?q?y+SE5mbt+vDZxdtzqEOItyQ8MiRXxouSkhx70auZ+0YCgKyJM9yx7ZcPyIaZKE?= =?us-ascii?q?4h3kVOaPODp1gm9udrGnhxuq7EStxeLxWtO03VpXtCZJjNbBum4X2xDO8sSKSP?= =?us-ascii?q?hw8l2h1DuAzQzf9+VJLVo0mKfVLZMq36Q+mYAJsUvZGy/7gED2jKiLeUo64uWo?= =?us-ascii?q?8OHnYqn+pp+bKo90lhnyMqQwlcy7BuQ1KhQOUHKB+eS9yb3j5lf1QKlKj/Iqkq?= =?us-ascii?q?nZt4rWJcIHqa6iHwBZyIMj6xe7Dzu+0dQYm2cILE5ddR6agIXkNEvCLfDlAful?= =?us-ascii?q?nVihnylny+rbMrH5B5XCNHnDkLPvfbZn7E5czRI+zctB6JJQC7EBJu/zW0DouN?= =?us-ascii?q?PDCR85Lgq0zPr5B9VmzY4eRWKODbOZMKPVq1OI4PkvLPOWaI8avzb9NeAp5+Ty?= =?us-ascii?q?gn8hhV8dYa6p0IMVaHC/GPRpOVmZYXr2jdcHCmoKvA0+TOrviFKYSj5Te2i9X7?= =?us-ascii?q?gn5j0hD4KmF4jDTJi3gLOdxCe7AoFWZmdeB1COE3fnbZmLW/QXaCKVJM9hkyIE?= =?us-ascii?q?WKOvS48lyBGvuxT1y6dhLurI5y0Ur5Xj1MJ65+fLjxE96SR0D9iB02GKV2x0hn?= =?us-ascii?q?0HSCQo06B5oEx91lCD3LN5g/NGC9Nc+elFUgAgNZ7T1+Z6Ecz9WhrdfteVT1ar?= =?us-ascii?q?WsipATY3TtI33tABfUJ9G9S5gx/ZwSWqGbgVm6aMBJwu/aLWx2LxKNply3bayK?= =?us-ascii?q?khiEErTdZTNWK8nK5y7BTcB4nMk0qFjamqbrgc0DTL9Gid0WqEpFtYXxJoUaXZ?= =?us-ascii?q?QXAfYVPbrdX/5kPeUbCuDaooMg5fxs6eMKtLasbkjVJeRPj9PtTeZni+m2a0BR?= =?us-ascii?q?mTwbONY5Dme2IH3CXSEEIEiRwc/W6aNQgiASesu2LfDT1pFVLpeE7s9O1+pGq6?= =?us-ascii?q?Tk8y1Q2KaVdu16C2+h4Um/yTVekf3rQatyc9sz90Bkqy38rKC9qcoApsZLtTYc?= =?us-ascii?q?sn71dd1GLZrBdwPoS6IKB4h14eaBx3v0f02BprFIpMi88qrGklzABqM6KXzEtB?= =?us-ascii?q?dy+E3ZD3IrDWJGjy/BSqa6HIwFHTy9iW9bkS5/Q/sVXsphmpFlAl83VlzdZaz2?= =?us-ascii?q?ec6o/NDAoIXpL7Slw3+ARip7HGfik94JvZ1XN2MaautD/Nx9MpBPA+xxalZ9df?= =?us-ascii?q?MbqIFBT8Es0BHcSuL/Yqm1exZBIeIO9S7LI0P9+hd/ae266kJuVgnDW7jWlc44?= =?us-ascii?q?ByyEGM9y1hSuLS2JYF2f6Y1BOdVzjglFehrtz3mYdcaD4IA2W/0ynkC5BLZqBp?= =?us-ascii?q?Z4kEFWKuL9ewxtVkiJ7nQ2RY+0K7B1MaxM+pfgKfYEDn0g1Uy0sXumCnmCu/zz?= =?us-ascii?q?FviDEmsquf0zLIw+T+dRoIIHRHRG98glfwOYK0lcwVXFC0bwg1kxuo/V36x6ZB?= =?us-ascii?q?pKR4NGnTXVxFfzPwL2FlXKqws6CNY8hV5JMurypXTPy2YUqGRb7lvxsazyTjEn?= =?us-ascii?q?NQxT8hczGqpov2nwZhiG+GMnZ8smDZdtptxRfa/tDcQuRR3jUeTililTbXHkS8?= =?us-ascii?q?P8Wu/diMi5fMr/2xV2O7WZ1XaiTk0YSAtC6n6mJwGh2/g+q/mtv5HggmySX7zc?= =?us-ascii?q?VlVT3UrBbgZYnmz7q6MeN7cUl0A1/88dB2FZ1+kos3gpEQ1mMXhpGU/XoBi2jz?= =?us-ascii?q?K9Jb1bj5bHoXSj4B28TV7xT92E1/MnKJwJr0VnGcwst6e9m2e3gW1Tw578BLDq?= =?us-ascii?q?eU8bNFkDBuolqgrALRZ/l9kSsGyfc07n4Vnf0JshI3ziqBGrASAVVYPSv0mhSS?= =?us-ascii?q?6NC+qKFXa3i1cbes00p/k8usDKqfog5AQ3b1YJAiHTV/7s9nKlLDzGXz6p34eN?= =?us-ascii?q?nXdd8TrgebkwrEj+RPMp09jOEFhS1jOWLhun0lzfU2jRly0ZG8u4iIN39h/KSn?= =?us-ascii?q?DR5ELjf1fd8c+inxjaZCmcabx4OvEYtnGjUQR5boTuynEDQJtfThKQmODCcwqn?= =?us-ascii?q?CBGbrQBQWf8ltpr2rTE5C3MHGaPGEZws9/RBmZOkNfmBobXDMmnpEnDACn39Hh?= =?us-ascii?q?cFxn6TAL/V70sABMyuV1NxnlTmjQugmoajAuSJiQMhVa9AdC6FnJMcaG9OJ8Az?= =?us-ascii?q?lY/oG9rAyKMmGbeQJIAnwSV0yaAVDsI7mu6cPG8+eGGuq0N+HObqmWqexCS/eI?= =?us-ascii?q?woqi0pN88DaRMsWCJWVtD/wn2ktDRHx5Fd7WmzMVRywQjSLNYNaRpA2g9S1vss?= =?us-ascii?q?C/7PPrVRrs5YqPD7tdL85i+xWxgaeNOe6fmjp5KSpY1pMLwH/H1qIT3FgMhCFy?= =?us-ascii?q?bzOtC6gPtTbRTKLMna9aFxAbZDl1NMtU6KI82xJAOcDFhdzo0b54lOQ6C09fVV?= =?us-ascii?q?zmmMGme9AFI32nOFPAHkaLO6yMJSfXzMHvfaO8VbpQgf1OtxKtpDmWCEDjPjGM?= =?us-ascii?q?ljXzURCgL/1MhjmBPBNCoIG9bgptCW/7QdL8cBG6PsV7jTgszr0wgXPLNXURPi?= =?us-ascii?q?JgfENItLGQ6jlYgvpnEWxb8nVlNfWEmzqe7+TAJJYWq+VkDTlvl+1A5nQ617xV?= =?us-ascii?q?7DpfSfNvhCTSq8Rio1a8kumA0jBnSgZBqi5XhIKXukVvIaPZ9oNaVnbc5BIA9m?= =?us-ascii?q?uQCxUQp9t+Ft3vtaFQyt7Vm6L1NDhC8sjb/c8GC8jTMsKHP2IrMQD1Fz7MEAsF?= =?us-ascii?q?UTmrOHnEiENGl/2S8nyVroMmqpj3gpYOUaFUW0AvGvMBFEtlGN0CIJFqXjIrir?= =?us-ascii?q?OUkM4J5WCjrBnKXslbsIrIVu6JAfXoLjaVl75EZwEHwbngN4QcKpX721B+all9?= =?us-ascii?q?hInKHUvQXdRJoiJ/dQ85u19C/2ZkTm00wU7lbRmt4HALH/6ughE2khd+Yfgq9D?= =?us-ascii?q?r0+Fg3J1XKpCw2kEQqhNrqnyuecD/rI6e2R41WDDD0t0cpOJPhXwl1dRGynVBj?= =?us-ascii?q?NDrcXb1RgKFvdX51hwLHvptPAeBTTatBYBAKxPGXY+4n0VNTqym9wk9H/+TFA4?= =?us-ascii?q?N4lAQ2aZ6ss25A2wV7Yd4pIqzQIbBFzkJXhqOPoCCo0Ps+wBUZJ0kT82OfYzIH?= =?us-ascii?q?uEsNNrY6PSWo5fBs5RaEmzRdZGgGT+Aqre5y9kMhJ+SAyDrt07hdJU+rM+ySNK?= =?us-ascii?q?CZu2/blc6UWFww0FgIl0pE/bRs18csbVaUXVg1zLSNDxQJKdbCKQZNYspI6nfT?= =?us-ascii?q?ZjiBvv/XwZ1pP4WwDfvnTe6UtKkJhUKkEh4pH54S4cUBBJWs1l/XLdv/Jr4f1R?= =?us-ascii?q?ot/BjrJEmCDPlRZR2EiikHo8Ciw59sxoRSPCsdAX96MSS5/bbYuBMlgOeZXNc3?= =?us-ascii?q?fncbXpEINnQoV82mgyRZpWhPDCGr0uIFzwiP9yLzpj/OAzbmYNpjfu2bZQ13Bd?= =?us-ascii?q?Gt4zo/8LW2iUTN/ZnEI2H6KNJitcXV6e8Du5aHDPBUTLl6s0vGnYlXWWCqWXbV?= =?us-ascii?q?EdGpP5jwd5UsbdvsB3a+VVy/kSw6T8HwPdaqNaWIjgfoRZtOvImcxjAjOte3Fi?= =?us-ascii?q?sCFBdou+ED+KV8aBUYY5UlZR7otgI+N7GwIQqDztquRGOtJidMQPlE0eW2fbpX?= =?us-ascii?q?wDQwbuWi0nsvUok6z/Wr8U4KXJwFkw3RxfOkZ4lYTSj/B2dQexvRqiojlmhgN+?= =?us-ascii?q?EywuElzBPOr1YcLyiBdPZ1Z2xco9E8GVSSLG11CmoiR16Tl4zD4hKs370J8Ctd?= =?us-ascii?q?mM5U3vFfvHj4oJDffCqmWLa3ppXNryogcd8mrrVtMYziJ8uGs4/enjzfTZTLrw?= =?us-ascii?q?KFUS67GOBBldRKJiJXXuVIk3k/OcMaoYpB9VYxVsAmKrxAEqkjvLaqaSZ/AC4T?= =?us-ascii?q?yi8YWYWA3CACguii2rvakAuQf4o4MBAetpVNnMcdWTZsYiwCvK+jS5nWl2icR2?= =?us-ascii?q?cRJAcT7BhD6xwYmY91fuHl5o3ITJlWxDNNuP10UzHEFp9x+1v1V2Gam174R+u9?= =?us-ascii?q?k+axxwJd0Ors0sUHWB54EUVS3PhZlk0zJb5tNqYQoJDFsiWTdUzgpmLsyPGqJF?= =?us-ascii?q?5Lyc3bb1f4FpbKtXLgUi0A/n0ZXZVPyHfeFZsOkwp5b6IrpE5ULo6/Z0jw/SAp?= =?us-ascii?q?yYNyErakUsCrwkoqomwdRye2CdZBDf9psE7PUj1/f5+rsInlO4lVQmJI5JKdqU?= =?us-ascii?q?1Wn1l2PiGlzppcL8VN4j8SUzhVvTWSose9SM1Z1c9xFZ8MLc91u23hF6NcJJiR?= =?us-ascii?q?v3o2t6T1ynDD4TA8t0y1yS6vG6+iVe1Z4XMRGgEoJ2SYpUkvC+os8mjS8lDRvF?= =?us-ascii?q?B75f1bBr2VgUV3vjl9AohEBixV2nC9M1RzUH5Gvv1UKajPb8NcQ/gyZRquOxMk?= =?us-ascii?q?Fv4rxE2J8l9qknjneSBysRFa+y/FVQkuSSYVmqvtmSEZqsy/IT8aTJZIYi87by?= =?us-ascii?q?bLLAKbnS5XsQ1aa0FtXJAZGchK9K0B3YtT5crCUkesKScKXBB4MQI4y/Vfn1ZZ?= =?us-ascii?q?sEqEYSDdERaodfHXvxJtZ8eRscipIO76/Apci4PnseE497kYSHG8nw2iX8zepZ?= =?us-ascii?q?fmttKWrkuOaLv4M+qkbH/dSzjMiAu9has4A5nP5CffKgxbJIdmyXA8e5juFXbL?= =?us-ascii?q?PQhaJ6IcP0dbVbp1ac9creBeesBpY7sG9rF1BhKfWBzvHJKgrONcIlbUXzTeID?= =?us-ascii?q?2L8vajroLL8bzdVe/ga9SOx3bAXa16JYp15ifgG7j0y49e5lT51ep3+kN8V1fG?= =?us-ascii?q?LziLrM79KQMT+Mmiakzis4UyEjPYHJh8jHjgylxOescMXyKq95EYx49D53brVe?= =?us-ascii?q?J0yE7zv/NO97N884k4/6hpyduoJafVMflaq1FoDQWUBgpw6pUgG2x/R2dPYuAP?= =?us-ascii?q?NvveYaMZgt3wpOztEawY9gGV8fRDadTbP0HBhtW/CjaERBxchwcBtSQVIRaA1/?= =?us-ascii?q?OegK90TtulpfLl1U0z5Vi+MgQGw6pp5Yue/aqIvuDXZQPLzbcYQqjqWt/zrrM0?= =?us-ascii?q?tkOO//0riqABdXFubg26FOgdStQdyX3+zaAryiIsF93MH6769P5ETXI5kSrqm4?= =?us-ascii?q?phEFUOBvMUAb2L8Jxbnmgin+zZMsMZcrxemmmVDxGpCbkCxmC36yuMPGZqmAnO?= =?us-ascii?q?3A/qTWO18lD2sTdyQTHQwNf7jkpVSr63CF9QXyWzI094tyiPPA7yu9rpoqk16V?= =?us-ascii?q?w2Mmj4tNKMiGShOalYH8vkJNCGJik0vl0XhoUrRtOzwYAbBca9INAJ/XF8dPTe?= =?us-ascii?q?7W2rkzVGo6hamYXT+d2V9e/RHXm7iK2WsbONyy5EynIgp1Ew9sigNu3S592NW/?= =?us-ascii?q?mo2HsRTyZ7uwvFQRG1r6fWoE0KNkOQ0UfEgooKMste3Xki2UHs/PIjT84r9AVC?= =?us-ascii?q?CobAYOsPpTb3ODbvwFafZdc3WjOf0ztREFL1C0N3GLMg2GLqocLGiWvQ+0AyRo?= =?us-ascii?q?ZubUDnggZ3D4ogI0I39FcX2jYDERQKaR2DCbGoAkLlLZcLVUcdchmH2bm6db0x?= =?us-ascii?q?3UJt3rOu6ujTbfZ/B6oWLPpdiBCBnERDEJIMraIeWK58e0Na9KPPogjiEI3nUv?= =?us-ascii?q?j9mHo+K/K6X8da8doDuHs6+Aa/QBig5olf4LYHkpyIcbREYZfUtsBm80hn/SIP?= =?us-ascii?q?djBKgBVnlBO2S/4cq/rs4tfFq5ql8f2uW7wzR+oN+Bg7GX9+g4H2gF89vdHdz/?= =?us-ascii?q?1cRZHNiYTj7ABNJGaHuITb0xl5MucOLpykfbZ++HUdJigeIX0OMcCQa/Yi/y9n?= =?us-ascii?q?KC/T6EBaAsMQedMYO9LAmQFVi0LzQr5c6tHWGkSGBIdvac8n83D7yDcv8ZszSu?= =?us-ascii?q?zg8iO5JYjD71FROPNOlD5jlNPZpOkb2/XSCikX4WWBaxdv3yOCz4KABOr3/eqR?= =?us-ascii?q?1t7bTU4GHjQxU4dHPjWO4wunRvC6lJ/xSAOb9tfzgI4idEKXXnGxhL4KsrpQHu?= =?us-ascii?q?5AhCT72SJeFoPsi/KOrdWs7GpXtltaEId89hDFAL9QPolnNhT4mMirQVJ8Bijl?= =?us-ascii?q?dMHXaBUuouyWyfkI4+lkMEv+f4AbKAoey73m8XpVUhduSLnus1aFR+Ieet9mR+?= =?us-ascii?q?nCrn9L8o9vNq4PPFecpJz2tDhIs0o5ABU0aLMqqDxVaFXOlhVPW6nooL4Alhcc?= =?us-ascii?q?UdlhtE9DA22wInwx5ybHValOiKmRCeAV/SuTTqMUTkVoKTlyQxWr15VyY7Gph+?= =?us-ascii?q?xIsntaniNhp/gnyzNmSwW6uS3woKIN3jUs+KqmuzUFuHxFSPiekijTBFVH0vsK?= =?us-ascii?q?l6cdBGz45Vy6fnYDcJP44KN7KsT46Ykh/3M/bA0lfy0HQeugDCXwgLmTAoCVsd?= =?us-ascii?q?JcgxmNuN7VbbKoKCgfObs8xQjkR3hn3QjUhAxo/3cTQjW88N8kI52wOck5ySqz?= =?us-ascii?q?AmjXbUsC7KxPvsvws14LUeQ3ZEhuwGVmyMeHQDMCSNbIG2YvgQgucX9Ef45b6R?= =?us-ascii?q?8GC6kohS6FvqtB/gEUZjfYCJiq+onUncfVxHY8TNZqxmTNpq2Gh5Mny2Nlm9Jq?= =?us-ascii?q?7iGUvHQdau3YX9VqAnftyodV0fb+aOm1suAbVItmz6ysUP4cMsa5/2u7w5FqWl?= =?us-ascii?q?K4ybQfGFq5K/UPxrDBUyeqUWeYQ/iEc3CQnzYlNU7//RuoIUM5aMdEq08wKeXD?= =?us-ascii?q?iYRalwL/TbN4XCOQqkHHzGY7K+MVaxo2uJu7ewwNVOMRaOycJe8gwfIgDFsMa2?= =?us-ascii?q?TEHTBxC++wsF6igJJ3O3N+7kXmee7t6BzpMMOOGhkYFo7Xtpxx+fy6R2KZPn9g?= =?us-ascii?q?yBxyPFVq+OrEElQxt/Ncc4yPktTKgNR7y+EFfe93MSIhot4Thp5j6Y6M3ceFbB?= =?us-ascii?q?HRz4v9JdbOr/iEGf3Q0UIqen1AXbodewz14Zk1Pt8jVLHJG7tWowgcD7AgQJM9?= =?us-ascii?q?L2fx6L10LARrfw7NZbS0h9Lnpv6KZpRIpH/Z8FYwID3auxId1vy+VRZ7YIyyh3?= =?us-ascii?q?XuPJAwQSpMr9hsChtlH4tPHNgNrwi9DJ6Xn6G7jcG++0Vgt+8Mr6XwFujA1M6l?= =?us-ascii?q?0IVpQ5ha+UuLMS7KC6Z1hERlkv+/guzE0pn2FcPiZc0EW/ZmTWLfbb/GBIq/IC?= =?us-ascii?q?qUOs3gY05G76Kc0LVhXxWfei/5W6uGtDW6O/h/4EQ7y4l4fO/Nwzw367HUxsH+?= =?us-ascii?q?Z2ZBpiestXSJLodQ7ETWBezCWBJZUfSE8H5/Ha0WcYT76vwDMdkjwNiA+Ql88i?= =?us-ascii?q?5O0MyfI6iutkXMwF50dYrHLEv13CY0QY4KIBChPkY3mW/Zrm7SAW9ALsilNcZt?= =?us-ascii?q?nMyVAQLz6EVrn2EieHJBEHLyRdiNIWgbx96+ZAqS+QJPDtYDmfO3eEEhuq22SO?= =?us-ascii?q?loIYlFmf6xubUGi9lpLSbPSNJdPyHKI798JiBRAfnXpFg0fh4EtKA4WpwrapiK?= =?us-ascii?q?IUMHNlqAyCz1wQXNzU30d8Kj1LyXLyYO6HpK1LHF3iZWpwm/p/mZhtbsUK3WbJ?= =?us-ascii?q?3sW/7SKiUlXCmARTsuCUap5Uuku/0csfqdO2gQvlAUYiOUCA4Uva1vs9nQDmnN?= =?us-ascii?q?lu1nfZ0Kgu2aWi/qRC1/jqoyCT5BtVqQTPobCQnWc3jhjXJeuAO4Jf9M+mnqYq?= =?us-ascii?q?aFxqpTR+wWAoxMcuCWQ9vYZfBSPTEomSsFOOykZd3Ts6450k7UTWseC6TI+0eR?= =?us-ascii?q?Q1WMQvyd2T3rWZ4Yv5YwuiUy4dLQnzJ3H77OP7mBuz6k6pS4gzqAue3CSmktZF?= =?us-ascii?q?Q4gOAHAGmG2hlAMmAEC8oOtUHrWKGAYlhD1HMzheJpwR8Mdxx5Umdy3X1OgPa9?= =?us-ascii?q?BspZREYPjGOgRf0JcFF6ATAr8E+U/ALye90AuMHUR29Y7LcMT5QSLOV7oLXQbb?= =?us-ascii?q?AdxPcvwSJOvD0xsyLbCUhUyA2C7fnqEbp414FFsEI45fBtQkCGRXvw7HTb0YGm?= =?us-ascii?q?Boobzih8pnbpzOLbuediMLZfroB9RlwNBHQlCMra+GVqUXv1wxezthDzM6qCPC?= =?us-ascii?q?kS4DtDOy0MPt14y+59rQaAIs3M7UKWqrIJtFqgCQHNDKG9npNMFJe6hk2DdSBX?= =?us-ascii?q?fGDzRNhNofFXmYNPbA=3D=3D?= X-IPAS-Result: =?us-ascii?q?A2EzBQBBmQtZ/wHyM5AmNhAKAQEBAQIBAQEBCAEBAQEVAQE?= =?us-ascii?q?BAQIBAQEBCAEBAQGDASmBboNoiwuTXJMMgXAqhlQBCIN1VwEBAQEBAQEBAgECa?= =?us-ascii?q?CiCJA8KgmACIA8BSQMJAhcNAiIEAgIDATABBQEDATEFiANNgTMBAQEVBKUVP4w?= =?us-ascii?q?IgiYmAoNpWYIbBAoZDYNgEnmHMoVvgluCOoJfAQSJO4ZdgVaLZRKTCIp9CxyGU?= =?us-ascii?q?JJtM0NSWIEKJQseJw9fBmgZgwMMRByBZUUviQEBAQE?= Received: from unknown (HELO tarius.tycho.ncsc.mil) ([144.51.242.1]) by emsm-gh1-uea11.nsa.gov with ESMTP; 04 May 2017 21:14:32 +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 v44LCpM6008402; Thu, 4 May 2017 17:12:57 -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 v44LCnjA036014 for ; Thu, 4 May 2017 17:12:49 -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 v44LCncc008400 for ; Thu, 4 May 2017 17:12:49 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A1BKAwBOmAtZf0JSfUpcHAEBBAEBCgEBgyyCF4NoiwuoYQ6GFoRPVwECAQEBAQECEwEBCQsLCCaFcA8BDQE4AQMSHwImAjYBBQE1iFWBMgEDFQSlEz+MCIImgwoFgQKCUQpADYMuAQEBByACBgkBCHmDRINuhW+CW4I6gl8FiTuGXYFWi2USkwiKfQuGbJJtM4EVgWEvQBVfhEsPHIFldIkBAQEB X-IPAS-Result: A1BKAwBOmAtZf0JSfUpcHAEBBAEBCgEBgyyCF4NoiwuoYQ6GFoRPVwECAQEBAQECEwEBCQsLCCaFcA8BDQE4AQMSHwImAjYBBQE1iFWBMgEDFQSlEz+MCIImgwoFgQKCUQpADYMuAQEBByACBgkBCHmDRINuhW+CW4I6gl8FiTuGXYFWi2USkwiKfQuGbJJtM4EVgWEvQBVfhEsPHIFldIkBAQEB X-IronPort-AV: E=Sophos;i="5.38,289,1491278400"; d="scan'208";a="6041242" 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; 04 May 2017 17:12:45 -0400 IronPort-PHdr: =?us-ascii?q?9a23=3AXCQKzRD8Tc/t97jMsGjxUyQJP3N1i/DPJgcQr6Af?= =?us-ascii?q?oPdwSPv+pMbcNUDSrc9gkEXOFd2CrakV1ayI6eu5AzJIyK3CmUhKSIZLWR4BhJ?= =?us-ascii?q?detC0bK+nBN3fGKuX3ZTcxBsVIWQwt1Xi6NU9IBJS2PAWK8TW94jEIBxrwKxd+?= =?us-ascii?q?KPjrFY7OlcS30P2594HObwlSijewZbJ/IA+3oAnPucUanJVuJ6cswRbVv3VEfP?= =?us-ascii?q?hby3l1LlyJhRb84cmw/J9n8ytOvv8q6tBNX6bncakmVLJUFDspPXw7683trhnD?= =?us-ascii?q?UBCA5mAAXWUMkxpHGBbK4RfnVZrsqCT6t+592C6HPc3qSL0/RDqv47t3RBLulS?= =?us-ascii?q?wKMSMy/mPKhcxqlK9VoAyvqQFxzYDXZ4+aO+ZxcKzGcNMGRmdMRNpdWjZdDo6+?= =?us-ascii?q?aYYEEuoPPfxfr4n4v1YDsxu+BROtBOP01j9Ih2X53asn2OogFxnGwBAgH8kSv3?= =?us-ascii?q?TUstr+KaAfXvy6zKjJyjXDae1Z2Szm5YjHdRAhpv6MXbZufsrU00YvFgfFgk+M?= =?us-ascii?q?poziOjOYz+IAuHWY4ep4Te+iiWEqpxtsrjSxxsogkIrEipwPxl3F9Ch12IQ4KN?= =?us-ascii?q?6iREN7btOoCoZcuiWAO4Z2TM4vRXxjtjwgxb0co5G7eTAHyJQ5yB7bbPyKa42I?= =?us-ascii?q?7QjiVOaVODt5indldK6mixa88EWty/fwVsaz0FZNoSpFlsfDumoR2BzU78iLUv?= =?us-ascii?q?p9/kG/1jaTzw3e6O5JLVopmabFK5Mt2L09moQJvUnCHyL6gED2g7WXdkUg9Oio?= =?us-ascii?q?8ePnYrD+q5CAOI91iwb+MqIwlcykGuk4PQ8OX2+U+eS4yrLj+Ff2QLROjvEsjq?= =?us-ascii?q?bZt5XaKdwBpqGlGw9Vzpoj6xGnAje9ztsYmXgHLFRYeBOIlIXpJ1HPL+z4Dfe4?= =?us-ascii?q?mVislixryOrcMr3uBZXNMCuLrLC0Zrt56khB2CIv3Ntf4NRSEbhHL/XtCWHrs9?= =?us-ascii?q?mNJR8jMheowu/hQPrjyp8FUmKCSvuSP7HVt1KTzu0oJOaIaYocuTK7IP8gsa29?= =?us-ascii?q?xUQlkEMQKPH6laAcb2q1S6xr?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0H1AgAymAtZf0JSfUpcHAEBBAEBCgEBF?= =?us-ascii?q?wEBBAEBCgEBgwGCF4NoiwuoYQ6GFoRPVwEBAQEBAQEBAgECEAEBCQsLCCYxgjM?= =?us-ascii?q?gVVgBAQEBAQEBAQEBAQEBAQEBAQEBFgIrJQFDDwENATgBAxIfAiYCNgEFATWIV?= =?us-ascii?q?YEyAQMVBKUNP4wIgiaDCgWBAoJRCkANgy4BAQEHIAIGCQEIeYNEg26Fb4JbggA?= =?us-ascii?q?MLoJfBYk7hl2BVotlEpMIin0LhmySbTOBFYFiL0AVX4RLDxyBZXSJAQEBAQ?= X-IPAS-Result: =?us-ascii?q?A0H1AgAymAtZf0JSfUpcHAEBBAEBCgEBFwEBBAEBCgEBgwG?= =?us-ascii?q?CF4NoiwuoYQ6GFoRPVwEBAQEBAQEBAgECEAEBCQsLCCYxgjMgVVgBAQEBAQEBA?= =?us-ascii?q?QEBAQEBAQEBAQEBFgIrJQFDDwENATgBAxIfAiYCNgEFATWIVYEyAQMVBKUNP4w?= =?us-ascii?q?IgiaDCgWBAoJRCkANgy4BAQEHIAIGCQEIeYNEg26Fb4JbggAMLoJfBYk7hl2BV?= =?us-ascii?q?otlEpMIin0LhmySbTOBFYFiL0AVX4RLDxyBZXSJAQEBAQ?= X-IronPort-AV: E=Sophos;i="5.38,289,1491264000"; d="scan'208";a="5500592" X-IronPort-Outbreak-Status: No, level 0, Unknown - Unknown Received: from mail-wm0-f66.google.com ([74.125.82.66]) by emsm-gh1-uea11.nsa.gov with ESMTP/TLS/AES128-GCM-SHA256; 04 May 2017 21:12:45 +0000 Received: by mail-wm0-f66.google.com with SMTP id u65so5980407wmu.3 for ; Thu, 04 May 2017 14:12:45 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=AVYPTnemMHfl5W6IWHKGTF3kcPbrKFm4XBfd3zFg4B4=; b=UYdoC0dqLc8e+a/PBnUFIIfwvMqGlSFagvGdQbUYTcDdEnKex0V2JXwFw61BdTfOj5 MEC5wGCFMVlZE6iHnC7jAxSPA+ZjWobArA4mvusjgAcJAcLwNtPHRF6epECxxuSzXngo BuX7TFuIfwQV3FquQ5HYB1/PNITKmxU/8NEQL7Pn7CI8o7XvnoF+biul8pEVRFUbAIeI RxNyOJi8Oc80vrQvwOotvTzOl9QoHZQ05BaaPlh1HJFYvNKjqwl2zJaBiBjmHzzk3sZZ pI4tXqtZ4LZ4I487o6DmfxYpi9aGa+nkOG6h0yK54T11JUIc+dKO1isAowMR4csxsJXn qCIA== X-Gm-Message-State: AN3rC/7yVk1HdQ0BWVVZwUmZGoEgbBxT5inAAgRsWRotYP0LLBCF1t2M TdY/LJ32ZSJtJw== X-Received: by 10.28.151.138 with SMTP id z132mr3411392wmd.97.1493932364191; Thu, 04 May 2017 14:12:44 -0700 (PDT) Received: from localhost.localdomain (x4e361335.dyn.telefonica.de. [78.54.19.53]) by smtp.gmail.com with ESMTPSA id b80sm176069wma.5.2017.05.04.14.12.42 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 May 2017 14:12:43 -0700 (PDT) To: selinux@tycho.nsa.gov Subject: [PATCH 1/1] libselinux: add selinuxenforced tool Date: Thu, 4 May 2017 23:12:37 +0200 Message-Id: <20170504211237.27440-1-cgzones@googlemail.com> X-Mailer: git-send-email 2.11.0 MIME-Version: 1.0 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: From: =?UTF-8?q?Christian=20G=C3=B6ttsche?= via Selinux Reply-To: =?UTF-8?q?Christian=20G=C3=B6ttsche?= Errors-To: selinux-bounces@tycho.nsa.gov Sender: "Selinux" X-Virus-Scanned: ClamAV using ClamSMTP Add command line tool selinuxenforced to determine the current SELinux enforced via exit code. Useful for script usage or monitoring. --- libselinux/man/man8/selinuxenforced.8 | 24 ++++++++++++++++++++++++ libselinux/utils/.gitignore | 1 + libselinux/utils/selinuxenforced.c | 33 +++++++++++++++++++++++++++++++++ 3 files changed, 58 insertions(+) create mode 100644 libselinux/man/man8/selinuxenforced.8 create mode 100644 libselinux/utils/selinuxenforced.c diff --git a/libselinux/man/man8/selinuxenforced.8 b/libselinux/man/man8/selinuxenforced.8 new file mode 100644 index 00000000..5ef746e5 --- /dev/null +++ b/libselinux/man/man8/selinuxenforced.8 @@ -0,0 +1,24 @@ +.TH "selinuxenforced" "8" "4 May 2017" "Security Enhanced Linux" "SELinux Command Line documentation" +.SH "NAME" +selinuxenforced \- tool to be used within shell scripts to determine if SELinux is in enforced mode +. +.SH "SYNOPSIS" +.B selinuxenforced +. +.SH "DESCRIPTION" +Indicates whether SELinux is in enforced mode or not. +. +.SH "EXIT STATUS" +It exits with status 0 if SELinux is in enforced mode, +1 if SELinux is in permissive mode, +2 if SELinux is disabled, +and 10 if a library call fails. +. +.SH AUTHOR +Christian Göttsche, +. +.SH "SEE ALSO" +.BR selinux (8), +.BR setenforce (8), +.BR getenforce (8), +.BR selinuxenabled (8) diff --git a/libselinux/utils/.gitignore b/libselinux/utils/.gitignore index 5cd01025..bc1f4327 100644 --- a/libselinux/utils/.gitignore +++ b/libselinux/utils/.gitignore @@ -21,6 +21,7 @@ selabel_partial_match selinux_check_securetty_context selinuxenabled selinuxexeccon +selinuxenforced setenforce setfilecon togglesebool diff --git a/libselinux/utils/selinuxenforced.c b/libselinux/utils/selinuxenforced.c new file mode 100644 index 00000000..b5e1c8e8 --- /dev/null +++ b/libselinux/utils/selinuxenforced.c @@ -0,0 +1,33 @@ +#include +#include +#include +#include + +int main(void) +{ + int rc; + + rc = is_selinux_enabled(); + if (rc < 0) { + fputs("selinuxenforced: is_selinux_enabled() failed", stderr); + return 10; + } + if (rc == 1) { + rc = security_getenforce(); + if (rc < 0) { + fputs("selinuxenforced: security_getenforce() failed", stderr); + return 10; + } + + if (rc) { + // enforced mode + return 0; + } + + // permissive mode + return 1; + } + + // SELinux disabled + return 2; +}