From patchwork Sat May 26 18:42:08 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nicolas Iooss X-Patchwork-Id: 10429207 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 9B134601C7 for ; Sat, 26 May 2018 18:46:25 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 8A1042925D for ; Sat, 26 May 2018 18:46:25 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 7EBED2926C; Sat, 26 May 2018 18:46:25 +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=-5.2 required=2.0 tests=BAYES_00, MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from uhil19pa12.eemsg.mail.mil (uhil19pa12.eemsg.mail.mil [214.24.21.85]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id A145B2925D for ; Sat, 26 May 2018 18:46:24 +0000 (UTC) Received: from emsm-gh1-uea11.ncsc.mil ([214.29.60.3]) by uhil19pa12.eemsg.mail.mil with ESMTP; 26 May 2018 18:46:24 +0000 X-IronPort-AV: E=Sophos;i="5.49,445,1520899200"; d="scan'208";a="13814942" IronPort-PHdr: =?us-ascii?q?9a23=3AQPnQHxVZrdOEhJ0xTb37i7eZSlbV8LGtZVwlr6?= =?us-ascii?q?E/grcLSJyIuqrYYRGDuKdThVPEFb/W9+hDw7KP9fy4AipYud6oizMrSNR0TR?= =?us-ascii?q?gLiMEbzUQLIfWuLgnFFsPsdDEwB89YVVVorDmROElRH9viNRWJ+iXhpTEdFQ?= =?us-ascii?q?/iOgVrO+/7BpDdj9it1+C15pbffxhEiCCybL9uIhi6txndutULioZ+N6g9zQ?= =?us-ascii?q?fErGFVcOpM32NoIlyTnxf45siu+ZNo7jpdtfE8+cNeSKv2Z6s3Q6BWAzQgKG?= =?us-ascii?q?A1+dbktQLfQguV53sTSXsZnxxVCAXY9h76X5Pxsizntuph3SSRIMP7QawoVT?= =?us-ascii?q?mk8qxkRgXoiCMaPDAn9m/ZhNF7gKZCrB68uxBzxojZa5yXOvVjZKPQZdMUS3?= =?us-ascii?q?RPUMhSUCJOAI28YZYXD+cDIOpVoYbyqEcBoxSgHgmhH//vxz1Si3Pqx6A2z/?= =?us-ascii?q?otHAfb1wIgBdIOt3HUoc3tOqcTTe+1y63Iwi/Yb/hL2jn974/Icgs6ofqRWr?= =?us-ascii?q?9wd8vRxlUoFwPBlFqQspbpPzKS1uQKqGib9PFtVeeghm8osQ1xpSKvxsg1h4?= =?us-ascii?q?TPm4kbyUjE+D1kzIs6KtC0Uk52bcO+HJdOuCyWKZF6Tt46T2xruCs20LwLtJ?= =?us-ascii?q?qhcCUKyZkr3QDTZvyaf4WO/xntTvyeIS1ii3JgYL+/ghGy/lW+xeDkTcm01U?= =?us-ascii?q?pKrjJCktnRqnABzxzT5daDSvt65kqhxSyA1xrS6uFZOkA4j7bbKp49zb4wkZ?= =?us-ascii?q?ofq0LDETPtmErqlqOWc0Qk+uyw5+TmZLXpuIOcOpdphgzxPakigMyyDfkiPg?= =?us-ascii?q?QQUGWX5/6w2KD78U38WrpKj/k2kqfDsJDdIMQWvrW5DBFR0oYi7Ra/Ejin3M?= =?us-ascii?q?0DknkAMVJFfg6IgJbyO1zVPPD5Deuwg1SrkDtxwfDGJafuDo/CLnjEjrftZa?= =?us-ascii?q?x95FJEyAov0dBf4IpZCrMGIPL1QEDxqNzYAQU/MwGvwebnD9N91oYEVmKUHq?= =?us-ascii?q?+WLrnSsUSS6uIoOemMa5cfuCzhJPg9+/7ukXg5lEcffamrx5QYdHO4Hu9hI0?= =?us-ascii?q?WfYHrsnMwMEWkOvgojQ+3lk0CCUThPZ3avRa484Ss7CI2+B4fZWo+tmKCB3D?= =?us-ascii?q?u8HpBOaGFGC1SMEXL2eIWeQPoMZjydLdJmkjweT7ehU5Uh1RastADk17VnMv?= =?us-ascii?q?DY+ioCtZLszNJ1/fHclQku9TxoCMSQy3yCQH1xnmMPQT82wL1zrFdjylidy6?= =?us-ascii?q?h4gv1ZFdtV5/9TVAc1K4LcxfRgC9/uQgLBYsuJSFG+T9q7HTE+VMgxzsQSbE?= =?us-ascii?q?Z6HtWtkgrM3zG2A7MPkbyEGoA0+LrG33ftP8Z912rG1K45glkoWMtAL2umib?= =?us-ascii?q?J+9wjIHIPJll2Zl6ezeaQH0i/N732PzW2UvEFXSARwS7nKXWgDZkvKqtT0/k?= =?us-ascii?q?DCQKWtCbQgLwtM0s2CJbFJat3ukFVKXvDjOM7RY2ipgWe/GQ6Ixq+QbIrtY2?= =?us-ascii?q?gSxjjSCFIFkw8N53aLLhIxCTuko27ECzxuD13vaVv28eZisHO7UlM0zwaSYk?= =?us-ascii?q?17yrW65wUYhfOZS/IcxL4EvjkuqylsFlanw93WE8aApxZmfKhEetM97k1H1W?= =?us-ascii?q?XCtwxhJZGgNKZihlkQcgRypUzu0Q97CoNensg2tHkq1hZ9KbqE0FNdcDOVxZ?= =?us-ascii?q?7xNafTKmnu4h+vcbXW10rA0NmI4KcA8+k4q1D5sAGuDEoi/G1t08NJ3HuE+p?= =?us-ascii?q?XKEA0SXIr3UkY28xh6o6/VYjIm6ozOy3JsK660viXF29IzC+sv0gygcMtHMK?= =?us-ascii?q?OYCA/yFNUXB9avKOM2h1ipaQgEMPpO+640OMOmcfSG1bWvPOZhmjKpl35H4I?= =?us-ascii?q?dn3kKL7Sp8RfbC34wZzPGAwguHSzD8gU+lssD2goBEeSgeHnGhxijgBY5RYL?= =?us-ascii?q?ByfIkQBGe1O823x9N+h5/xVH5D7lKjAU0J2NOxcxqIc1P9xRFQ1VgQoXG/gy?= =?us-ascii?q?u4yDh0kzU3oaqFwCPOxOrjeQEcOm5WWGZilk3gIY+uj9AVREKodRQmlAO55U?= =?us-ascii?q?bmwKhWvKd/IHfVQUdTZCX2LH9tUq2rtrqEfcFP9IkksSJNUOSzeVqaUKLyow?= =?us-ascii?q?MG0yP/GGtT3Cg7eCu3upX9gRN6kHiSLHBvrHXHY8F93grf5MfCSv5LxToKXj?= =?us-ascii?q?J4iT7KBlimI9am49uUl5DZsuCxSW2tTJtTfjf3zYmYriu0+XVqAQGjn/C0gt?= =?us-ascii?q?DnDw463jLg2tl0UyXHsRb8bpPt16ukLeJtZlNoC0Pk68pmBoF+lZM9hIkK1n?= =?us-ascii?q?gHgpWY5mYIkWbvMdRbwK7+YmACRTgRz97S+gjl11VpLmiVyILhSnWd3sxhas?= =?us-ascii?q?G0YmwM3CI988dKCKKP4bxKgyR6v124rRjLbvhlhDcdzvku52AGjOEVogYtyT?= =?us-ascii?q?+dAr8KF0lCISPsjwiI78y5rKhPYWaga7yw1E5gktC9ELGNuBtTVW3/epg8AS?= =?us-ascii?q?9w9dlwP0jU0HLt8I3kfsffbc4LvB2OjxjAl/RVKI42lvcSiypnI3zysmA+y+?= =?us-ascii?q?EhixxuwZa6vJOcJmp34K25BwRUNjrvZ8Mc4jvtl7pRnt6K34CzGZVsAjMLXI?= =?us-ascii?q?HyQvKwCDIfrvrnNweUED0ntnebF7vfHQmF50dgs33PEoqkN3WNKHke19ViSw?= =?us-ascii?q?GXJFZDjwAMQDU6gpk5GxiyxMP/a0h2+DYR5l/kqhtL0e9oNgfwXXnBqwuybT?= =?us-ascii?q?c0UpefJgJM7g5e/0fVLdCe7uVrEi5D5ZKtqwiNKm2AZwRUFmEFQFeECE7/Mb?= =?us-ascii?q?W0/tnP7eyYBuu4L/vTbrSDsvBRVveSxZKyyYtq5TiNOd+TPnl5CP073FBPXX?= =?us-ascii?q?djG8TWgz8PUTAYlzrRb86Hoxex4jZ4rsGw8PTsXgLi/paABKVJPtVu4R+2h7?= =?us-ascii?q?2PN+mKhCZ2MTxYzI8DxWfUyLgD214fkzthdza3HrQeqyHAV6XQmrdJAB4dbi?= =?us-ascii?q?N8LspI76Yn0QlKNs/XkNT11qR3jvQtEVdKSUThmt21ZcwNO2y9KFTHBEOROL?= =?us-ascii?q?ScIj3Kwt/4YaWnRr1Ki+VbqR6wtC2HHE/kOzSMiyPmVwuzMe1WiiGUIgBesp?= =?us-ascii?q?mnchlxEWjjUM7mahqjPd91jT03waU0hnTONW4dLThzbVhArriR7SNEmPVwBX?= =?us-ascii?q?ZN7n1/LemLgyyZ9fXXKo4Ksft3BSR5j+Fa4XQ+y7RL9yxEQft1mCXcrtFwv1?= =?us-ascii?q?GmjumPyj1iUBVQsDpLgpyEvVl6M6XD6pZAQWrE/A4K7WiIFRsKv8FqCsfuu6?= =?us-ascii?q?BL0dXPjLj8KC1D89LP5cscA9LbJ96ZP3Y7NhrpAjHUBhMfTTG3LWHfm1BdkP?= =?us-ascii?q?aK+32TsJc1sJzslYENSr9cT1w1CukVCkJ+HNwBIZd7RDUknqCHjMQQ/3qxsA?= =?us-ascii?q?HRRNlGvpDATv+SG+vgKC2HgrZefRsH3bP4IJ8IOY36wUxtd156nIrSG0rKQ9?= =?us-ascii?q?9Mojdtbgkqr0VR6HJ+VHE821r5agOx538eDeO7nhkwigt4fOsi6jPs41YsK1?= =?us-ascii?q?XQuiQwik4xlc/igTCLfz77NL2wUp1OCyroq0gxNYv2TBtvYg2snExrKSzESq?= =?us-ascii?q?lLgLt6b2BrjwHduYBRFvFAUK1Eeh4Qxe2XZvky11RTtDmnz1dd5eTZEZtiiB?= =?us-ascii?q?cqcZm0onJE3AJjdsA6JarRJapO1VVQiaSOvjKy2uA22g8eKF4H8HmOdy4QpE?= =?us-ascii?q?wIKr4mKjKz/uNy7QyCmj1DeHUDVvcxvv1q8UY9NPiawCL7z75PMEaxOPKDL6?= =?us-ascii?q?mBoWjPidaIQk8s1kMPj0RF4bl20cIkc0qIV0AuzKCcGAkINcvCMw5adNBe9H?= =?us-ascii?q?7NciaSqe/N2456P52hFuD0Su+DrLwbgkalHAk1AYsD9sEBH5mq0EHfK8foNq?= =?us-ascii?q?UIxg4s5AvxIlWJFfpJeA+RnDcBvc6/0Id93ZNBKTEFHWV9LSK3667MqQA0hv?= =?us-ascii?q?qOR805bWoEXoQaLHI2Q9e1mzRZvnhaCzm3yO0ZwhCY7zDgviTQECX8b917af?= =?us-ascii?q?ebeBNsCdW2+TEh/KizklPY74vRKHr7Ndt4vN/D8+Qap4yIC/lMV7lyr1/cm5?= =?us-ascii?q?VER3ytS2PPC9i1J5nsZIksatz0Dm26XESmhTwoVcn8INGjI7OUjgHvQIZbrJ?= =?us-ascii?q?OU3Cs/NcOnEDERBQtwrfkZ5K1gfQ0Df4Y7YRnwugQkLaO/OgCY3c61TmaxMz?= =?us-ascii?q?tZVedfwvu+Z7xWySosYeu6yHovTpE60+m3/1QCRIsPjh3Ew/aseZVeWzDpGn?= =?us-ascii?q?NBYwXPuTY5l295O+c82Osw3BPIsVgZMzCKbuNpa3dJv9AiClyMP3p6EG04R0?= =?us-ascii?q?WTjYDb+A6jw6gS/zdBn9ZTyeBFtWLxvoXcYD2yRKyrqJPVsyU7YNkouaJxN5?= =?us-ascii?q?DsIs+BtJPDgzPfV4PcsgubXy6mD/BagMRfIDpEQPlUnmEoIdYJuZBc6Uo3TM?= =?us-ascii?q?s+JKdCCKgtprCrdTprFjQezSkHWIOcxDYCmPuz26PGlheMd5QvKB0EsJNegt?= =?us-ascii?q?QDVy55fCYeq7G/V4XMl26JUW8LIB8N4gRK4QIPjI5wfuT+74rPQ55A0TlWo+?= =?us-ascii?q?h7UiHTDJln60P7Sn2KgVj/UPihj+up3QdJwfLwztUbXQVwBVJbx+lIiksiMK?= =?us-ascii?q?t3JLUIvo7Wrj+Iclv3vGL3x+u8PlZRzdDbekblA4XbrWr8SjMT+XkKSo9V0n?= =?us-ascii?q?3fEo4SkwVhYqYxuFpMOJymelr55zE8xYRpGKe3WNu2yFk7tnYJWT2qE8ZfBO?= =?us-ascii?q?57ql7XXiNqY4yzopX/J5pSWnNQ+IGaq1pBjEViLjO2yZtGJMFJ+TMDQD9PoT?= =?us-ascii?q?CBs9SoU81DxdV6D5kSLddjo339Ar9LOICNo30qvbzi0mTW+z4gv1umxji/Bq?= =?us-ascii?q?G1QvlF8G0ZHwUmO36RqlIzD+c29Gfd7EzNuEhu/+hHHriPkVlxoDFlE5BUGD?= =?us-ascii?q?lGyHClIE5vTHRdt+VaL7rVfNJCT/YuYh+gJgIxGeQg30OX4UF+hW35bDBqtg?= =?us-ascii?q?tG5yDdWBE5VTEOgrfxgzIRt92nNCQBS5JPcDUhdTvKJBydmSBLphZQcUVqV4?= =?us-ascii?q?oeAtZf9LERxZFU8dbaSUawNSEFWwRvNh4i0fVBi0FMrV6VeT3ZDQq0b/bAqA?= =?us-ascii?q?N3fcaWrM6tMvv54B1LioT9sOA3768DXWGpmRWxQdDCqI/xrt+KuVGUdKf/KO?= =?us-ascii?q?28ZWXOTCbXgBC1mLckC4XK/ynPPwpaMZZ6z2EkbYLmCW7RMhRMP7gbKFZDVa?= =?us-ascii?q?BmddVGpfhXZ81+d6YP969tHBWHSQ7xF4G0sPlJNFDTRS/ZLymb9Oywv57T56?= =?us-ascii?q?THSef8fsyM22rHQ6VvM5d87Tn2ALbq0Ylb+kbs2/dt8E16SULcPCCasNThPB?= =?us-ascii?q?4L69W+dkv/pJ0mAynaAJBqkHri3ktAbdYYQzW28JQEz5NU8HDwSeNk3Uj0tO?= =?us-ascii?q?1d7aJk5ZM247Buzse0PrzSJO9fsUJoDRmYHAJq9o8iAGJnXWBefvcRKOvNfa?= =?us-ascii?q?Qelc3ht/r4F6gJ5x2O5+xYadzHKlramsajCzGTVxpEnBsAqTEANAec0eCKm7?= =?us-ascii?q?NsQ8a/uef5wl4t40S5LhMeyLBt/oKE96qTqe/ZcRTe0L8EWrLwScPrtLQsvE?= =?us-ascii?q?GS6uM4m74SYGB1ZBenEOcFXM4H2mjg1bwqzT4rE87bHbLg+ftDWmk8nj3+m5?= =?us-ascii?q?FyAU8WGvISHbqE54hemHk3m/DBPN0Mbq9CgnqPFQKjErIayH6q6jGYL3N5jR?= =?us-ascii?q?zVyBH/X3+z40HqoiNiRivM1djjmFJPVrarHUdSQzapOUhgvTyUPQror9T2tr?= =?us-ascii?q?437EE3LmzkrMiClHalOL5MA8L/I8GTLjcuq1IKlp0xQcav1poBFdq6OtcR/2?= =?us-ascii?q?l0buHC5GOzjy9Bv6BHipLG4s6P5vXYAXmgjqOdq7WXxzBU02M4sk876tChMP?= =?us-ascii?q?HO+tKLTu+w12kLUydwpwvBXhCyqrzBrFAYI0+L31nRmIwMIN5Z2WM01kb85O?= =?us-ascii?q?gsWNgz7hlRFp7cZ/MeojD+IDT0zkyFY90pSime0yBaHlb0EVlkBqc82Hj/vN?= =?us-ascii?q?/SlXvK/V0nWJVwfVT9hRNrF4U4NV4t6F8PzyoMDwcNbwybDLavBUjiNosLS0?= =?us-ascii?q?wDaRWB3LindaY6xklzza215O7Td+NwHawNOehBjgSWhlhUBooWsbECQLJ7Y1?= =?us-ascii?q?JS6KzXqRL+BIX8Q/fmkn4wNfm0Qs9E68AZq2Ut7Rq/Rxa67pdD9bkbgoiSdq?= =?us-ascii?q?FYeZjMoNx870B/6D4KcSxNhgR/jxynXu0HoeDj48LUsJy25eayWqctQP8X9x?= =?us-ascii?q?svB2hkiZv/nkwjq8nN1+hAUo3VlZj/8AdVLn6FpInayAJ8JfMTJYykerhg9n?= =?us-ascii?q?MHJzURJn8VMtqWbuMz4ylzPznJ4FxCGMwMb8sCPMXRgQBUllHpWLZL+8rZHV?= =?us-ascii?q?+YC4Fze9o04Gr3zDA17IYzU+fh6D+wPpDf7FBNMuhdjCVtitLNvuwVzufTCC?= =?us-ascii?q?QN53mWdQR1yDuYy5aRE/bw4fmMyNbMWlMHAC45SYFdKSGG+Qy6W+W1lZLpUh?= =?us-ascii?q?iO5s/0mpI+e1qaRmatk6QdrqZMDelAhz353jdAGID1ifaVvsGi6WRNsF1IDp?= =?us-ascii?q?pz4QfDGKpBIpVxIQ74mdWzRkhgGiv/f9nZdhUquOqRyOYD/eF+N0/laI8AJR?= =?us-ascii?q?IEzbP65mZPQgtoVrH2ok6TXfgNa9t+VPPEsndV5JplK68OP1idp5vqoyxKqF?= =?us-ascii?q?8sAw8pb7kwoSJcdkXUmg1aRbr0sqYaigQASd55pVNMGWWoNW0l+TXHU7hVgb?= =?us-ascii?q?KKCPwR9TWTUrAOU1t2PSxjWR+1349ue7Sxl/BdrmxGhj99oOQt0zF+XBu8vi?= =?us-ascii?q?nsqLgX2TMu/7G4sDsBtGdATuWZlCfIEktMw+gQjacbEHbi8l28YH8MbIfo57?= =?us-ascii?q?lnP8vg/5E743sjeRUjYzEGXeO4BiH+kayIBo2PsMpCixOWucTObLqzLS0MOb?= =?us-ascii?q?QnzRLsWWJx0g/EnBZn6GELWCmv7Mc4JIWhPsYo3iSpGXDBdFYN/qxGrtD8tV?= =?us-ascii?q?sKTOsqc1Nu3n9v0s+dRi0CXMbPAXo6jhA4aWVYd5JO8RgaF602jTuTpqlG+h?= =?us-ascii?q?sbYCzIEoSk5obQgd3I1mcjQttwwGLZuLGFjIsw0HJ5g9N08jKOuHMKeuzcUs?= =?us-ascii?q?9sBGXz14hGxez6ZvWtqfwHSJB9xbSgSvACNM6j9XGx2JVwVU+v3q4eEEahMO?= =?us-ascii?q?8f2rfbVD+oSWiCVuuXc2iMnjA5Mknp6Bm2L103btlFr0s8MuvEm55dmBftUb?= =?us-ascii?q?RuRiWfvVXb1nAsMfsGdwIqv4eqYw4KQ/QSZ+ibPucj2+A+CF0Qb3/JGit2Fu?= =?us-ascii?q?C2sV6xnIRhPXVv/1n6a/z38g/6KNuSBgUEEYnCo55z/Py6QXiBOWVhzB1pJ0?= =?us-ascii?q?R08f3QF1Evue9daZqRmsLQh9tj2+4fa/htKTE9usIUmo978omU3sKKfg3Qw5?= =?us-ascii?q?vxPtzVvOaXA+fez0UrfWFaVKAVYQXr6IUmbZYFXOjIEL9YuwkMLbQrS5wmcW?= =?us-ascii?q?Hq/ed7Kx0gXBTWYeGSg8LtouuQLrpToGTNpgY2LSzbvxQYjP2zShdgR5X2lz?= =?us-ascii?q?P1Op9mFWEJlMFkFhYzRNgHIMgHtQfyRsfMwvvpgsKt+058p+4BuLbxDfaPzt?= =?us-ascii?q?miwoFtRMcBt1GAOzKIVbFi2h8jg+m3mfiG15DwDYXneNdXMYozTm3Eb+rAGY?= =?us-ascii?q?OyYnKLN9nnckFLu7ibzPpiUxqXaSy4F6qLvSGpLrNltEM8zIF1?= X-IPAS-Result: =?us-ascii?q?A2DIBQASqglb/wHyM5BbGwEBAQEDAQEBCQEBAYMZKAOBB?= =?us-ascii?q?FsojFqMDYMIk0+BWBcYEwGGUSE3FQECAQEBAQEBAgFrKEIOAYFkJIJQAwMBA?= =?us-ascii?q?iQTFCAOAwkBAUAICAMBLRURDgsFGASDASqBVwMBAadQM4N0ZINngWiINoFUP?= =?us-ascii?q?4NnhHUBEgFrhQgChzyGEIsWBwKBZ4ZbhhGNESuQX4FXImFxMxowQ4JDgiAXj?= =?us-ascii?q?hlteQEBARQUh0eEIoI4AQE?= Received: from tarius.tycho.ncsc.mil ([144.51.242.1]) by emsm-gh1-uea11.NCSC.MIL with ESMTP; 26 May 2018 18:46:23 +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 w4QIkMpF004463; Sat, 26 May 2018 14:46:22 -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 w4QIioL8032125 for ; Sat, 26 May 2018 14:44:50 -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 w4QIis6l004303 for ; Sat, 26 May 2018 14:44:54 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A1B8AgBSqglbly0YGNZbHQEBBQELAYMZK?= =?us-ascii?q?IFiKIxajA2DCJU+LIZRITcVAQIBAQEBAQECFAEBAQEBBhgGhgAGJ2JRVxmDIiq?= =?us-ascii?q?BVwMBAadRM4N0ZINngWiINoFUP4NnhXSFCAKHPIYQixYHAoFnhluGEY0RK5Bfg?= =?us-ascii?q?VeBdDMaMEOCQ4IgF44ZbXkXFI4hAQE?= X-IPAS-Result: =?us-ascii?q?A1B8AgBSqglbly0YGNZbHQEBBQELAYMZKIFiKIxajA2DCJU?= =?us-ascii?q?+LIZRITcVAQIBAQEBAQECFAEBAQEBBhgGhgAGJ2JRVxmDIiqBVwMBAadRM4N0Z?= =?us-ascii?q?INngWiINoFUP4NnhXSFCAKHPIYQixYHAoFnhluGEY0RK5BfgVeBdDMaMEOCQ4I?= =?us-ascii?q?gF44ZbXkXFI4hAQE?= X-IronPort-AV: E=Sophos;i="5.49,445,1520913600"; d="scan'208";a="286088" Received: from emsm-gh1-uea10.ncsc.mil ([214.29.60.34]) by goalie.tycho.ncsc.mil with ESMTP; 26 May 2018 14:44:54 -0400 IronPort-PHdr: =?us-ascii?q?9a23=3A4ap6nRZhGOgMW89Paho+vt//LSx+4OfEezUN45?= =?us-ascii?q?9isYplN5qZoMS5bnLW6fgltlLVR4KTs6sC17KN9fi4EUU7or+5+EgYd5JNUx?= =?us-ascii?q?JXwe43pCcHRPC/NEvgMfTxZDY7FskRHHVs/nW8LFQHUJ2mPw6arXK99yMdFQ?= =?us-ascii?q?viPgRpOOv1BpTSj8Oq3Oyu5pHfeQpFiCazbL9oMBm6sRjau9ULj4dlNqs/0A?= =?us-ascii?q?bCrGFSe+RRy2NoJFaTkAj568yt4pNt8Dletuw4+cJYXqr0Y6o3TbpDDDQ7KG?= =?us-ascii?q?81/9HktQPCTQSU+HQRVHgdnwdSDAjE6BH6WYrxsjf/u+Fg1iSWIdH6QLYpUj?= =?us-ascii?q?mk8qxlSgLniD0fOjAk8G/ZlMJ+gqFcrh2jqRxy2JLYbJ2POfZiZK7RYc8WSG?= =?us-ascii?q?xcVchRTSxBBYa8YpMXAeoAIelYqI39qEEVrRCjBgesA+TvyiRThnTr2qA61e?= =?us-ascii?q?UhHh3B3AwkBd0Oq27YrNTyNKcVSuC117LFzTDMYvJZwzv975LIch84rPyKQL?= =?us-ascii?q?l+ctLRxFExGw/YgVics5LpMjyP2ugTvGWX9eVtWOK3h2Mkqwx9uDmiy8M2ho?= =?us-ascii?q?TJh48Z0E7I+CVkzIszONa2UlR0YcS+H5tVryyaN5V5QsclQ2xwtik31KQIt5?= =?us-ascii?q?i1cSUU0poq2wLTZv6df4eW/B3jUf2RIThiiHJgYr2/hhKy/VKlyu39Usm4yF?= =?us-ascii?q?dKrixbndnQrn0ByQHf58edRvdj8UqtwyiD2g/J5uxLIU04ja/bJIQgwr40mJ?= =?us-ascii?q?oTq0PDHirulUvrkKGYa1ko9/Cv6+v7e7Xmu4eROYxshAzmN6QjlcO+Df4/Mg?= =?us-ascii?q?gUUGiW4eK81Lz/8k3+RLVFlOY2nrPYsJDdIsQbvbW5DhRO3YYk9ha/CSup38?= =?us-ascii?q?oDnXUdKVJIdx2Gg5LuO1HUL/D0Fe2/jEi0kDd32/DGOaXsAo7TIXjHkbfhe6?= =?us-ascii?q?t96kFHxQovzdFQ+5JUCrYbLPL1QU/+rsbUDhA+MwyqkK7bD4Bm24cfX3+fKr?= =?us-ascii?q?OIO6PV91mT76QgJPffSpUSvWPbKvMi4/f1xV4+nkQGNf2v3JAQbHmjWPVhJF?= =?us-ascii?q?6CSX+wkpEGC2hc7Vl2d/DjlFDXCW0bXH21Ra9pvmthWou7EYfOQJysi7Wd3S?= =?us-ascii?q?C9W4dbfX1CFkvTSCX1fIKAAqYUYXrJZMJslycLE72oSotn0BCq50f2yLtie+?= =?us-ascii?q?zT/CBQ9Zfuz8N86OCbkxYuvSd1AMKQ3yDFT2x9km4SAT5j2qd5rEE=3D?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0B9AgDKqglbly0YGNZbHQEBBQELAYM?= =?us-ascii?q?ZKIFiKIxajA2DCJU+LIZRITcVAQIBAQEBAQECARMBAQEBAQYYBleCNSKCUgY?= =?us-ascii?q?nYlFXGYMiKoFXAwEBp1Ezg3Rkg2eBaIg2gVQ/g2eFdIUIAoc8hhCLFgcCgWe?= =?us-ascii?q?GW4YRjRErkF+BV4F0MxowQ4JDgiAXjhlteRcUjiEBAQ?= X-IPAS-Result: =?us-ascii?q?A0B9AgDKqglbly0YGNZbHQEBBQELAYMZKIFiKIxajA2DC?= =?us-ascii?q?JU+LIZRITcVAQIBAQEBAQECARMBAQEBAQYYBleCNSKCUgYnYlFXGYMiKoFXA?= =?us-ascii?q?wEBp1Ezg3Rkg2eBaIg2gVQ/g2eFdIUIAoc8hhCLFgcCgWeGW4YRjRErkF+BV?= =?us-ascii?q?4F0MxowQ4JDgiAXjhlteRcUjiEBAQ?= X-IronPort-AV: E=Sophos;i="5.49,445,1520899200"; d="scan'208";a="12208086" X-IronPort-Outbreak-Status: No, level 0, Unknown - Unknown Received: from ucol3cpa07.eemsg.mail.mil ([214.24.24.45]) by EMSM-GH1-UEA10.NCSC.MIL with ESMTP; 26 May 2018 18:44:50 +0000 X-EEMSG-check-005: 0 X-EEMSG-check-006: 000-001;e5a0088b-2871-4191-a6a4-c116bfa48d51 Authentication-Results: ucol19pa03.eemsg.mail.mil; dkim=none (message not signed) header.i=none X-EEMSG-check-008: 428366972|UCOL19PA03_EEMSG_MP1.csd.disa.mil X-EEMSG-SBRS: 3.5 X-EEMSG-ORIG-IP: 129.104.30.34 X-EEMSG-check-002: true X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0AiAgCDpwlbhyIeaIFbHAEBAQQBAQoBAYMZggoojFqMDYMIlT4TGAGGUSE4FAECAQEBAQEBAhQBAQEKCwkIKC+FKQYnYlFXGYMiKoFXBAGnWTODdGSDZ4FoiDaBVD+DZ4V0hQgChzyGEIsWBwKBZ4ZbhhGNESuQX4FYgXMzGjBDgkOCIBeOGW15FQEBFI4hAQE X-IPAS-Result: A0AiAgCDpwlbhyIeaIFbHAEBAQQBAQoBAYMZggoojFqMDYMIlT4TGAGGUSE4FAECAQEBAQEBAhQBAQEKCwkIKC+FKQYnYlFXGYMiKoFXBAGnWTODdGSDZ4FoiDaBVD+DZ4V0hQgChzyGEIsWBwKBZ4ZbhhGNESuQX4FYgXMzGjBDgkOCIBeOGW15FQEBFI4hAQE Received: from mx1.polytechnique.org ([129.104.30.34]) by ucol19pa03.eemsg.mail.mil with ESMTP; 26 May 2018 18:44:48 +0000 Received: from localhost.localdomain (abo-251-56-69.avi.modulonet.fr [85.69.56.251]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ssl.polytechnique.org (Postfix) with ESMTPSA id 15D8E56069F for ; Sat, 26 May 2018 20:42:47 +0200 (CEST) X-EEMSG-check-009: 444-444 From: Nicolas Iooss To: selinux@tycho.nsa.gov Date: Sat, 26 May 2018 20:42:08 +0200 Message-Id: <20180526184213.4896-3-nicolas.iooss@m4x.org> X-Mailer: git-send-email 2.17.0 In-Reply-To: <20180526184213.4896-1-nicolas.iooss@m4x.org> References: <20180526184213.4896-1-nicolas.iooss@m4x.org> X-AV-Checked: ClamAV using ClamSMTP at svoboda.polytechnique.org (Sat May 26 20:42:47 2018 +0200 (CEST)) X-Org-Mail: nicolas.iooss.2010@polytechnique.org Subject: [PATCH 2/7] libsepol: do not leak memory if list_prepend fails X-BeenThere: selinux@tycho.nsa.gov X-Mailman-Version: 2.1.21 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 When list_prepend() returns an error, it always means it failed to allocate some memory and does not hold any reference to its argument data. This argument needs to be freed by the caller in order to prevent a memory leak. While reviewing list_prepend() callers, I spend quite some time understanding why typealiases_gather_map() does not need to strdup(key) or free(key) when calling list_prepend(..., key) even though "key" comes from pdb->p_types.table: because typealias_list_destroy() does not free the inserted items. Add a comment to make this clearer in the code. Signed-off-by: Nicolas Iooss --- libsepol/src/module_to_cil.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/libsepol/src/module_to_cil.c b/libsepol/src/module_to_cil.c index c6f1659c84ef..ba8311ea7c75 100644 --- a/libsepol/src/module_to_cil.c +++ b/libsepol/src/module_to_cil.c @@ -298,6 +298,8 @@ static int roles_gather_map(char *key, void *data, void *args) role_node->role = role; rc = list_prepend((struct list *)args, role_node); + if (rc != 0) + free(role_node); return rc; } @@ -344,6 +346,11 @@ static int typealiases_gather_map(char *key, void *data, void *arg) goto exit; } } + /* As typealias_lists[scope_id] does not hold the + * ownership of its items (typealias_list_destroy does + * not free the list items), "key" does not need to be + * strdup'ed before it is inserted in the list. + */ list_prepend(typealias_lists[scope_id], key); } }