From patchwork Wed Nov 30 15:47:54 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kyle Walker X-Patchwork-Id: 9454579 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 24F6E60585 for ; Wed, 30 Nov 2016 15:50:36 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 336B428461 for ; Wed, 30 Nov 2016 15:50:36 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 27CBB2846D; Wed, 30 Nov 2016 15:50:36 +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=-1.9 required=2.0 tests=BAYES_00, RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received: from emsm-gh1-uea10.nsa.gov (emsm-gh1-uea10.nsa.gov [8.44.101.8]) (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 55EA828461 for ; Wed, 30 Nov 2016 15:50:33 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.31,574,1473120000"; d="scan'208";a="1437378" IronPort-PHdr: =?us-ascii?q?9a23=3Aj7UemBKNyfxN3j2dTtmcpTZWNBhigK39O0sv0rFi?= =?us-ascii?q?tYgQKfv8rarrMEGX3/hxlliBBdydsKMfzbGH+P++EUU7or+5+EgYd5JNUxJXwe?= =?us-ascii?q?43pCcHRPC/NEvgMfTxZDY7FskRHHVs/nW8LFQHUJ2mPw6arXK99yMdFQviPgRp?= =?us-ascii?q?OOv1BpTSj8Oq3Oyu5pHfeQtFiT6zbL9oIhi7qQrdu8sXjIB/Nqs/1xzFr2dSde?= =?us-ascii?q?9L321oP1WTnxj95se04pFu9jlbtuwi+cBdT6j0Zrw0QrNEAjsoNWA1/9DrugLY?= =?us-ascii?q?TQST/HscU34ZnQRODgPY8Rz1RJbxsi/9tupgxCmXOND9QL4oVTi+6apgVRHniD?= =?us-ascii?q?0DNzUk7m/ZjMJ+h79frB64uhBz34vYbYeIP/R8Y6zdZ8sXS2pfUMhMWSJPAZu8?= =?us-ascii?q?YokSA+cPMulXs4bzqEUVrRalGQmhBvnixiNUinPqw6E31fkqHwHc3AwnGtIDqH?= =?us-ascii?q?HardXxNKgMTOu6zLPHzTHAb/xIwzf29Y/FchMvoP6WWbJwctTeyVM0GgPfkFqf?= =?us-ascii?q?tIzlMCmJ1ugXr2eb6O9gWPuphmU6pQ9xpT2vyd0tionPno8V0E7L+jh5wIkvOd?= =?us-ascii?q?20UlJ0YdmhEJZWqiqUNJN2T9s/T2xntys20L0LtYOhcCQUx5kr2QTTZ+Gff4SW?= =?us-ascii?q?/h7uUPydLSp2iX57Yr6zmhW//Ea6xuHiVcS51ktBoDBfndnWrH8N0gTe6s2ASv?= =?us-ascii?q?Rg4EiswS2P1wXP6uFcJkA0iLbbJ4YhwrEukpoTtlzOHjPsl0Xsja+Wa14k9vK0?= =?us-ascii?q?6+XnfrrmppicO5Vyig7iKaQhhtazAeE5MggKR2Sb+OK826P//UDhXblHgfI7nr?= =?us-ascii?q?PZvZzHP8gXuKG0DxFP3oo+8xq/Ci2p0NUcnXkJNlJFfxeHgpDyO17QJPD4DPG/?= =?us-ascii?q?g0mjkTty3P/GOaDhApPRIXfdi7fsZqp96k5AxwozytBT/ZRUCqobL/7pVU/xs8?= =?us-ascii?q?LYAgcjMwOo2+bnFMl91oQGVG2RGq+WKrnSsV6T5u80O+mDfpUVuDfmK/g94/7h?= =?us-ascii?q?l2M2lkEHcamux5sXZ2iyHu56LEWBfXrsntABHH8Evwo/SOzqjUONUSRIana8Qa?= =?us-ascii?q?0z+zY7CJi8AofbXICth76B0zmnEZ1KfGxGDUqMEXjwfYWeR/gMcD6SItNmkjEc?= =?us-ascii?q?W7ihUZUu1Reyuw/70LpqNe/U+jUZtZ76z9h06fbTmQs19TxuAMSXy3uNQH1snm?= =?us-ascii?q?MUWz8227hyoU9nxVeA1qh4nudVFd9J6PNKVQc6KITQz+tgC9D9QgjBZMuGSE66?= =?us-ascii?q?QtW6BjE8Vsg+zMIUY0Z8BdqilAvO0DC2DL8QjbCLA4Y08q3E1XjrO8l902rG1L?= =?us-ascii?q?Umj1Q+XsRAL2mmibBk9wjPB4/JlF6Ul722eqQdwiHN8nuDzWuUs01CVg5/T7nF?= =?us-ascii?q?V2gFZkTKtdT5+l/CT7i2BLQnLARBzcqCKqxRZ93tkFVGWPDjONHEbG6rnGewHx?= =?us-ascii?q?mIzKuWbIX2Y2UdwDndCE8cngAI83aGLw8+Bjy9o2/FFzxuE1XvYk3p8eZkrnO3?= =?us-ascii?q?VEk0wB+Wb0d5zbq65gYVheCAS/MUxr8Ftj0uqzFoHFmjxdLWEMGNpxR/c6VGet?= =?us-ascii?q?w9/VJH2XjetwxnMZyqN7piiUIGcwRro0Pu0A16Cpldnsc3rXMl1g5yJLmE31NG?= =?us-ascii?q?cjOXwYr/OqbLKmXo+hCgdbLW0EnE0NmK4qcP9Og4q1L7sQGvF0oi93Fn3MdO03?= =?us-ascii?q?aH/JrFEhASUZXrXkYw7Rh6qKnQYjMh6IPMyX1sLa60vyff1N0zGOsq0Aivf9lQ?= =?us-ascii?q?Ma6fCADyE9cVB9KyKOM0gVildBQEM/5O9KQsJcOpa+OG2LK3POZnhD+mk2VH75?= =?us-ascii?q?xh0kKL7SpwUPLH35YCw/Ge0QuKTDP8jFanss/tg4BEYiseHm2lySjrHIRRfLF9?= =?us-ascii?q?fZ4XCWeyJM263tF+h5/2W35E7VKjHE0J2MuoeRqUclz80hZd1V8PoXymnyu4zi?= =?us-ascii?q?B7kyozoqqZwiPO3/zodAAbNW5TWGlikVDsLJCuj9AdWEioaxYmlAG56kb9yalW?= =?us-ascii?q?v79/L3TPTkdTZST2KHtiUqSovLqYf8FP8I8osTlQUOmkeVCVUKP9ox8A3yz5BW?= =?us-ascii?q?dR3zc7dzW2upX+mRx3k2edIGp1rHreZc583xHf68LARfRJxDoJWDF4iSXLBli7?= =?us-ascii?q?J9Sp+NGUm47dveC4TG+hSINccS3vzYyeriu3/2tqDgOjn/qrgN3oDRA60TPn19?= =?us-ascii?q?ltTSjIrwjzYo/w16mhMuJoYE9oBET668VkBoFyiIwwhIsf2XICnJWa4WIHkXvv?= =?us-ascii?q?MdVcwa/+dGACRSMPw9HL+AjqwktjLm6XyILjTXid39BhaMegYmMNwC499MdKCL?= =?us-ascii?q?qO7LNYgyR1rF24rRjeYfdjhDsdz+Uh6GICieETpAUt1jmdAqwVHURAIyzskQmH?= =?us-ascii?q?4sugrKVReWmvcaK81ExgktC9FLuCuB1TWG7lepc+Gi999t1/P0jR0H338YzrZN?= =?us-ascii?q?jQbc4TtxGNnRfPle5VJIg2lvoQiiptIXj9smE9y+4nkRxu2om3vIuHKmVp4q20?= =?us-ascii?q?GRtYNjr7Z8Md5D7tkbpensaR34CqAJptADMLU4X0TfiwCjIdqeznNxqSED07sn?= =?us-ascii?q?qbF6DQHQmD6EdhqnLCCJ6rOG+KK3ke19VtXgGdJFZYgAAWQjo1goI5GhqtxMz7?= =?us-ascii?q?f0dz/ioR6ULgqhtQ1uJoMAHyUmjfpAi0cDc1SICfLAZR7gxZ4UfaL9Ce7vlvEC?= =?us-ascii?q?5C5p2ushaBKmqFaARUFWsJQFCLB0j/Prmy4tnN6/WXBuykIPbVfLqOr/ZRW+2P?= =?us-ascii?q?xZK13Yts5yyMOdmXPnl+E/073VJOXWpjF8XXgTkPTjYYlybKb8+bvxqz4DF4rs?= =?us-ascii?q?Wl/PTsQgLv6pOFC6FOPtV35xC2naCDOvaWhCZjMzlYzosMyGTGyLgexl4SkD1u?= =?us-ascii?q?dzesEbQGryHNSr7fmq5NAB4fcS9zM9FI760k1AlXJcHbks/11qJ/jvMtEFhKTl?= =?us-ascii?q?vtmsWoZcwRP2G9L0nLBF2VO7uaPzHL2N/4Yae9Sb1WkeVVuAa9tiqbEk/5IzSD?= =?us-ascii?q?jCPlVh61PuFQlyGbOxpetJu6chZ3BmjpVMjmZQGjMN9rkT02xqU5iWjLNW4TNj?= =?us-ascii?q?h8dVhAoaCO4ixDg/VwAWpB4mBiLemelCaT9/PYJYoOsft3HiR0kPpX7241y7RP?= =?us-ascii?q?8iFLWud4mCzKrtFwpVGml/OAyjtjUBVVrTZKi5iHvUJ4OaXW7pNAQ2rL/AoR7W?= =?us-ascii?q?WMDBQHv8dlCtrqu6xK0NjPk6PyJylE893P58scANbbKMGcPXU9NhrpHSLbAxEe?= =?us-ascii?q?TT63L23fgVJSkO2K/H2Pspc6soTsmIYJSrJDVFw1CvMaCkNgHNMYO5d6RTYkkb?= =?us-ascii?q?+HjM4S+3Wyth7RRN9VvprfTPKdHe3vKCqFjblDfxYIx633Ip4XNoDg2ExibUJ6?= =?us-ascii?q?nJjQFErWRtBNoSxhYhUyoEpT7Hh0Vncz1F79agOx/H8TEua5ngQohQtlf+si7i?= =?us-ascii?q?3s7Es3JlfRvyQwkVMxlsjigTCfaD7xNrm/XIFMByryqUcxLovxQxxpYg2qgUxk?= =?us-ascii?q?KDDESqpMgLR6a2BriRLTuYBUFPFGV61EehgQxP+MZ/o2zVtctz+nxU5b5erFE5?= =?us-ascii?q?dikhUlcYK0pXJaxw1jdMI1JbDXJKdR01dQnbyBsTWn1uAr2gAeOV0A8HiIdy4L?= =?us-ascii?q?pUwILKMpKzCs/uxx7wyNgSFDdHEQV/otofJr9kQ9N/6Gzy3+z75JMlqxOPCHL6?= =?us-ascii?q?OFp2jAktaFQl0q1kwWikZF5qJ50cE/c0qTTEAi16GeGAgMNcbYLgFVdcVS/mDJ?= =?us-ascii?q?fSmSqeXN3Y51P4KlG+DsSu+OrrgbgkSlHQYuBIkM4cIBHoS23EHfN8fnI6YPyQ?= =?us-ascii?q?8x6wTzOFWFEPNJdQqQkDgZp8G/zZl33ZRSJzwGHWp9NiC36arNqQ8xnPqPRtE2?= =?us-ascii?q?bWkGXoEcLHI5RNW6mzJFv3RHFDS4z/4WyA2F7z/6uiTcESLxb8R9a/eOZBNtCd?= =?us-ascii?q?a2+TMl/6iwl1HX7o3UJ3vmOtR6pt/P9eQaqo6EC/NOTbhyqUHcm5VYR3GxXG7P?= =?us-ascii?q?Fsa1KITqZ4kqc9P0Fm6wUkajhDItU8fxINGtI7CUgQHpQIZUt5Wb3DAjNMKmCz?= =?us-ascii?q?4eGhdxqPsY665mYw0MfYY7awbytwsiL6y/PBuY0tK2TmaiMztZVf9fzfmharxW?= =?us-ascii?q?yCotYOm6yGcgTp4kzum391INS48Qjh3Ew/aseZVeWzDpGnNBYwXPuTY5l295O+?= =?us-ascii?q?koxuc/wQ/HvkcEPDCOdO1pbmtEv9cmCl6JOnp2C3A3R1mFgYrN/w6gxbYS8DVB?= =?us-ascii?q?n9xMy+1KrGD+voPDYDKrQKGksovasyw7YNc8vqJxL5LsItGdtJzEhDzeTIPcsg?= =?us-ascii?q?qfUC61D/BagMRfIDpEQPlUnmEoIdYGuYxA6UUtVsc+ILhPCLI0qL6zdDRqFzIf?= =?us-ascii?q?wygCWoyc2zwCh/uz1KHBlheMapgiNgILsIlaiNsHTyF2ej8epLOkV4jOi2CESH?= =?us-ascii?q?IELxsI4AtQ4wIAkotwfuH774rSUJ9D1SJZo/JuXivMDJlo+EPxSnuKjljgVPWh?= =?us-ascii?q?j+up0BpIzP32yNkbXwVwBFNBx+ZMjEQoNq94K60Rvo7MvT+IcUL6vG3tyOu6Kl?= =?us-ascii?q?le09fUd1jiAIrDq2X8TjUW+WcISo9X1HHfCZMSnhJ5aakxv1VDOoWmekf45zE/?= =?us-ascii?q?xoRpA6O3Vdu3yFk/t3oGQTmlE8ZZAeF8rF3XQCFlY4ysqJj9NZReWHNf+J2cq1?= =?us-ascii?q?dckUViKS25xIFdK85T/DEDQiJDoTKHvNu9UMdDw9N5D4cQItdjvHfwALtEOJ+V?= =?us-ascii?q?o3IsoLzuxHjZ+zQysFqhwTWzHKi4T/lH8GICAAUpIH+eqlIuD+sq/Wfe6FfNsk?= =?us-ascii?q?p7/+1DHLiAkV1xoCphHpBJHjtGz2qlL0l1THVcsOVXM6XVc81dQ/kufhCjIRo+?= =?us-ascii?q?GuA630aR50F7gW/5YzButgtd4y3dQw40VSwOj7fxhTEer9qoNSUcS51WcTUrdz?= =?us-ascii?q?3FJB6DmSBLoBZfbFlnW5ADDdZf4b4b2ZZb89HfRkmyMSEFRAJtNgYm3vpFj0JD?= =?us-ascii?q?t1+YeS/FBwqyafnPqgF3fduWrMOxLPT5+xlIio35v+Ai7KgDRmOplhOzTtzEqI?= =?us-ascii?q?/8rNKKvFOUdKjkK+28fWPBTD/UgBCygrcrEYLH8DXNPwpANZZ602Ykbob8BmLR?= =?us-ascii?q?OxRJOb4bLVJBVa9mcdVGvvxaZ8h8dakS969iGg6LSxHyFIGht/RJMlHTRTHCIC?= =?us-ascii?q?qb6ey/vZjf7brDRuj8fsaM3WrIQ7prPpdm7jn2A63q3pFD9Ur2wPht6lh3SVzB?= =?us-ascii?q?MyCfstvtOB8E5M6/eUT8pJEpGy3ZAItomnr32k5Ab9YXQzGt8JkA0JNZ82rwRv?= =?us-ascii?q?hl3Ujvq+BS7L5k6ZQt479118i0I7vSKe5Avk9jGBSUAR9q9po1CmhlW29RevMR?= =?us-ascii?q?KOvWfakBkcDusf74GLIK5xCO5uxZbcfHJ1vblcmhCzGcThhEkxkdqTIAKQuczf?= =?us-ascii?q?GFkbduScm5vej5xl4t41+mIx4D1r9t4YOE9bSUpO/LdRTe16MJWq70ScPvtbQj?= =?us-ascii?q?p1md5eU6m7IUfGx6fRGnGvAHVsEB3mfg0bwqzSU0HsPBBb3g4vlDV2k9nj36hZ?= =?us-ascii?q?BwBFAWGu4QHbqX/IRRgmY4lPbfNt0NaKxCnXyPFRG8GL8Y1XGr8zeXIHVighzW?= =?us-ascii?q?0RH/W2Wz7FHsrS9/XCTD0czuklZPWbmxHkdSWDClOUlmvzOTJADorsb4ubwp7E?= =?us-ascii?q?EqNWzprN2NlHagOLNTG83wOtmcLDIpq10Jl5IxR8ag2YYBFdq6OtcR/2l0buHC?= =?us-ascii?q?5GOzjy9Bv6BHipLY4sGR4fjXHH+gj6iAp7WMwjBYxGI4sksk6tC8LPHO+sGFQ+?= =?us-ascii?q?i112YLUShzoQzBXwS6qrbDtVAbJVSL0FvXmIwNJtxZ2H441kf65OgsXt0+7wBe?= =?us-ascii?q?FofaaPMEuz/zJDX1wVGFY9I0TSmSyT1XEUzpEVNgAqgzxHrwvN7VlXfX41AoXJ?= =?us-ascii?q?R/eFH8iBx4CoU5Jlgh6F4JzSofCQINcwyUDKm0BUT5KosJTUwDaQ+C3LW6Yao3?= =?us-ascii?q?01N8za6o5O/Jd+N8H7ANNvFfjgGQgFdbBogasaoEQLJzY1Vd7rLYphD+C4j7WP?= =?us-ascii?q?jrjX8wNfmrTcBf9sAWqX8i7x2wRxW+7pdD9K4bh4qUdq5Fe5fMuMF870F75TER?= =?us-ascii?q?cixNhBl/jxynXuAauO/s/MLXsJy25eayTKwtXfkY9wAoB2RiiJv9mEsjrsvJ1+?= =?us-ascii?q?hGRY3al5///RtWI3GQpobVyRZ8JvQVK46xerZv6WkHLTAEJ30SJdqWd+U84yh1?= =?us-ascii?q?PTXR5lxCB9gBZdYGM8vNhw9UkEzpWLdc9sbBHF+XFZtzfdgy72Xr0DA17Yc8Uu?= =?us-ascii?q?H45T+3JJHQ9UtCMO9YgSV3it3CuPYazubIBCgQ+3mZZAB/wjmexJmVF/bw4eKM?= =?us-ascii?q?xcnPWFMHBS43XZ1SJDiD+Qy7Xuq6jojpUgeP58Dvh5IxaVyfSWasnKQftaZMC/?= =?us-ascii?q?RPhj/83jhEGYD/n+iVvMa06GtLql1HF55+7QXfF6VDIpp7ORr5ls6xRkh/Hyf/?= =?us-ascii?q?Y9/bdh4vuOqQ2+cN7P5zN1Pkao8HPh0Ey7z76X1PTgttUrL2vUiWXfgXZNR4TP?= =?us-ascii?q?PItHdV6ZhvK6UXJliSuITqritUqFAxGAIpdKUwoSJedkbUmg1aRb35t6MBigsT?= =?us-ascii?q?UN55pVVDGXmqN2Ik+jrLT6JVg7eNCPYN6DWcUrQOU1l0MiN5Wx61149he6G3kv?= =?us-ascii?q?BbsmNLhSd9oPk20zN4RBuzozDsp7kX1TIm5r64qC0LuWZZQeWGjyfIFVJDwewF?= =?us-ascii?q?jagCDXbi9Vu8YH4EYIvp/rZnIcXg9Y8843UwehgjezMJXf6gCi7qla+IBJKAsM?= =?us-ascii?q?5Ejh6XpMrOdaOzLTQVNrklzxLjRmRy0g/anBly62sHWDSg7NgjJIWmIsYo3S+o?= =?us-ascii?q?FGfUdVoW5aNJqsTxv0YRTOQqcVNh3Hlj0s+fSy0CWMPPAH01ghE5Z2tLdpxD6B?= =?us-ascii?q?kaF7QngzuTsalG+xsbYDHKHYi//YnQh8jI02EnTdh23mLWurGFhpQy3X1nnNN0?= =?us-ascii?q?7iiOtG4OeOzYV89sH2X814Zeyez4fPWtseEHRZB4yLSgTv8NKM2j9na32JlwXE?= =?us-ascii?q?+q2KgeFUKjMOAf3rfbTzulSWqAVOSKbWiDhTA5P1X25Rm1M1I3acBKr1QnPuvF?= =?us-ascii?q?nJ5cmBXrUaloSSWIuV/b0GsjPPsYdw0otoendQgKQfUfZueGI+gh3uE+BEEKb3?= =?us-ascii?q?DXASt8E/W2vkK1nIhnJ3Vg5l33Yevp8gDhPtqdBB0EEYrBo55q/vy6QGOBNmN6?= =?us-ascii?q?wB10IkZ06//VF04tue9Eb5aRgd/Qisx50e4Fd/ZtKSo9utoSmoJ/94aZy8KKcR?= =?us-ascii?q?DNzpboO97ZuP+YA+fQz04yYGFVTqIZYR/p54U9JtM5R7zTHb5CsBQABKg1XJ8h?= =?us-ascii?q?OHn19K1uKgN8bBLRbqyugsb2vuKLeodUp3jO41I1LSfcuB4DyvuvQAx5dZ+qhH?= =?us-ascii?q?LyIJYuSTJHtdFtDAVpHJdXEcMaswWnG4KUmL28i9Kp4Ex1pekKsbbrB/DR0NS5?= =?us-ascii?q?2JlxX4RE5UOVITndHq5rgl5qju6qmPfPzoHxCd/+edMDTOV7THDKarvHHoWnND?= =?us-ascii?q?2DIcP9e09D876Zzr15SBGRaz7jU6qBri2kO+1u4V8nxYxgYOrT0Dst4qnV2dvq?= =?us-ascii?q?fWFbpzusomCSOZta7VzKGfbeUAxORfqC6mZlErUdbZHo++cWLdwi3N+c7hF07D?= =?us-ascii?q?RGzsSIOLChrkvW1UJgaZLbLVfm2zojWYYUPhuzK00sjnHFqn7FG3RTMtCkKdVx?= =?us-ascii?q?gNaSFhHt40hxmWcwZm9OA2boQdaROXMH28KlfwCK9RhED9AEn+Ktfk44rKKyQ/?= =?us-ascii?q?FyOppZgeWqqKkHkdFxJiHUWsdaOyDQLLlrPjteCenBq0QoYh4avLgvRIg1fYKB?= =?us-ascii?q?LVgEMEie0yPyyxXN0UnveNyx26aFOiEW8m9Iz7jdyzhDuxG5ueqFgs3kSL3ZaJ?= =?us-ascii?q?D2XOXOMCc+VzCaXDIyHlyz9VeipfUEoOKSIX0DrVAMfiKSFAkTq7hqrdfKEmDT?= =?us-ascii?q?mexjfJsNhP2BRSDwSSt4m7Q2BiZKs0CMXvUCGRPRb3/7j2pWoBaiKeNU/XL5c7?= =?us-ascii?q?2YwbJYW+4MDYtPdf2WWMDVee1YJzc0ljUZP/u8f9Lcr7YlyF7IS3UWE7XQ/l2E?= =?us-ascii?q?UEGWWuCcxy7sXYgNsIg7oDEn+sjRniBpF6TFJKifpzq0/Y6jjSaYpPfSVm8zbE?= =?us-ascii?q?wpmOgCGnWOwAFcKGEYDNEYoEPtQquHZ0ZWznIpiPlu1gQKeAtpV31hzHxWkOy6?= =?us-ascii?q?Gs1DRl4elHmuT+EebFBrEDMw+leH7RPwYdwHucDTQXRe9rwKSYcGI/ko8pTXOL?= =?us-ascii?q?UOz/Yzxj5mpjI1szmFBVNHkg2F67bQHL57xrBa/mk48fR2UV2OTj7caWXH1JSp?= =?us-ascii?q?C9hOxSZvpnDk0dDYvuZzO7tGv4t5GksFATpqJtDB+jBMSWP02Ay0vxa/BzmeJS?= =?us-ascii?q?wW7ysFJSwCbOZ60/F0vAzOdtnf9UPD/54m/VCmDQeNF6qcxI1ACsav0x6xLyZM?= =?us-ascii?q?b2aFDZdz/9VckNtaXqojZoWkSwTCMQH6DQ+CkzoB+BjjvvKgCs8ckTZWqbklNN?= =?us-ascii?q?y8B9pCNtLexjwthi8QyQ=3D=3D?= X-IPAS-Result: =?us-ascii?q?A2EHBQC79D5Y/wHyM5BdHAEBBAEBCgEBFwEBBAEBCgEBgw0?= =?us-ascii?q?BAQEBAR9YgQO7QicLgXCGBlMBAQEBAQEBAQIBAl8ogjMaDT07AQEBAQEBASMCD?= =?us-ascii?q?SJDAjcUIA4DCQIXKQgIAwEtFR8LBRgEiEwOrwwqAostASSGPodmgRARAWiFFQE?= =?us-ascii?q?Ej2+KaIZLikQCgj+HXYYSApF/VWEXEwwigzccgXtUAYV7gi4BAQE?= Received: from unknown (HELO tarius.tycho.ncsc.mil) ([144.51.242.1]) by emsm-gh1-uea10.nsa.gov with ESMTP; 30 Nov 2016 15:50:06 +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 uAUFmAur008841; Wed, 30 Nov 2016 10:48:36 -0500 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 uAUFm63G142518 for ; Wed, 30 Nov 2016 10:48:06 -0500 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 uAUFm6jv008839 for ; Wed, 30 Nov 2016 10:48:06 -0500 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A1D+AABg8z5Yhxy3hNFdHAEBBAEBCgEBgzgBAQEBAXeBA6csAZAIhBYZEIV5gXxTAQIBAQEBAQITAQEBCgsJCR2GGIFRiG0OrxCLTQEwhj6HZoIKggALgwoFj2+KaIZLikQCgj+NbwKRf4FNEwyDWRELgXsgNAGIKQEBAQ X-IPAS-Result: A1D+AABg8z5Yhxy3hNFdHAEBBAEBCgEBgzgBAQEBAXeBA6csAZAIhBYZEIV5gXxTAQIBAQEBAQITAQEBCgsJCR2GGIFRiG0OrxCLTQEwhj6HZoIKggALgwoFj2+KaIZLikQCgj+NbwKRf4FNEwyDWRELgXsgNAGIKQEBAQ X-IronPort-AV: E=Sophos;i="5.31,574,1473134400"; d="scan'208";a="5852576" Received: from emsm-gh1-uea10.corp.nsa.gov (HELO emsm-gh1-uea10.nsa.gov) ([10.208.41.36]) by goalie.tycho.ncsc.mil with ESMTP; 30 Nov 2016 10:48:04 -0500 IronPort-PHdr: =?us-ascii?q?9a23=3At0wmvBKCnPphWOrY79mcpTZWNBhigK39O0sv0rFi?= =?us-ascii?q?tYgRKvnxwZ3uMQTl6Ol3ixeRBMOAuqkC0Lud7P6ocFdDyK7JiGoFfp1IWk1Nou?= =?us-ascii?q?QttCtkPvS4D1bmJuXhdS0wEZcKflZk+3amLRodQ56mNBXdrXKo8DEdBAj0OxZr?= =?us-ascii?q?KeTpAI7SiNm82/yv95HJbQhFgDSwbal8IRiyognctMgbipZ+J6gszRfEvmFGcP?= =?us-ascii?q?lMy2NyIlKTkRf85sOu85Nm7i9dpfEv+dNeXKvjZ6g3QqBWAzogM2Au+c3krgLD?= =?us-ascii?q?QheV5nsdSWoZjBxFCBXY4R7gX5fxtiz6tvdh2CSfIMb7Q6w4VSik4qx2ThLjlS?= =?us-ascii?q?UJOCMj8GzPisJ+kr9VrhyiqRFk34LYfJuYOOZicq/BYd8XQ3dKUMZLVyxGB4Ox?= =?us-ascii?q?d44BDuoFPelGsoLyp0EBrR+9BQayHuPk1zhFhnz43KIg1+QhEh/J3BY7EtIUrn?= =?us-ascii?q?vbsdX1O70OUeyv0KbIyjDDYupQ1Dzg5obIdRUhruuNXbJ2acfR01cgGB7FjlqK?= =?us-ascii?q?tYzpJS+a1uMIs2Wd8uFuVvqvhnY5pw1tpjWj3Nogh4fXio4P11zJ9it0zJwrKd?= =?us-ascii?q?C7TkNwfMSqH4FKty6AMot7WsMiTH9suCY90rAGvJG6cDUQxJQ92RHQdvyHfJKU?= =?us-ascii?q?4h75SOmRJjJ4iGpkeLK5mRmy7VCtxvPgWsSwylpGsyRInsfWunwQ1BHe5NKLRu?= =?us-ascii?q?V+80u53DaAzQHT6uVKIUAukqrbLoYswr0+l5UJtUTDHTH5mF/tga+MaEor5+io?= =?us-ascii?q?5P77Yrn8upCcMIp0hhnkMqsygsy/Hfg4Mg8WUmiA5+u80Lzj/UvkQLRFlfA2jq?= =?us-ascii?q?nYv4zaJcQcvKK5BRRV3Zw55xawCDemzodQoX5SN19BeRSan6D1KlrOJ7b+Fv75?= =?us-ascii?q?jFOywxlxwPWTHazlD93yJ3zAna2pKbVi4kpfxRAb191T55tITLoGJaSgCQfKqN?= =?us-ascii?q?XEA0phYESPyOH9BYAl2w=3D=3D?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0F3AgBg8z5Yhxy3hNFdHAEBBAEBCgEBF?= =?us-ascii?q?wEBBAEBCgEBgw0BAQEBAXeBA6csAZAIhBYZEIFwhAmBfFMBAQEBAQEBAQIBAhA?= =?us-ascii?q?BAQEKCwkJHTCCMxgPPTsBAQEBAQEBIwINIoE7gVGIbQ6vEItNATCGPodmggqCA?= =?us-ascii?q?AuDCgWPb4pohkuKRAKCP41vApF/gU0TDINZEQuBeyA0AYgpAQEB?= X-IPAS-Result: =?us-ascii?q?A0F3AgBg8z5Yhxy3hNFdHAEBBAEBCgEBFwEBBAEBCgEBgw0?= =?us-ascii?q?BAQEBAXeBA6csAZAIhBYZEIFwhAmBfFMBAQEBAQEBAQIBAhABAQEKCwkJHTCCM?= =?us-ascii?q?xgPPTsBAQEBAQEBIwINIoE7gVGIbQ6vEItNATCGPodmggqCAAuDCgWPb4pohku?= =?us-ascii?q?KRAKCP41vApF/gU0TDINZEQuBeyA0AYgpAQEB?= X-IronPort-AV: E=Sophos;i="5.31,574,1473120000"; d="scan'208";a="1437209" Received: from mx1.redhat.com ([209.132.183.28]) by emsm-gh1-uea10.nsa.gov with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 30 Nov 2016 15:47:59 +0000 Received: from int-mx13.intmail.prod.int.phx2.redhat.com (int-mx13.intmail.prod.int.phx2.redhat.com [10.5.11.26]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id B84B361B8F for ; Wed, 30 Nov 2016 15:47:55 +0000 (UTC) Received: from kashyyk.usersys.redhat.com (dhcp153-144.rdu.redhat.com [10.13.153.144]) by int-mx13.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id uAUFltJF002451; Wed, 30 Nov 2016 10:47:55 -0500 From: Kyle Walker To: selinux@tycho.nsa.gov Subject: [PATCH] seobject: Handle python error returns correctly Date: Wed, 30 Nov 2016 10:47:54 -0500 Message-Id: <1480520874-22034-1-git-send-email-kwalker@redhat.com> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.26 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.39]); Wed, 30 Nov 2016 15:47:55 +0000 (UTC) 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: MIME-Version: 1.0 Errors-To: selinux-bounces@tycho.nsa.gov Sender: "Selinux" X-Virus-Scanned: ClamAV using ClamSMTP After 9406ace8 ("libsemanage: throw exceptions in python rather than return NULL"), calls to libsemanage functions return Python exceptions instead of returning negative error return codes. For systems that did not have the applicable headers installed prior to build, the difference was not seen. Following commit 9792099f ("Properly build the swig exception file even if the headers are missing"), that issue has been resolved and the underlying semanage_fcontext_query_local and semanage_fcontext_query calls now result in an OSError return. This results in the following error when attempting to modify a fcontext defined in the systems base policy. libsemanage.dbase_llist_query: could not query record value (No such file or directory). OSError: No such file or directory To resolve the error, handle the OSError exception, but retain the previous query operation. Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1398427 Signed-off-by: Kyle Walker --- python/semanage/seobject.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/python/semanage/seobject.py b/python/semanage/seobject.py index bb049c0..5f5fdec 100644 --- a/python/semanage/seobject.py +++ b/python/semanage/seobject.py @@ -1953,10 +1953,12 @@ class fcontextRecords(semanageRecords): if not exists: raise ValueError(_("File context for %s is not defined") % target) - (rc, fcontext) = semanage_fcontext_query_local(self.sh, k) - if rc < 0: - (rc, fcontext) = semanage_fcontext_query(self.sh, k) - if rc < 0: + try: + (rc, fcontext) = semanage_fcontext_query_local(self.sh, k) + except OSError: + try: + (rc, fcontext) = semanage_fcontext_query(self.sh, k) + except OSError: raise ValueError(_("Could not query file context for %s") % target) if setype != "<>":