From patchwork Mon Dec 26 21:18:30 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nicolas Iooss X-Patchwork-Id: 9488817 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 E534260860 for ; Mon, 26 Dec 2016 21:19:30 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id D4F641FF60 for ; Mon, 26 Dec 2016 21:19:30 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id C95881FFBD; Mon, 26 Dec 2016 21:19:30 +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 emsm-gh1-uea11.nsa.gov (emsm-gh1-uea11.nsa.gov [8.44.101.9]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 0F3F71FF60 for ; Mon, 26 Dec 2016 21:19:29 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.33,413,1477958400"; d="scan'208";a="1846705" IronPort-PHdr: =?us-ascii?q?9a23=3ATIN4UxB28cNwf1mwa5ioUyQJP3N1i/DPJgcQr6Af?= =?us-ascii?q?oPdwSPr4o8uwAkXT6L1XgUPTWs2DsrQf2rGQ4vqrADBfqb+681k6OKRWUBEEjc?= =?us-ascii?q?hE1ycBO+WiTXPBEfjxciYhF95DXlI2t1uyMExSBdqsLwaK+i764jEdAAjwOhRo?= =?us-ascii?q?LerpBIHSk9631+ev8JHPfglEnjSwbLd8IRmsqQjdqMYajZZtJ6sz1xDEvmZGd+?= =?us-ascii?q?NKyG1yOFmdhQz85sC+/J5i9yRfpfcs/NNeXKv5Yqo1U6VWACwpPG4p6sLrswLD?= =?us-ascii?q?TRaU6XsHTmoWiBtIDBPb4xz8Q5z8rzH1tut52CmdIM32UbU5Uims4qt3VBPljj?= =?us-ascii?q?oMODAj8GHTl8d+kqRVrhy8rBB72oLYfZ2ZOP94c6jAf90VWHBBU95RWSJfH42y?= =?us-ascii?q?YYgBAe0DMuZWt4nwpUYCoBWxCgawC+3g1CRIi2Tq3aA4yektDRvL0BA+E98IrX?= =?us-ascii?q?/arM/1NKAXUe2t1KfIzCnMb/RS2Tjn84jDbxMvofaLXbJrasra1E4iFwXEjlqM?= =?us-ascii?q?rozlOyma1v8Xv2ia6OpgUvmvi3U8pgF0rTWuyd0gio7ThoIa013J8zhyzoUtJd?= =?us-ascii?q?CgVUJ2btGpHIFQui2HLYd6XMwvT39ytCon0rELt4O3cDIIxZg92hLSaPOKf5KG?= =?us-ascii?q?7x/sUuuaPC12i2h/eL2lgha/6U2gyurhWcaqyFtKtS9FksXUtnAKyhzT9tCLSv?= =?us-ascii?q?tj8Uel3jaCzxzT5fteIUA1iKrbMIQtwqIwl5UPsUTDGTX6mEPqg6+Nakoo4O2o?= =?us-ascii?q?6+XjYrn+p5+cMZF7ih3mP6gzlcGyDv40PwgTU2SB5+ix26Pv8VfkTLlSi/05iK?= =?us-ascii?q?jZsJTUJcQBoa65BhdY0p095Ba7Djem1skYnHYeIF1efxKHko7pNE3QL/DjFvq/?= =?us-ascii?q?n1Stnytrx/DBJLHhBI7NIWLZnLfuerZ99VZQyBAvwtBH+5JUFrYBLer9W0/wsN?= =?us-ascii?q?zYCwE2MxavzubpFtpyy4QeWXiVDa+BKqPStl2I6fwzLOmQfoMVvyz9K/c97f70?= =?us-ascii?q?kXA5gUMdfbWu3ZYPdX+3AvFmI0KfYXrwn9sMCnkKsRQkTOzriVyCVjhTa2y0X6?= =?us-ascii?q?0i+jExEJimApvbRoCxnLyB2z+2EYBKZm9cEFCBCmvnd4KBW/gQci2SOdNhniYC?= =?us-ascii?q?Vbe/V48rzQuuuxPiy7p7MurU/TUVtJLi1dhy4e3ejhQy9ThtA8Sc1WGBVWd0kX?= =?us-ascii?q?kSRz813aB/v1Jyxk2F0admn/xSDcZT6O9RUgcmKZ7cyPR3BM7qWg3bZNeJSU2m?= =?us-ascii?q?T86+AT4rVNIxwsQOY155G9q4kh/MwTCmA7gPl7yEHJY06L7T32DtJ8ZhzHbLzK?= =?us-ascii?q?chj0M8TctJKWKmh7V/+hPWB47RkkWVjr2qdKoH3CLX82eD12WOtllCUAFsSaXF?= =?us-ascii?q?QWwfZkzOoNT6/EzCTLiuCak8PwtC08GCKaxKasDzgVVBXvfjN8zUY3itlGeoGR?= =?us-ascii?q?aI2rSMYZLwdGoAxiXdCVYLkxoI8HmcKQc+Az2to2XEDDxhDVjveV/j8fFiqHOn?= =?us-ascii?q?SU851wGKYFNl17qx/R4YnvicS+4P3rIDvScusS94HFGn39LZE9CAvRZufL1AYd?= =?us-ascii?q?Mh51dKzXnZtwJnPpynNKBimkUTcx9xv0Pp2RR3D59Pkc4woHMs0gVyNbqS0Eld?= =?us-ascii?q?eDOAwZDwJrrXJ3H8/R+1b67Wxk/R0MyN+qoU9vQ3tU/jsxq0Fkon6Xln1MNV03?= =?us-ascii?q?SE7JXQEAUSSY7xUlow9xViu7HVfzQy54LO2n1oKqS7rjjC29c1C+Q/0RagY81T?= =?us-ascii?q?MKWaGw/uC8caHdShKPQ2m1i1aRIJJOZS9K8wP8OiafSGw7WmM/x+kzK8imRL+o?= =?us-ascii?q?d90liD9yBkUO7Hw44Fw+2E3guATzr8klahvdzrmYBDfzEeBHawySjjBI5Xaa1/?= =?us-ascii?q?ZoILCWaoI8Kt3NV+gIThW3lC9F6sH1kGwtOmeQKOb1zh2g1dzUAXoX28mSuk1j?= =?us-ascii?q?B0iC8mrq6e3CzI3uTjewEKOnVTRGlji1fsIJS7j8sAUEiucQcpiAOv5VzmyKhD?= =?us-ascii?q?uKR/M27TTF9SfyjxK2FiVrW/tqCebM5I5pIlqj5XUPmgblCBULL9pAEa0yz7FW?= =?us-ascii?q?tE2D87by2quon+nxFikGKSNmtzrH7Ddc5q3xvQ/9vcRfpN3joBQil1kjzXCkS6?= =?us-ascii?q?P9mu4dqYjZHDvf6iV2i5TJ1cbTHrzZ+ctCu8/WBqBBm/k+mtld3hCgU6zzH019?= =?us-ascii?q?1uVSrWthbweI/r2LqmMeh/ZElnGEf869ZmGoF5ioYwh48f2X4BhpiO/noIj2Hz?= =?us-ascii?q?Mc5d2a3gcHoBXzkLw8Ta4AL9wk1sMmqJx57lVnWa2sZhed+6bX4N1yIj6cBFFa?= =?us-ascii?q?eU4KZCnSRrvlqytRjRbuRlnjcB1fsu72YXg/kTtwowyiWQGawdHUhEPS3sjhiI?= =?us-ascii?q?4cqxrKNNaGaoa7iw21J0ncq9A7GavgFcRHH5d486HSBq88V/NEzD0GXp5YHiZN?= =?us-ascii?q?nfc8gTuwaJkxfbkedVMokxmuARhSpgJGL9p2EqxPA1jRxpx5G6s5aIJ39r/K2n?= =?us-ascii?q?Hh5SLif1aN8L+jHxkaZemd6b3461EZVnBjULW57oQOmmED0MqPvnMByOHyckqn?= =?us-ascii?q?eBHrrfHxGQ51t6r37VFJCrLX6XLmEDzdp+XBmdOFBfgAcMUTU/hJE5EgSqy9L9?= =?us-ascii?q?cEdl/D8e/EX1qh1SxeJ0LBnwTn3QpB+2ZTsuTpiQMgZW5BlY50jJKcye8v5zHy?= =?us-ascii?q?ZA8527tgCMJHaXZwFSAmENXUyFB0vuMaOy6tnF6eSYAfC+L/TWa7WUteNeT+uI?= =?us-ascii?q?xY6o0oZ++TaMLN+APmF6D/Ag1EpDXGp5G9/FmzUBSiwXkTjCb8iHqxe94CJ3qt?= =?us-ascii?q?qz8PPxWALg/YGPEaddMc1z+xCqhqeOL/aQizhiJjlG0JMMxGPIyL8E0V4TlS5h?= =?us-ascii?q?aSeiHa4HtS7XQ6LagrVXAAIDayNvKMtI6Lox0RRWOcHFkNz12aR4geQrC1peTl?= =?us-ascii?q?zugMKpZdEQI26nLl/HAFuLNLKcKj3R2s33faS8Sb5QjeVTrRGwvyiUE1P7NDSZ?= =?us-ascii?q?izbpTwyvMf1LjCyDJxxRop+9fQxiCWf9V9LrcQa7P8VpjTIszr07mGjKOXQaMT?= =?us-ascii?q?dib0NHtqeQ4j9AgvVjB2xB6WJoIvKFmyaW6OnYLI0bvuZ1DStvluJV+nI6x6FS?= =?us-ascii?q?7CFeS/x/gDHSocJ2o1G6jumPzSJqXwBBqjlRmoKEo15vOaLB9pZeX3bE+QgC7W?= =?us-ascii?q?SUCxsRoNtkBcfju6dKytjAjKjzMitN88rI/csAAMjZMN6HMH0kMRbzAj7UCwoE?= =?us-ascii?q?QiCtNW7EnUxdl++d9n6Oo5cmrZjsnYYBRaVAVFwpDP8aDFpqHMAaKpdtQjwkia?= =?us-ascii?q?KbjNIP5XemrxnQRMFasY7cW/KXBvXvJjiZgqdYZxsUwbP4KoETOZPh10xkdFZ6?= =?us-ascii?q?gJzAG1DMUtBVvi1hcgg0rV1M8Hh4Um08xUblZR2o4HANCf60hB43hxB5YeQ16j?= =?us-ascii?q?js5VI3KUDLpCs0i0YxntrkjSqWcD7rI6e6RZtWBDbst0gtLpP7RB54bQuskkN+?= =?us-ascii?q?MDfJXLFRj7x7dWB3kgDcv4BPGf1dTaFeZh8f2+2Xbe0y0VtAsiWn2VNH5ezdBJ?= =?us-ascii?q?t4igQqaoCjoGha2w1/bN44PrffJKtTzldNgaKOsDeo1vovzw4ePUoN9n2deDIQ?= =?us-ascii?q?skwSKrYmPzao/vBr6QGahjRDf24MV/w3rf108kM9Ov+NwDj+3L5ZLUC9LeufL7?= =?us-ascii?q?mWu2LYj86HXksw1l8Ul0lC5bV5zN0sc1SVV08y17ucDA4GNdDYKQFSYctS72bc?= =?us-ascii?q?cjqTseXXwJJ1I4W8GvruTeCQqKYemlikExoxH4QQ8sQBGYGh0E/CLcj5MbEF0g?= =?us-ascii?q?8i5AL3JFWCF/REYwiEnysCo82ly593x4ZdLCkHAWphKSW3+qrXpggyjfqHW9c2?= =?us-ascii?q?eGkVXo0FN3IxQ8C6lChZv2laADmwyOIZxxCI7yXgqSTIEDn8c91jae+PZRxyDN?= =?us-ascii?q?G2+DM/87W5iFPM7preIGT6Osh4td/U9eMWvZCHBO1ITbNlqUfTh5FYR2C2U27I?= =?us-ascii?q?CdO1JILwaok2YtzyFna6Ukeyiz0yT8fpINmhNK6Ijh/0RYxMqomUwCgjNdOhFj?= =?us-ascii?q?EZAxpwu+AD5Kd7ZQ0fY5o6YQXluBk/N62/OgiXyc+iQ2CzJjtKV/Nf1/m1Z6RL?= =?us-ascii?q?zyowae+30GEvTpU7z+ar70ECXJQKjxHYxfakYYlRSzP+FWdcewrVoyo1jmZhNv?= =?us-ascii?q?sozuc53hzIrUEWMyqXe+xxdGxEo9Y8CEuJLnpoDGo1XEWTgpfd4gGyxbAS5DFS?= =?us-ascii?q?n8xU0OFft3j+pJDfaiq2WKO3sZXVrzYgbd8+rq1+LIzjI8+GtJfAkTzaV5Tfrx?= =?us-ascii?q?OKXzW7F/VAnNhcOiVYQONHmWs9I8wJpZJB6VYtVsc5P7FPEq8sprG2ZjpkCi4S?= =?us-ascii?q?yTQZWZuZ0jIfmOmxx7zUmwyMf5QlNRwLrI9NgsABUyJsZCMRurOjXZ3Ml2CYUm?= =?us-ascii?q?gLPBsT7QNU6QIai4B/Y/vo4IXNTJ5D0TJWpex7UjfTHJly61T7Un2WgUT/SPi5?= =?us-ascii?q?j+Op3xhdw+7339YHXx5/DUxdx+dImUsyNLF4NbUfvo7Qvj+Pb0P6s3rnyPG6K1?= =?us-ascii?q?lJ1c3Ua1r4AZLftWXmSC0c/mYbSJRTyHHFD5sSjRR2aKIqpFVKL4Cmfkf+5zMk?= =?us-ascii?q?x4R1Ebm3T9qrx1M/oXYAWSiqD8JLC/t6v1LPRD1lf5erpY3rOplIXmBQ+Jydq1?= =?us-ascii?q?JYkEp3MC600ptcJN9T7TESRjRPpi+dvNSqQs1ZxcB2F4MMIst4u3rlAqxEIoWR?= =?us-ascii?q?o3sstrzs0XLZ+jE8sFamxDqoAaO4SfxW/3EGEAUzO2ueslUvD/cr8mrK/VDNqE?= =?us-ascii?q?p7/+FHBrWUjEVxpzh8HpZSBjZJy3+lLlJzTGVYvOVAMqjVddJTQ+Uqbx+1JxM+?= =?us-ascii?q?DeIm31CO/UxsgXf5ZClyuxBG+yzBWgk7TjMZgrHzlj0CssunIyMVS4pUbTU9aC?= =?us-ascii?q?fIMwKbljpNvBlFb0FlRosUDctb9LEDxYtb4M7CRli2KS0fWxxiLA042+JFlUFf?= =?us-ascii?q?qEWYZTzdDQ2wePbNtR14Y9yco9O3I/Ti4ghHkJ/nv/4l+KkZQX2phxGtS8jEr4?= =?us-ascii?q?Dgrt2KqleOdKDgPuKnb3/OUCTAgBKtiboqFJTF4y/TMA9HJJZg0nokfYLtCWjV?= =?us-ascii?q?MhRaP6gbPVZUVbhmadVapeBXf9Vkd7gU9q9tHB2HWgjiGIiorPlYMFnfWyjRLy?= =?us-ascii?q?Kc/eOhu47T66LSSfT4bMyW23nHW753Pot96TTjA7fqypNe9VDr1fdx7U56Ul/G?= =?us-ascii?q?Mz2brNv9OAwL4tWidlH4sZ0tBz/WB41wkHX1zEFaa8UXWzGq8IgfyJ5B9HbwU/?= =?us-ascii?q?x33Vbuv+BJ6rlk7ZU346pzxseqJKfSLvBavlF7AhSOAQVq7JotCnBlR29Neu8R?= =?us-ascii?q?NOvRfaMBgM/zreD4Dbca5wCT++NDc9fHIFvBmsanADGGVRNEhBsBqSIdLgaE1f?= =?us-ascii?q?6KgbV0ScG+pej9wE0t/UOzLhsbzLBp+YeE+7aHpO7NYBvX1rgIQK/qRtn8rr40?= =?us-ascii?q?oUOd+eUklKISemxyewCnEvISVsgTxmf6yqAl0DwjHtjfH736/v5DTHU5kijmm5?= =?us-ascii?q?9jA1UcAukUEqaT/YRCgmc4nPTUNtsScq1Zm2aPExukHqUDyX6t5SuXOnNqggrS?= =?us-ascii?q?0xHqXGO88EP2rTJiQSTS1dvjlVBVVravD0dIQyWpIVN4sC+IPAfwstr3uLg67E?= =?us-ascii?q?YyMmP+r9KBjmqhOLRQH83kP9yROiw0qV0YjZErQdyvw48bE8KnINgN6HF+cufe?= =?us-ascii?q?62SzniBduahHg5TR4tqJ+vTXGnmtlLaapKmMxD9GzHg4oVA/5cq6OvHI+dKKX+?= =?us-ascii?q?yi13wNQCdnpwvBQxm1p6Tfr1APPEyG0FzGmIIUMd5E2nk4zFvp5PA5QNI09gVR?= =?us-ascii?q?CJrPZ+8YqTD0Ijv0zk6VY8grWSmGzztXAlX1HEF6GKg93WL9p8fJmmnQ+lI2XI?= =?us-ascii?q?lwdkrnhRNtA4U+N00t9EAdwjAfHggVdRCbELaoCFzkLYoFT0cMcwiI0aOheqgp?= =?us-ascii?q?wU183K+g6PXUbexmCKoHLuxdgRKWnFhHBpIWtrUTT6l9e19G+q/YvAriC4n7X/?= =?us-ascii?q?j+j3UwKPm1T9tG/sAeqnQt/BywRwe66ZdE9bYUkoqEdqleYZjDpMp89Vto5SYT?= =?us-ascii?q?dixRhxhylwu5XvoApO//4tjavp2o6vytVKo0XOUY6Rw0B2V4j5vtj1EuusnX2P?= =?us-ascii?q?1ASoLJiYT+/gdNI2SJuIrA0BlzN/AOK4S1c7Zk7XkHIDIeJ30WN9qMd/Y8+zNt?= =?us-ascii?q?MCnU51FaHsMMf80XPM7XlgBSlELkQ6xc9svUGl+ZF4d8bdso4HDtyDAo65c8VP?= =?us-ascii?q?jv6COuL5DF815NJ+9DjDlrlN/aq+ga2+DSBzYL4XmZcBV1xiKCy4WTBPbw5+qM?= =?us-ascii?q?1crUW0kAHiEoT4dXPCCC9hC/RuqpiJXpVRuZ6sDtj5I4aEKQQXuxkKMesqlSFe?= =?us-ascii?q?5AiyP73iVRF43ug/KarcCs6WtNuVFdFoZ88wHFEr1FPppnIRT4itWrRk9kCyv6?= =?us-ascii?q?f8HUcAYuuOWIyeoX5uV+NlHxZYkFLRIYxbP67mBVTgh1SLLsuFaWQ/4RbsN8SP?= =?us-ascii?q?zYtnBV9Z5gK6gXMViSuJPqtSxIpEkrDgEmbrEwrzpadlTBnQBOVKb0vaQPig0C?= =?us-ascii?q?XtJjvk9MA22wMnok5zXbTaRVkLWRCPsN/zWRSawOU0NoPjliTBO13JVuZqamnP?= =?us-ascii?q?FGsmNAhSN9o/kq3id4RBu9py3jvaYN1i8h+L2isjUOp2BFRP2EkyjUEVVD0OgK?= =?us-ascii?q?jaAEBnbj91yzen8DYZD24Ll6OMvg9I4h428lbRUkZS0GUvyqCzvsgKOQHoyPrN?= =?us-ascii?q?VciQaPuMrQY7+zIywSO68zyB35QXhyzBTekAxu8GQVXjWq9MUkK5mlOcY52iqo?= =?us-ascii?q?HnDWdFkI4qNOvsr+q1oLTO8tZFN6x2Vj1MmHSTEXSMzJBWk1khAuaX9Yf5Jb9R?= =?us-ascii?q?8aC64ojy6KvqlG/gAUeDDUEoCk+onMg8jFwnw9TdZ2xmLMuKKJnJQq0Gdqm9ls?= =?us-ascii?q?9C6BpGwSd/DEU89rGnXz2Zpfye3jaPWqqe0HVJFmx6qnUP8eKMaj/XG52JN2VU?= =?us-ascii?q?+k3LsSBVy5P/Efxr3DSSeqVXWYWfiXc2iLhzs5Lk/y5RyzI10racdFs0w9PfXG?= =?us-ascii?q?hpJGkQ3uT690TD2KpVDH1GwjLf8adwUutYeiegwKT+0RZ++HKOgs2vI+C1wMb3?= =?us-ascii?q?nXEitwEeO2t0CinJRjMXV6/Ur6efjt8hzhMNaKARYLD4jaroJq9PyhQmKBPmNg?= =?us-ascii?q?zAFsPEZq6ujTDVMxtvVTc5yJh9jfm8x70fIZd/dqKSA9otkTmoZ55omO3saKdh?= =?us-ascii?q?XRzpjpKNHQpfiYBObfwFo2dWFAVboZehj154Q8Pt42QbHTGqFZvRsED6ggXJMh?= =?us-ascii?q?L3vx9L1zLA5rfA7eerC0gsjypu2VfZZVpn7W7lc1LCjCoR0DzuK7QRZ8b5CwiH?= =?us-ascii?q?X4OIowSS5Zr91xFhtmG5NCG8McrwqnBJ6Unbu0i8Sq9kN/uu8KrbDwBe7Q2NS+?= =?us-ascii?q?xYVxUIBQ5VaXMzbJGKlrnkNlg/y8g/fYyJnxCN/tds0fWeh+Q27FdqXGEZulJj?= =?us-ascii?q?KJIML8dFZM86SA37JhThWReCf5UrKBtC2gKvpp+l07yohic+rI0Dwt7q3U2Mfo?= =?us-ascii?q?Z25FuCivt3iJO4VD7FbSH+zRQwpUSeaZ8GZiBaAXaYr09OETMd0t2dSc5whz7C?= =?us-ascii?q?9e0MueOKWhr1XD2kR8dZ7BK0vpwSk5U5EQIBujKUssnXPZqnPFDHRHMMekLcht?= =?us-ascii?q?gNCIDh3i4EV/ln0tZm5fFWryW9iRIXIU1tm9ZAKU7gJLCcgMn+qsdk4lua2+U+?= =?us-ascii?q?5oOo9Kme+yrrUIjc5pKz3TRMhdJyzQKL52PiFNDujUpVkoexgEvKIvVocze5eO?= =?us-ascii?q?PFsNMF2cxiPq0QvCzUr0esSp1KmTPCkW8nRHz7TC0TVXuQm5uPCZjdPnULDYap?= =?us-ascii?q?H2QfHTPDAiVjGASjQ4CVyp9ku8u/oYoPqYJn8SolIObSKRDw4cvbtircXWDm/P?= =?us-ascii?q?me1je4AKhP+aWyDsUiF4krQ9BjpTv0CWX/UDDRXWb2PmgGdEowOtPfhA/Xbkb7?= =?us-ascii?q?2D2qpVQPYaApBSffKFWdfYYu5RJzMpljUfJea9cMbRoKo501LSUGsZCLPE9VOE?= =?us-ascii?q?Q06KWfycwDTrUZ8Sv4gutSoi4sjQkTNvE6TUI7afoCaj8oGigymDo+3eV3ciY0?= =?us-ascii?q?gujeIcBGmO2gJAKGAZC90PvkHiXLKAbV5W1H01keJuxwMMeANrX31s131Wm+y9?= =?us-ascii?q?GtdYSV4Pl26uRucJbFVpAzMx50OK5RfyYdMYs8DJW2Be7qcMSZYaLPQw84nXNq?= =?us-ascii?q?4Qz+oo0T9luyE6rTuSD0lcjgOE9KrQGrhwxrtc6mkk5/t2RF2AQyvDcmjbzYqr?= =?us-ascii?q?E8BPxSBooXDgzMfUu/5iO6ZUp4F+GlcFHTx5Ksrb/T9fTWGnkDe16g22GDWYPS?= =?us-ascii?q?Ix/CcAJStDcP18ieB8rkXmbNHEvGWRvKUloVDjKAGMEaH8jJpKAcbt3B7+aC5M?= =?us-ascii?q?ai6DEsxm7PFXm4BBMusceYGiDgWZfUDFBQWCtnVJrUDn?= X-IPAS-Result: =?us-ascii?q?A2HYBAAsiGFY/wHyM5BdHAEBBAEBCgEBFwEBBAEBCgEBgww?= =?us-ascii?q?BAQEBAR+Ba45ErHgrh1lTAQEBAQEBAQECAQJfKIIzGoIcBgECJBMUIA4DCQEBF?= =?us-ascii?q?ykICAMBLRURDgsFGASITwQBrT06KAKDaIcNhkiIfAIRAWiFFQEEjwaLd4F6jzi?= =?us-ascii?q?KSYYakj9YaB9RhWFxhmEPF4IXAQEB?= Received: from unknown (HELO tarius.tycho.ncsc.mil) ([144.51.242.1]) by emsm-gh1-uea11.nsa.gov with ESMTP; 26 Dec 2016 21:19:27 +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 uBQLJQph018288; Mon, 26 Dec 2016 16:19:26 -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 uBQLIndf146198 for ; Mon, 26 Dec 2016 16:18:49 -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 uBQLIkwu018050 for ; Mon, 26 Dec 2016 16:18:49 -0500 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A1AnAAAsiGFYmCIeaIFdHAEBBAEBCgEBgzcBAQEBAYIKjkSobIwQUwECAQEBAQECEwEBAQEBCAsLBx2FGQYnYlFXGYhwBAGtPTqEEocNhkiIfHyFFQWPBot3gXqPOJBjkj+BXoNmDIJAcYZhgj0BAQE X-IPAS-Result: A1AnAAAsiGFYmCIeaIFdHAEBBAEBCgEBgzcBAQEBAYIKjkSobIwQUwECAQEBAQECEwEBAQEBCAsLBx2FGQYnYlFXGYhwBAGtPTqEEocNhkiIfHyFFQWPBot3gXqPOJBjkj+BXoNmDIJAcYZhgj0BAQE X-IronPort-AV: E=Sophos;i="5.33,413,1477972800"; d="scan'208";a="5890787" 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; 26 Dec 2016 16:18:48 -0500 IronPort-PHdr: =?us-ascii?q?9a23=3AFDkbExFU3HNnu2f3Fhw6N51GYnF86YWxBRYc798d?= =?us-ascii?q?s5kLTJ78r8WwAkXT6L1XgUPTWs2DsrQf2rGQ4vqrADBfqb+681k6OKRWUBEEjc?= =?us-ascii?q?hE1ycBO+WiTXPBEfjxciYhF95DXlI2t1uyMExSBdqsLwaK+i764jEdAAjwOhRo?= =?us-ascii?q?LerpBIHSk9631+ev8JHPfglEnjSwbLd8IRmsqQjdqMYajZZtJ6sz1xDEvmZGd+?= =?us-ascii?q?NKyG1yOFmdhQz85sC+/J5i9yRfpfcs/NNeXKv5Yqo1U6VWACwpPG4p6sLrswLD?= =?us-ascii?q?TRaU6XsHTmoWiBtIDBPb4xz8Q5z8rzH1tut52CmdIM32UbU5Uims4qt3VBPljj?= =?us-ascii?q?oMOjgk+2/Vl8NwlrpWrhK/qRJizYDaY4abO/hwfq7GYd8WWXBMUtpLWiBdHo+x?= =?us-ascii?q?aZYEAeobPeZfqonwv0MArRqiCgmrAOPg0CRIjWL106091OQhChrG1xEnEtIIsX?= =?us-ascii?q?TbsNL1NKMIXuCu1qXIzDLDb/RN2Tfm84XIdx8soP6WUbJ3a8rRxlAiGgXYhVuT?= =?us-ascii?q?sYzoJy6Z2voJvmSB8uZsSe2ih3Qppg1tuDSiyMghhpHHi44I0FzJ9z91zJs2KN?= =?us-ascii?q?C3UkJ2b9GpHZ1NvC+ALYR2WNktQ2RwtSY61LIGvZm7cTAPyJUo2hLTceSHc4+M?= =?us-ascii?q?4hPjSOaePyt3hHJjeLK+nhay7Favxvf7Vsmu31ZGtitFkt/SuXARzxHf99aLR/?= =?us-ascii?q?9n8ku8xTqC2Brf5+9YLUwum6fWJIYtwrsqmZoStUTDEDX2mELzjKKOa0sq5vWm?= =?us-ascii?q?5/j/b7XhvZOTNI15hxn8PaoqgsG/BOs1MwcUU2ic4+S826Xu/Uv4QLpWif02lr?= =?us-ascii?q?PWsIvAKcQaoa65BBRV0p045hmkCDemzdIYkmUZI1JeYh6HiofkOl7ULPD/F/e/?= =?us-ascii?q?jEygkC13yPDeIr3hHpLNI2DYkLj/ebZ96khcyBc8zN1E+5JVCq0OIPL0WkPrst?= =?us-ascii?q?zYFQU2Pxa7w+bgFtUunr8ZDHmCBq6fLbP6rU6D5uVpJfKFIoASpmXTMf8gstjv?= =?us-ascii?q?hng9kERVXK6uxoBfPHa5FfNiKl7fYH3rmcwpFDsa+A0kQ7q52xW5TTdPaiPqDO?= =?us-ascii?q?oH7TYhBdf+AA=3D=3D?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0GYAAAsiGFYmCIeaIFdHAEBBAEBCgEBF?= =?us-ascii?q?wEBBAEBCgEBgwwBAQEBAYIKjkSobIwQUwEBAQEBAQEBAgECEAEBAQEBCAsLBx0?= =?us-ascii?q?wgjMYgh4GJ2JRVxmIcAQBrT06hBKHDYZIiHx8hRUFjwaLd4F6jziQY5I/gV+DZ?= =?us-ascii?q?gyCQHGGYYI9AQEB?= X-IPAS-Result: =?us-ascii?q?A0GYAAAsiGFYmCIeaIFdHAEBBAEBCgEBFwEBBAEBCgEBgww?= =?us-ascii?q?BAQEBAYIKjkSobIwQUwEBAQEBAQEBAgECEAEBAQEBCAsLBx0wgjMYgh4GJ2JRV?= =?us-ascii?q?xmIcAQBrT06hBKHDYZIiHx8hRUFjwaLd4F6jziQY5I/gV+DZgyCQHGGYYI9AQE?= =?us-ascii?q?B?= X-IronPort-AV: E=Sophos;i="5.33,413,1477958400"; d="scan'208";a="2280408" Received: from mx1.polytechnique.org ([129.104.30.34]) by emsm-gh1-uea10.nsa.gov with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 26 Dec 2016 21:18:48 +0000 Received: from localhost.localdomain (private.iosenag.net [31.7.184.34]) (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 ED2E156469F for ; Mon, 26 Dec 2016 22:18:46 +0100 (CET) From: Nicolas Iooss To: selinux@tycho.nsa.gov Subject: [PATCH 3/5] checkpolicy: fix memory leaks in genfscon statements parsing Date: Mon, 26 Dec 2016 22:18:30 +0100 Message-Id: <20161226211832.7165-3-nicolas.iooss@m4x.org> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20161226211832.7165-1-nicolas.iooss@m4x.org> References: <20161226211832.7165-1-nicolas.iooss@m4x.org> X-AV-Checked: ClamAV using ClamSMTP at svoboda.polytechnique.org (Mon Dec 26 22:18:47 2016 +0100 (CET)) X-Org-Mail: nicolas.iooss.2010@polytechnique.org 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 When parsing several genfscon statements for the same filesystem, the content of local variable "fstype" is never freed. Moreover variable "type" is never freed when define_genfs_context_helper() succeeds. Fix these leaks by calling free() appropriately. These leaks have been detected with gcc Address Sanitizer. Signed-off-by: Nicolas Iooss --- checkpolicy/policy_define.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/checkpolicy/policy_define.c b/checkpolicy/policy_define.c index ff902787c2aa..780e325af65d 100644 --- a/checkpolicy/policy_define.c +++ b/checkpolicy/policy_define.c @@ -5288,6 +5288,9 @@ int define_genfs_context_helper(char *fstype, int has_type) else policydbp->genfs = newgenfs; genfs = newgenfs; + } else { + free(fstype); + fstype = NULL; } newc = (ocontext_t *) malloc(sizeof(ocontext_t)); @@ -5345,7 +5348,7 @@ int define_genfs_context_helper(char *fstype, int has_type) (!newc->v.sclass || !c->v.sclass || newc->v.sclass == c->v.sclass)) { yyerror2("duplicate entry for genfs entry (%s, %s)", - fstype, newc->u.name); + genfs->fstype, newc->u.name); goto fail; } len = strlen(newc->u.name); @@ -5359,6 +5362,7 @@ int define_genfs_context_helper(char *fstype, int has_type) p->next = newc; else genfs->head = newc; + free(type); return 0; fail: if (type)