From patchwork Sun Jul 1 14:57:39 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nicolas Iooss X-Patchwork-Id: 10498733 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 4FB4160284 for ; Sun, 1 Jul 2018 14:58:51 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 32DF22882D for ; Sun, 1 Jul 2018 14:58:51 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 271092883C; Sun, 1 Jul 2018 14:58:51 +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 UCOL19PA11.eemsg.mail.mil (ucol19pa11.eemsg.mail.mil [214.24.24.84]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 0E24D2882D for ; Sun, 1 Jul 2018 14:58:49 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.51,295,1526342400"; d="scan'208";a="546358313" Received: from emsm-gh1-uea11.ncsc.mil ([214.29.60.3]) by UCOL19PA11.eemsg.mail.mil with ESMTP/TLS/AES256-SHA; 01 Jul 2018 14:58:48 +0000 X-IronPort-AV: E=Sophos;i="5.51,295,1526342400"; d="scan'208";a="15242919" IronPort-PHdr: =?us-ascii?q?9a23=3AVJQyDBYNyMfRz29QGg0Ghzz/LSx+4OfEezUN45?= =?us-ascii?q?9isYplN5qZosi5ZR7h7PlgxGXEQZ/co6odzbaO7ea4ASQp2tWoiDg6aptCVh?= =?us-ascii?q?sI2409vjcLJ4q7M3D9N+PgdCcgHc5PBxdP9nC/NlVJSo6lPwWB6nK94iQPFR?= =?us-ascii?q?rhKAF7Ovr6GpLIj8Swyuu+54Dfbx9HiTahYL5+Ngm6oRnMvcQKnIVuLbo8xA?= =?us-ascii?q?HUqXVSYeRWwm1oJVOXnxni48q74YBu/SdNtf8/7sBMSar1cbg2QrxeFzQmLn?= =?us-ascii?q?s65Nb3uhnZTAuA/WUTX2MLmRdVGQfF7RX6XpDssivms+d2xSeXMdHqQb0yRD?= =?us-ascii?q?+t4b1rSBv1gykZMTA3/nzchshpgK5GvB6tohpyyJPWbo6ILvpzZqPTc80US2?= =?us-ascii?q?RCWchfSjRBD4GhY4YBAOUOIelWoJfmp1YVsRuzBxOhCP/1xzNUmHP727Ax3e?= =?us-ascii?q?Q7EQHB2QwtB8oAsHXIo9XyMKcdS/u1x7TLwzXEaPNWwiz945XPfxAnoPGDQb?= =?us-ascii?q?Vwcc7Lxkk0DQ/Fj1KQqYv+PzOOzekNtmeW7uV6WeKokW4npBh8rz6yzckvko?= =?us-ascii?q?nEnp8Zx1/L+CljwIs5OMe0RFB0bNK6CpdcqjmWOohyT884Xm1luCc3xqcYtZ?= =?us-ascii?q?O7YiQG0pAqyhjCYPKdaYeI+AjsVOOJLDd9g3JqZaywig6p8Uil1u38Ts600E?= =?us-ascii?q?tWriZdktnDqHQN1xvL58ibUPR95Eah2SuU1wzJ6+FEJ040la3AK5E/3rE8jI?= =?us-ascii?q?YTsETfES/2n0X6lqmWeVk/+ue08ejnZ7TmppuEO491jAHxLLgul9SiDek3PQ?= =?us-ascii?q?UCRWiW9fmm2LH98kD1Xq9GguAunqncqp/aJMAbpqCjAw9S14Yu8w2/ACmi0N?= =?us-ascii?q?QZm3kHMV1EdAucgIjuJlHOJuz3Aumkg1m3jDdqx+zJPr3mApnXKHjDi63uca?= =?us-ascii?q?xy605b1go/1cpf6I5MCrEdPPLzXVf8tN7fDh8/KQO03+bnB8971o4FW2KPBa?= =?us-ascii?q?mZMKbIvl+T+uIgPfOMZJQPtDb6Mfgl6ObkjWUlll8FYampwZwXZWi6HvRkOU?= =?us-ascii?q?qWfXnsgswGEWcMvwo+UvfniFOGUT5OaHe9RL885jcnCIK7F4vDQZqtgLOZ1i?= =?us-ascii?q?ehApJWfnxGCkyLEXrwd4SERu0MZz6SIs9miDwJTqWhS4w71R20sg/11aZnJP?= =?us-ascii?q?LO+iIErZLjyMR15+rLmBEq6zN7FNqS02eMT2FomWMFXD42075hrkNj0FuD1r?= =?us-ascii?q?J4g/NAH9xJ+/xJShs6NYLbz+FiFt/yXQTBftGUR1m4RtWmACo8QcgvzN8UZE?= =?us-ascii?q?ZxAdKijgrM3yCyGb8ai6SLBIAo8qLbx3X+Otp9xGzc1KQ6k1YmRc5POnG8ia?= =?us-ascii?q?5k6wjfHYjJnFuFl6yyb6QTwDbN9HufzWqJpExXThZwXr/fXXAefUvbtsz56V?= =?us-ascii?q?nYT7+vErQnKg9BxtSeJaRUcNHpik9GRPj7MtTEf22xg3uwBQqPxr6UbYrqfX?= =?us-ascii?q?kd0zvZCEcalgAc42qGNRI+Byq6pGLeFCJhFVTqY0z28Ol+rGi0Tkg7zg2QaE?= =?us-ascii?q?1hzbW18AYPhfOAU/MTwq4EuCA5pjR6HVa929fWBMSapwd6cqVTf84y4FBd1W?= =?us-ascii?q?3Drwx9JJugL6J8iVECbwR7pUTu1w94Co9Yi8glsGsqzBZuKaKfyF5BdCmX3Z?= =?us-ascii?q?P3Or3KMWTy/wqga63R2lHDytqW/b0P6PsgoVX5oA6pDlYi82lg09RNyXST+4?= =?us-ascii?q?/KDAsMXpLrSUs47QR1p7TAbik6/YPU2mVmMbOovT/ax9IpGOwlxw68cNhFNK?= =?us-ascii?q?OLChTyE9EaBsipM+EqgESmbhMaM+BU6K40Ptmpe+GA2KG1IOZqhCimgnhf4I?= =?us-ascii?q?BhzkKM8DJxSvTV0JkY2PyY0Q6HVjjmgFenrM/3hZhOZSsOEWqn1SjkGIlRa7?= =?us-ascii?q?VpfYYFE2euJNa3xsllip72XX5Y81CiB1Yc18+vYxaSaULy3RFI30QNvXOngT?= =?us-ascii?q?e4zyBzkzwxoKuQxijOw/j8exodIW5GX3digkn2IYevktAaWVKkbw8zlBuq/U?= =?us-ascii?q?z63bRUpLxjL2nPRkdFZy72L2BmUqu0qLWCeNVC54k2viVNV+Swe1eaSqTyox?= =?us-ascii?q?ECySPsA3NexCwndzGtopj5gR16h36BLHZ0tnrVY91/xRfY5NzaSv5cxT4GRC?= =?us-ascii?q?h+iTbNHFi8OMOl/dKOl5fMquq+TX6uVoVPcSn3yoONrC+75WxxAR2jhvyzgc?= =?us-ascii?q?PoEQw70S/9ytlrWj7FrA3kYonq0aS6MP5oflJyCF/69cV6Bpl0kpEsi5EIxX?= =?us-ascii?q?gampKV8GIdkWf0NdVb3bzxbGARSj4Mzd/Y+xPl2FB/IXKS3Y75UW+dwsR5bd?= =?us-ascii?q?mgfmwWwj4979xNCKqM77xLgy11okGjoALSf/d9mCwdyf0w534Gme0JvxAtzi?= =?us-ascii?q?qFCLAIAUZYJTDslwiP792mtKVYfnuvcbyu20pmh9+hCq2CrR9GWHviZ5ciBj?= =?us-ascii?q?F/7t9kMF7Wy33z7ZzkeMPMYt0NuB2UlA3Aj+dLJ54rkPoFmzZnM3rnvXI50+?= =?us-ascii?q?47kQBu3ZaisYiZLWVi4bm0AgBeNjLoZ8Mf4DftgrhCnsyOxYCgAo1hGikXXJ?= =?us-ascii?q?vvVf+oCCgdtenjNwuVDDI8q2ubGLrGEQ+R8khmqWjDE5exN3GYPHMZ18ltRA?= =?us-ascii?q?GBJExDhwAZRDY6n549Fg+038HhdUB55j4f5lHmthtM1uJoNx76UmjBvguobC?= =?us-ascii?q?k7SISHJhpM8g5C/1vVMdCZ7u9rESFX5JuhrBCKKmyefAlIA38GVVGDB1D5JL?= =?us-ascii?q?au/cPA8++aBuWgM/TOfa+CqetEV/eH3ZivyJdp/y6QNsWTOXlvF/M72lBdUn?= =?us-ascii?q?9kAMTWgTMPSzAQlyLWdMOUvguz+ihtosC46vTrVxrl5ZGTBLtKLdVv5xe2jL?= =?us-ascii?q?+YOOGLgyp5LTdY1ogQxX/T0rQfx0AdhD10ezm2D7sAsS/NTKTNmq5YFBMUdy?= =?us-ascii?q?NyNNFV76InxAVMN9TUis/u1r5/iP45EVBFVUbumsuxf8wFP3m9NE/bBEaMLL?= =?us-ascii?q?mJPjzLw87wYaO6UrBfkftbuAaxuTmBFU/vJDODlyPmVxq3K+FDkDmbPABCuI?= =?us-ascii?q?G6ahtiE2fjQ8j4ahKlK9J3iiU2zqMyhnPPL2EcMDx8fFhKrryf9y9Yhe9/G2?= =?us-ascii?q?NZ5Hp/MeaEgzqZ7/XfKpsOrftrBSF0m/hA4HQ9yrpa8idES+dvmCvVsNFuoE?= =?us-ascii?q?qrnfWIyjpiTBVBsC1LhJ6RsUVkJ6rZ6oFKWWzY8xIV8WWQFxMKqsNnCt3vu6?= =?us-ascii?q?FQ0t/PlKbyKDde7d3Z5s4cB8nIKMKdLnUtKx3pGCTbDAEdVz6kKXnfh1BBkP?= =?us-ascii?q?GV7nCVqIY1pYLomJcVSb9bU0c1Fu8ABURjB9wCI5Z3UikikbGFkM4C/WC+ow?= =?us-ascii?q?XJRMVGopDHUeqfAe/xJzaCk7ZLfQEIzq/4LYkILYL72lZiZUR9nITEA0rQR8?= =?us-ascii?q?5Coy17Yg8yvkpN7GB0Tncv1EL9dgOt/HgTGOapkREslAt+YPki9Cz37lgtPF?= =?us-ascii?q?rKviwwkUcqmdr7nT+RbSTxLKasXYBWESb0sVY+Mo/jSQZvcQKyhVBkNCvDR7?= =?us-ascii?q?9Ji7tgcnprhxHauZpOHv5RVqJEYBkNxf2NYPUoy1tcoD29xUBb/evFFYdilA?= =?us-ascii?q?wyfJ63sX1A3wNjbNgoJa3fP6dG0l9QhqeSsSCyzeAx3BUSJ0AT/2OOYCQIol?= =?us-ascii?q?AHNqE6Jyq0+exh8RGNlCdGeGgLUfoqvu9m+1gjO+ue1SLg0r9CKke3N+CFKa?= =?us-ascii?q?OWpXTAn9aSQlwszkMIi1VF/b9u3Mc/ckqUUkcvzKeRFxUJLsfNNABVbspI+3?= =?us-ascii?q?fIZyqOt/vCwY5tNYWnCu/oVfOOtLoTgk+8BgkpG4UM4dgfEZa01UHZLcHnLL?= =?us-ascii?q?kDyRo3/wnkP1SFA+5PeB6SnjcHvtuzzJlp0olBPjsdG3lyMT2r5rbLoQ8nmO?= =?us-ascii?q?GMU8kwYnoBRIQLK2w2V9Ogmy5CpXtAFjm23vgeyAiY4D/2vj7QAyXkb9p/eP?= =?us-ascii?q?eUYgthCMuw+TU+76e2iVnX8pHFJ2/iLNpsp8XB5P8dqZucF/xUSrx9vFvGlI?= =?us-ascii?q?lDW3ymSWjPHsCpJ5LocYkjccT0CmqmUly4kz86U8XxM8yxIaWTnQ7oQoJUsI?= =?us-ascii?q?2a3D89L8+9Ci8RFAtwp+0Z46J8fwIDaYIhYRH0rwQ+K7C/IACA39W0WWmtMz?= =?us-ascii?q?xWQOJEwOWmfbxY1TQsYfG+yHshSJE6wO238U8CRJEKkhHey+ysZ5NbUSTpHH?= =?us-ascii?q?xSZRnPrzIjl2d9LuYy3vs/wBTQvFgSKTyEaOxpaG1Bv9E9H1ySIm57CmsmSF?= =?us-ascii?q?CCk4XP+Ams36od/yFFhdZbzfVFsGTivp/YeD+sXbakqY/WsyU+cdgmoqtxMY?= =?us-ascii?q?P4L8qIrpzemCDQTJ3Xsg2YTSG6DOBWmt5OLyJEWPNIg30qOdQauYpd7ko8Tt?= =?us-ascii?q?8+J7tLCKY2vLCrZz1kDSoczSICUoOA2zsCgvyi1LTGjBeQd48iMAcFsJVEjd?= =?us-ascii?q?sRSSl2YjkRpKW7TYXZi3eESnQXIAcU9QlD/hgAlpJ2fuz/44rFV55Myz9Xo/?= =?us-ascii?q?JoSSTHDJ9o+EXnSmuOm1j3VO2hk/C13QJV1P/szt4bWBtkBEhB2+pWk1AnJK?= =?us-ascii?q?txK6YOoo7AqiWIel/ivGLx1OumI0Fcyc/Td1LmF4fKqHTzUjYC9n0OWY9A1m?= =?us-ascii?q?zQGY4UkwVndKYhvE9ML5y+ekbi+zwkwJxkH7eiVc+xwVYqsXcGRzyxHtpEE+?= =?us-ascii?q?FmsUvbWCZrYpCwspnlPI9SQmBI8p2Ht1hZiFltMzK+yZdEN8FC/yMDXDlVrj?= =?us-ascii?q?WZp9a9VMpD2cpqAJAWOdd/p23xGKVaN5iNu3c2oKDgymfF+zAgt1e33C68G6?= =?us-ascii?q?GkQO5F/WASBwskKn+CpUkoCusj7n3d8kvRslxu+edUGKSPh11roDlhBpBOGi?= =?us-ascii?q?pJ1Xe9IlRpUnZJruVaJ77Jc8FHR/kyYgGvNAIgGfE62EyG4F97kW3/YyNsqg?= =?us-ascii?q?tQ4zrdUBUsVSkJnrftniUTqtm8OT8GUZ1HcCkhYjzeKwKchCBXpgpQZF9sW5?= =?us-ascii?q?AFGNZK4bUb0ZFT/srYRkamMTsFUwB6NgIkzfpfklZOsFmCeS/DEwWnaO3Csg?= =?us-ascii?q?BzfceNts6mNur5/AZAioPjru84678PR3q8mQ2iWdretZPztsWWtkuSc6f1K+?= =?us-ascii?q?i8bmXFTDjIkx+wmaskAIPQ8CXINgpUNYV6yWE4bpf7EW7EIw5KJ6QFKEpHTa?= =?us-ascii?q?p6c8lJovhGZ894f6YE4a1tCQidRhPoA4yvqONJLkjISDTbMiWB9vC/oYPP4r?= =?us-ascii?q?zcU+fgYNeMy2zAQ6JtMZdw8SP7FKvy0Y9C5kr23e9g9kFgRljAPSCBttPhKR?= =?us-ascii?q?4V68S5akvtpJspHSjRAJtqlnri2F1AfdINQyK26JQY1I9Z6HHoROJ3z0jzse?= =?us-ascii?q?lS97165oky+L1m1Nm7KrzTKftAt09rGB+UBh9l9p81GmhwW3hRYvMNKPfWZa?= =?us-ascii?q?kZj8Huq+XsGqwS9hKU+/JWacHGJ0HHlcmzEDecRgJYnA0Zsz4VMhOc1+KZm6?= =?us-ascii?q?9zUculo+z511ks41i4Kx4K1rFt5YGK+qqSvuDXdAfRzaIZWqf2WsPzs64stF?= =?us-ascii?q?2I6f0jjr4OdXR/Yxe7H+gFSs4d2mDgwLgvzSIrFcPDA73g9+BYWnI8nzLvgZ?= =?us-ascii?q?Z9EEsKGvIaGrqL54dennwil+zfKNIWbrhImnyTGh68Dr8C1Xmr5jOTIGl+hx?= =?us-ascii?q?HD0wr9QW2t41Drqi94WzHDz8/5kkpSVLm4G1tdXzazNU9/qjOPMxLitMDrtq?= =?us-ascii?q?Qt8EE2LmvkucqMlGqgIrxYBdHwKceHISYquFIYkoE+Ssao2YABFtq3OM0R/2?= =?us-ascii?q?1mbvvC92OrlDdMrLxGh4rF7MCa4PfXHXi8j62CsbqN2TRYx2MkslE499+vKO?= =?us-ascii?q?vB58CQQ/SvzWYeVT1zuwzbXx66srbbtUwbOVSX0EfXn4wHJslZ0mMk1k765O?= =?us-ascii?q?giTtUz9B9dForZfPMNuzTzODrywVaCbNM6TTGe3CFLHl3pEVl5Fq882HjzvM?= =?us-ascii?q?7Tlnff5UcoRo9ueEzjnxB3CJ84KU014lgN3iUDCRQNaQycDLywCkTqM40EVV?= =?us-ascii?q?QEaRSA27S6Ybk43UlywrOp+e/SYvdxB64TOfZHjg+BhkJXGpQIvq0CWLh8YU?= =?us-ascii?q?NS9LbLpgj+DIjqR/7mlXssOv2yRsBV69sZu2Ej4ga4QBqg8oxD4q0eiJ2Hea?= =?us-ascii?q?9Ie5/MvNpz701//z4AajRNgARjjxO+Se0cq/zs4sPAsJax9+igW6AjR+QR9x?= =?us-ascii?q?gpCGVzlJTwgFU5rtHRyehQUIrViZ7w8ApVOX6FpJ7a0wVgKeoJM4+rfrFg93?= =?us-ascii?q?UBJyQEO30OPd6Wa+Qh7C5sMTXT4UdCAsANZd4DIsrNmB5UhVftWL5O98rXAF?= =?us-ascii?q?mYBJlvd8ow9Wr41Cg18YcgUubn8DK2JI7f4EtLP/5YiCVsic/NpOkSwfrJEi?= =?us-ascii?q?QX5mOZaxdtyCOY15aNE+rw/fmLyNzMVVMJACA2U4lZJDeZ9w2oXOy1m4v1Ug?= =?us-ascii?q?+O7M/8no4+flqKRnOthKQFrrpMEelYhyX02jheEY70iOyRs9qo82ZXrVpHEI?= =?us-ascii?q?By7RLZAqlfOIt0OQjgnMmxWkd8Hjf/eN3Tdhc2veqWx+QM4+Z5N0blZ48UOB?= =?us-ascii?q?EEy7X86XVLSAtiUrj2sUiFXegJfttpVOvErmxJ6YJnM6IAJ0aSpJr2rjpTs1?= =?us-ascii?q?A2BAgpaKMsrjxEaEbBgRdZW6HuuL4PkgEcS8J2uVdQGWKsP2Iz/zTHWrpRjK?= =?us-ascii?q?mQEPwa7C6eT60PU0VtNyNxXQm12JFwdLezmvBHqGxGlDtnoPc2yzxmWAe8uS?= =?us-ascii?q?r0qqMDwTIg4rC4uykftnFeS+WekjvICU9dw/gQiqccEXni40SmYHYfdIvy/K?= =?us-ascii?q?VnJcP4+Ikm53Qwfw4ufzUCXeu6ECHwk6KIDZCTsNJGmhGCpt/CbbmtIigOLr?= =?us-ascii?q?490w7sR2Bh0gjCmxZl6G8LQjSm7N85K4SxIMIlxiuzGWjHb1YB+aJJv9H3tV?= =?us-ascii?q?4MVuc2bklhwGp72MidWiINXNDPG3oyjgU8bGVLao5M6R8bF6kuhTaFpbdG/g?= =?us-ascii?q?ASYDjKFoSl+4/QndrH2HUnStdq3G3WrLWfhpw2yH1lh8907imWtXQQbePYUM?= =?us-ascii?q?hsDWPo24dCz+z+e/WtsucaSItpyLShTOUOMs+99muqwJ9qQFOqxqwCH1qlN+?= =?us-ascii?q?8O3rXbUyKiSW2CQ+SLcnOMki0/MkHo4BmnMFw3ZN1Nr08nPevInoRcmBH5Ub?= =?us-ascii?q?NoWiWQokfWzHctMeMfaw07uYSqdhcUTOEPfeicJOkvwPo4CFcWaX/GAzd2WK?= =?us-ascii?q?eKtgu2kYx6PWhwyVnrauTqtAb9OZ2dHQdXP5Tdq8tX+Pe9QmuacV5nywZpdB?= =?us-ascii?q?1y9uzYE10q8O5bdI2Ktd2Ml5J8y+FTJKQlCjE0ptNGwtEr0oKTysrfNEiJlM?= =?us-ascii?q?ygLMzJovWeH/zUxlgrfWcfSLcCfAfp/NphbOMBd5aINoNw5URaCKU/W5NnMm?= =?us-ascii?q?7w8OdxLQcgF2yZaLe1h5zsoeSGLttRqmTN5109ZCHbp1UYy/OyQAA6J5Cnjn?= =?us-ascii?q?n/OtYxEzRGqdBg?= X-IPAS-Result: =?us-ascii?q?A2CaAwDB6zhb/wHyM5BcHAEBAQQBAQoBAYMfJ4EIShIoj?= =?us-ascii?q?FyjBxSBXxIYFIgFNRcBAgEBAQEBAQIBbCiCNSSCZQI3FCAOAwkCQAgIAwEtF?= =?us-ascii?q?R8LBRgEgn8pgVcDAQGqJIN2ZYNsgS6KQz+IZQESAYV1AodYhTFui08HAoFug?= =?us-ascii?q?2aDFoYojWCSB4FCATZhcTMaMEOCaZBUbXkDFBSNCoI5AQE?= Received: from tarius.tycho.ncsc.mil (HELO tarius.infosec.tycho.ncsc.mil) ([144.51.242.1]) by emsm-gh1-uea11.NCSC.MIL with ESMTP; 01 Jul 2018 14:58:48 +0000 Received: from prometheus.infosec.tycho.ncsc.mil (prometheus.infosec.tycho.ncsc.mil [192.168.25.40]) by tarius.infosec.tycho.ncsc.mil (8.14.4/8.14.4) with ESMTP id w61EvuN1008343; Sun, 1 Jul 2018 10:58:10 -0400 Received: from tarius.infosec.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 w61EvjnP006194 for ; Sun, 1 Jul 2018 10:57:45 -0400 Received: from goalie.tycho.ncsc.mil (goalie.infosec.tycho.ncsc.mil [144.51.242.250]) by tarius.infosec.tycho.ncsc.mil (8.14.4/8.14.4) with ESMTP id w61Evp4g008341 for ; Sun, 1 Jul 2018 10:57:53 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A1AiAwBa6zhbly0bGNZcHgEGDIMfJ4FkK?= =?us-ascii?q?Ixci1yXK4IFLIdkITUXAQIBAQEBAQECFAEBAQEBBhgGiF+DICmBVwMBAZkkkH+?= =?us-ascii?q?DdmWDbIEuiG2BVj+ObgKHWIYfi08HAoFug2aDFoYojWCSB4FDAoIGMxowgyyCT?= =?us-ascii?q?I4IbXkXFI9DAQE?= X-IPAS-Result: =?us-ascii?q?A1AiAwBa6zhbly0bGNZcHgEGDIMfJ4FkKIxci1yXK4IFLId?= =?us-ascii?q?kITUXAQIBAQEBAQECFAEBAQEBBhgGiF+DICmBVwMBAZkkkH+DdmWDbIEuiG2BV?= =?us-ascii?q?j+ObgKHWIYfi08HAoFug2aDFoYojWCSB4FDAoIGMxowgyyCTI4IbXkXFI9DAQE?= X-IronPort-AV: E=Sophos;i="5.51,295,1526356800"; d="scan'208";a="314271" Received: from emsm-gh1-uea10.ncsc.mil ([214.29.60.34]) by goalie.tycho.ncsc.mil with ESMTP; 01 Jul 2018 10:57:51 -0400 IronPort-PHdr: =?us-ascii?q?9a23=3AMMqtAB3ZW72TjK1HsmDT+DRfVm0co7zxezQtwd?= =?us-ascii?q?8Zse0RI/ad9pjvdHbS+e9qxAeQG9mDtbQc06L/iOPJYSQ4+5GPsXQPItRndi?= =?us-ascii?q?QuroEopTEmG9OPEkbhLfTnPGQQFcVGU0J5rTngaRAGUMnxaEfPrXKs8DUcBg?= =?us-ascii?q?vwNRZvJuTyB4Xek9m72/q99pHPYghEniaxba9vJxiqsAvdsdUbj5F/Iagr0B?= =?us-ascii?q?vJpXVIe+VSxWx2IF+Yggjx6MSt8pN96ipco/0u+dJOXqX8ZKQ4UKdXDC86PG?= =?us-ascii?q?Av5c3krgfMQA2S7XYBSGoWkx5IAw/Y7BHmW5r6ryX3uvZh1CScIMb7S60/Vz?= =?us-ascii?q?a/4KdxUBLmlScJOSA3/m/UjcJ9l75XrA67qhBj2YPYfJ2ZOfxjda3dZ9MaQm?= =?us-ascii?q?9BU95JWSxAHoy8aI8PAPAaPe1FrIf9oFwOrQClBQKxA+7vzD5IiWPx3a0+ye?= =?us-ascii?q?shChvK3A0nH9IJq3TUt874NKIdXOG61qXIyi/Db/xP1Dr79YPGcQghrOmSUb?= =?us-ascii?q?5tfsfd01cjGgzfglmOq4HpJTyY2+QVv2WY6+dsT/+jhm4mpg1rvDSixtkghp?= =?us-ascii?q?PNi48T11vK7z92wJwvKt29UEN7YcCrEJ9XtyyCOYR4WM0sTn9mtSsk0LMLpY?= =?us-ascii?q?K3cSkQxJs52RHfbueHc4eS7hLmTumRIDN4iGhgeLK+gxa+6UmgyuviWcmoyF?= =?us-ascii?q?tGsDdJn9bWunwT2BHf8NaLR/ln8kqu2TuDzwXT5ftFIUAwm6rbMZkhwrsom5?= =?us-ascii?q?QOrUrNAzP6lV3qgKKUdUok4PCl5eD7bLj+o5+ROIB1hhv5MqQ0lcyyGeI4Mg?= =?us-ascii?q?kSUGic/eSzzqbj8Vf4QLVNif02ibLZvYvBKsQcu665BRNa3Zg46xqlCjer39?= =?us-ascii?q?sZkWMALFJfdxKLl5LpNE3WIPDkEfe/hEyhkCx1yPDCP73hBIjNL3fYnbf9fb?= =?us-ascii?q?dy905cyA0pwdBZ/JJbEKsNIP30Wk/v55TkCUoiPgi1xfv3IMls3YMZH2SUC+?= =?us-ascii?q?mWN72Bn0WP47cJIuKLYIYO8Bf6LOM+r6rojHQ+nVYGO6iu2oAMQHXkDrJhOU?= =?us-ascii?q?rPMimkucsIDWpf5ll2d+ftklDXCWQJNX+vQ6Ix4C06A4u6DIDFA5qgm6GFwD?= =?us-ascii?q?zkR89rXkxtUXu0OC+4MYiJXuwDLiebI8snlz0ABvCtSI4kgBepsgKyi79qNf?= =?us-ascii?q?Hd9SBQs5X/nMN06OvemVB69TF9A8mHlWDYSWZyk24=3D?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0AkAwAM6zhbly0bGNZcHgEGDIMfJ4F?= =?us-ascii?q?kKIxci1yXK4IFLIdkITUXAQIBAQEBAQECARMBAQEBAQYYBliCNSKFMIMgKYF?= =?us-ascii?q?XAwEBmSOQf4N2ZYNsgS6IbYFWP45uAodYhh+LTwcCgW6DZoMWhiiNYJIHgUM?= =?us-ascii?q?CggYzGjCDLIJMjghteRcUj0MBAQ?= X-IPAS-Result: =?us-ascii?q?A0AkAwAM6zhbly0bGNZcHgEGDIMfJ4FkKIxci1yXK4IFL?= =?us-ascii?q?IdkITUXAQIBAQEBAQECARMBAQEBAQYYBliCNSKFMIMgKYFXAwEBmSOQf4N2Z?= =?us-ascii?q?YNsgS6IbYFWP45uAodYhh+LTwcCgW6DZoMWhiiNYJIHgUMCggYzGjCDLIJMj?= =?us-ascii?q?ghteRcUj0MBAQ?= X-IronPort-AV: E=Sophos;i="5.51,295,1526342400"; d="scan'208";a="13385963" X-IronPort-Outbreak-Status: No, level 0, Unknown - Unknown Received: from updc3cpa06.eemsg.mail.mil ([214.24.27.45]) by EMSM-GH1-UEA10.NCSC.MIL with ESMTP; 01 Jul 2018 14:57:50 +0000 X-EEMSG-check-005: 0 X-EEMSG-check-006: 000-001;27a47f16-864f-4391-9a78-075357218191 Received: from localhost.localdomain (localhost [127.0.0.1]) by UPDCF3IC15.oob.disa.mil (Postfix) with SMTP id 41JYQj48jgz3GD9q for ; Sun, 1 Jul 2018 14:57:49 +0000 (UTC) Received: from UPDC3CPA08_EEMSG_MP24.eemsg.mil (unknown [192.168.18.19]) by UPDCF3IC15.oob.disa.mil (Postfix) with ESMTP id 41JYQh35p7z3GD9p for ; Sun, 1 Jul 2018 14:57:48 +0000 (UTC) Authentication-Results: UPDC3CPA08.eemsg.mail.mil; dkim=none (message not signed) header.i=none X-EEMSG-check-008: 26059573|UPDC3CPA08_EEMSG_MP24.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: A0BuAwDN6jhbhyIeaIFcH4MxggsojFyLXJcrggUTGAGHZCE1FwECAQEBAQEBAhQBAQEKCwkIKS+IB4MgKYFXBAGqIoN2ZYNsgS6IbYFWP45uAodYhh+LTwcCgW6DZoMWhiiNYJIHgUMCggYzGjCDLJBUbXkVAQEUj0MBAQ X-IPAS-Result: A0BuAwDN6jhbhyIeaIFcH4MxggsojFyLXJcrggUTGAGHZCE1FwECAQEBAQEBAhQBAQEKCwkIKS+IB4MgKYFXBAGqIoN2ZYNsgS6IbYFWP45uAodYhh+LTwcCgW6DZoMWhiiNYJIHgUMCggYzGjCDLJBUbXkVAQEUj0MBAQ Received: from mx1.polytechnique.org ([129.104.30.34]) by UPDC3CPA08.eemsg.mail.mil with ESMTP; 01 Jul 2018 14:57:47 +0000 Received: from localhost.localdomain (89-156-252-9.rev.numericable.fr [89.156.252.9]) (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 A6D11561259 for ; Sun, 1 Jul 2018 16:57:44 +0200 (CEST) X-EEMSG-check-009: 444-444 From: Nicolas Iooss To: selinux@tycho.nsa.gov Date: Sun, 1 Jul 2018 16:57:39 +0200 Message-Id: <20180701145739.23309-1-nicolas.iooss@m4x.org> X-Mailer: git-send-email 2.17.1 X-AV-Checked: ClamAV using ClamSMTP at svoboda.polytechnique.org (Sun Jul 1 16:57:44 2018 +0200 (CEST)) X-Org-Mail: nicolas.iooss.2010@polytechnique.org Subject: [PATCH 1/1] mcstrans: fix memory leaks reported by clang's static analyzer 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 There are many memory leaks in mcstrans. Clean them up in order to reduce the noise in clang's static analyzer report. Some are remaining, because they are more complex to fix. Signed-off-by: Nicolas Iooss --- mcstrans/src/mcstrans.c | 68 +++++++++++++++++++++++++++++++++-------- 1 file changed, 56 insertions(+), 12 deletions(-) diff --git a/mcstrans/src/mcstrans.c b/mcstrans/src/mcstrans.c index 00fb80856da7..96bdbdff7d8b 100644 --- a/mcstrans/src/mcstrans.c +++ b/mcstrans/src/mcstrans.c @@ -708,6 +708,7 @@ append(affix_t **affixes, const char *val) { err: log_error("allocation error %s", strerror(errno)); + free(affix); return -1; } @@ -1517,8 +1518,10 @@ trans_context(const security_context_t incon, security_context_t *rcon) { } else { trans = compute_trans_from_raw(range, domain); if (trans) - if (add_cache(domain, range, trans) < 0) + if (add_cache(domain, range, trans) < 0) { + free(range); return -1; + } } if (lrange && urange) { @@ -1526,12 +1529,15 @@ trans_context(const security_context_t incon, security_context_t *rcon) { if (! ltrans) { ltrans = compute_trans_from_raw(lrange, domain); if (ltrans) { - if (add_cache(domain, lrange, ltrans) < 0) + if (add_cache(domain, lrange, ltrans) < 0) { + free(range); return -1; + } } else { ltrans = strdup(lrange); if (! ltrans) { log_error("strdup failed %s", strerror(errno)); + free(range); return -1; } } @@ -1541,25 +1547,36 @@ trans_context(const security_context_t incon, security_context_t *rcon) { if (! utrans) { utrans = compute_trans_from_raw(urange, domain); if (utrans) { - if (add_cache(domain, urange, utrans) < 0) + if (add_cache(domain, urange, utrans) < 0) { + free(ltrans); + free(range); return -1; + } } else { utrans = strdup(urange); if (! utrans) { log_error("strdup failed %s", strerror(errno)); - return -1; - } - } + free(ltrans); + free(range); + return -1; + } + } } if (strcmp(ltrans, utrans) == 0) { if (asprintf(&trans, "%s", ltrans) < 0) { log_error("asprintf failed %s", strerror(errno)); + free(utrans); + free(ltrans); + free(range); return -1; } } else { if (asprintf(&trans, "%s-%s", ltrans, utrans) < 0) { log_error("asprintf failed %s", strerror(errno)); + free(utrans); + free(ltrans); + free(range); return -1; } } @@ -1629,13 +1646,17 @@ untrans_context(const security_context_t incon, security_context_t *rcon) { if (!canonical) { canonical = compute_trans_from_raw(raw, domain); if (canonical && strcmp(canonical, range)) - if (add_cache(domain, raw, canonical) < 0) + if (add_cache(domain, raw, canonical) < 0) { + free(range); return -1; + } } if (canonical) free(canonical); - if (add_cache(domain, raw, range) < 0) + if (add_cache(domain, raw, range) < 0) { + free(range); return -1; + } } else { log_debug("untrans_context unable to compute raw context %s\n", range); } @@ -1650,17 +1671,24 @@ untrans_context(const security_context_t incon, security_context_t *rcon) { if (!canonical) { canonical = compute_trans_from_raw(lraw, domain); if (canonical) - if (add_cache(domain, lraw, canonical) < 0) + if (add_cache(domain, lraw, canonical) < 0) { + free(lraw); + free(range); return -1; + } } if (canonical) free(canonical); - if (add_cache(domain, lraw, lrange) < 0) + if (add_cache(domain, lraw, lrange) < 0) { + free(lraw); + free(range); return -1; + } } else { lraw = strdup(lrange); if (! lraw) { log_error("strdup failed %s", strerror(errno)); + free(range); return -1; } } @@ -1674,17 +1702,27 @@ untrans_context(const security_context_t incon, security_context_t *rcon) { if (!canonical) { canonical = compute_trans_from_raw(uraw, domain); if (canonical) - if (add_cache(domain, uraw, canonical) < 0) + if (add_cache(domain, uraw, canonical) < 0) { + free(uraw); + free(lraw); + free(range); return -1; } + } if (canonical) free(canonical); - if (add_cache(domain, uraw, urange) < 0) + if (add_cache(domain, uraw, urange) < 0) { + free(uraw); + free(lraw); + free(range); return -1; + } } else { uraw = strdup(urange); if (! uraw) { log_error("strdup failed %s", strerror(errno)); + free(lraw); + free(range); return -1; } } @@ -1694,11 +1732,17 @@ untrans_context(const security_context_t incon, security_context_t *rcon) { if (strcmp(lraw, uraw) == 0) { if (asprintf(&raw, "%s", lraw) < 0) { log_error("asprintf failed %s", strerror(errno)); + free(uraw); + free(lraw); + free(range); return -1; } } else { if (asprintf(&raw, "%s-%s", lraw, uraw) < 0) { log_error("asprintf failed %s", strerror(errno)); + free(uraw); + free(lraw); + free(range); return -1; } }