From patchwork Mon Dec 26 21:18:28 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nicolas Iooss X-Patchwork-Id: 9488815 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 A3795601D2 for ; Mon, 26 Dec 2016 21:18:56 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 866231FF60 for ; Mon, 26 Dec 2016 21:18:56 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 66F691FFBD; Mon, 26 Dec 2016 21:18:56 +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]) (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 8171F1FF60 for ; Mon, 26 Dec 2016 21:18:55 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.33,413,1477958400"; d="scan'208";a="1846690" IronPort-PHdr: =?us-ascii?q?9a23=3AVHNSqRfhXdkffjMWke6GDhZalGMj4u6mDksu8pMi?= =?us-ascii?q?zoh2WeGdxcq5YBeN2/xhgRfzUJnB7Loc0qyN4vumCDZLuMre+Fk5M7V0Hycfjs?= =?us-ascii?q?sXmwFySOWkMmbcaMDQUiohAc5ZX0Vk9XzoeWJcGcL5ekGA6ibqtW1aFRrwLxd6?= =?us-ascii?q?KfroEYDOkcu3y/qy+5rOaAlUmTaxe71/IRG4oAnLssQan4RuJrs+xxbLv3BFZ/?= =?us-ascii?q?lYyWR0KFyJgh3y/N2w/Jlt8yRRv/Iu6ctNWrjkcqo7ULJVEi0oP3g668P3uxbD?= =?us-ascii?q?SxCP5mYHXWUNjhVIGQnF4wrkUZr3ryD3q/By2CiePc3xULA0RTGv5LplRRP0lC?= =?us-ascii?q?sKMSMy/2/Nisx0kalVvhSvqRJiyILQeY2ZKeZycqbbcNgHR2ROQ9xRWjRBDI2i?= =?us-ascii?q?coUBAekPM+FAr4T/ulcDoxSxChWjCuzx0T9FnWP20K8g3ug9CwzKwBIsEtQTu3?= =?us-ascii?q?rUttX1M6ISXPitwqnJ0TrDaPdW1i3m6IPVcR4hpvaMXalrccHMzkQvEQLFgUmX?= =?us-ascii?q?qYzhJTyVzf4Bs2mc7+pnTuKvkHUqqwR+rzmg3MssjZPJho0Mx13C6C53w541KM?= =?us-ascii?q?WlREN0btOoCptduzyAO4doTc4uXXtktDsixrAIpJK3ZioHxI46yxPcZPGLaYaF?= =?us-ascii?q?7x3lWe2MOzl3nmhld6i6hxuq9EigzfDzWdes3VZRqypFjsHMtncQ1xzP8sSHSu?= =?us-ascii?q?Vy/kOm2TuXywDc8PtEIUEplarAMZIh3r4xmYYTsUTEBCP2nln5jLSKeUk+/+io?= =?us-ascii?q?6uDnbq3npp+aKYB0lhnzPrkhl8GwG+g1MhUCU3KF9emzyrHv51D1TK1PjvIsk6?= =?us-ascii?q?nZtJ7aJd4cpq68GwJVyZgs6xK+DzegzdQZkmALI0lCeBKaiYjmJ0/BIOvjAPej?= =?us-ascii?q?g1WjjDdrx/fcMr3nGZXCNGLPkLjmfbZj80Jc0hY8zchD55JIDbEMOPzyWk71tN?= =?us-ascii?q?zdEBA5KRe5w+j5B9pg0YMeQ3iAAreDMKPVs1+H+P4gI/WWaI8Sojb9JOAv5+Ty?= =?us-ascii?q?gn8hhV8dYa6p0IMKZ3+kG/RmJEOZYWbxjtoaD2cFoBA+TO3riV2FVz5ffXCyUL?= =?us-ascii?q?wg5jsjEoKpEZ/DRpyxgLyGxCq0A4FWaXpcCl2XDXjocICEVOsWZyKJPs9tiDoE?= =?us-ascii?q?Wqa9S4U5zxGhqBf6y6Z7LurT4iAZtZPi1N9z5+DIkBEy8SV4D8Wb022XSWF7hH?= =?us-ascii?q?kIRzw33KBhv0Nx0FGD3rZkg/ZAD9xc++tJUhsmNZ7b1+F1FcjyVRjbfteIU1ar?= =?us-ascii?q?Wc2mDisrTtIw2N8Oe0J9FM++gR/dxSaqBKUVl7OTDpwu7q3cx2TxJ9p6y3ve2q?= =?us-ascii?q?khlUMpQs1TOm2nna5y7A3TB5bIk0mAjKare78c0DTK9GeZwmqEpFtYXxJoUaXZ?= =?us-ascii?q?QXAfYVPbrdfj6UPBSL+uFK8qMghbxs6BLatKd8fljVJcRPfsIN7eeX6+m3+sBR?= =?us-ascii?q?aUwbOBdJDldHgH3CXcFkcEiRse8myaOgg7HCuhpHjeDDN2H1L1f0zs6fV+qG+8?= =?us-ascii?q?TkIszwGFcUlh176y+hMOgfycVu8T3rUBuCg7sTl0G0y9393OAdqauwVhZLlcYc?= =?us-ascii?q?864FpfzmLZuRZ9Ppu7L6B+nVMeaAJ3v0Tg1hVyEIpAl9ImrHU0wwpuMaiYyk9O?= =?us-ascii?q?dyuE3ZDsPb3aMmfz8wqra67KxF7eys2W97wR6PsmsVXspxypFk84/3VgydlV3G?= =?us-ascii?q?OW5o/WAwoKTZLxTkE3+gBmp77HfyY95pnb1Xl3PKaotT/C3s4mC/E+yha8Zdtf?= =?us-ascii?q?Nr2LFBPqGc0AG8euMPAqm0Subh8cOuBS9ao0P8e4ePudw6OkJvhvnCihjWhd54?= =?us-ascii?q?B9yE2M/TJmSuHUx5YF3+2Y3gyfWjfijVeurtz3mYdeZT0IAmW/yS/kBIheZqBp?= =?us-ascii?q?eYYLCGGuLNetxtV5nZLtXGRY9FG7DVMcxMCpYQaSb0D63QBI0UQXoGenmTehwz?= =?us-ascii?q?xvjT4pqquf3CrTw+XtbxcHIXZLRGhkjVftPYe0lMoWXE62YAg1jBGl/1r1x7BH?= =?us-ascii?q?pKRjKGneWV1Ify/yL2FmTKSwrKaNY8lB6Z4zqiVXTfizYUuARr76uRsa3DvpH3?= =?us-ascii?q?FCyzAjazGqppL5kgRiiG2HMXZzqGDVdttqyRjE49zcQeJR3j0ARCRjjDnbGl68?= =?us-ascii?q?P9618tmOkZfMrPy+XXq7VpJPaSnr0Z+AtCyj6G1vBR2zhu68mtv8HAgkzyD709?= =?us-ascii?q?1qWjvSrBrmZInkybi6O/p9fkZ0HF/899Z6GoZmn4szmp4Q32Mai46W/XUZl2fz?= =?us-ascii?q?KtNb1rzibHYXQj4L2dHV6hD/2EJ/NnKJ2575VnKFz8t/Ydm1f3gb2jw7789XCK?= =?us-ascii?q?eY9rpEkjVpolCgtwLefeB9nisByfsp8HMam/sGuBcpziiGHr8SHFVYPCz1mxSG?= =?us-ascii?q?9d++qr9bZGG1cbi/zEB+h8yuDKmeogFAX3b0Yo0iEjJt4chkP1LM1XLy5pvieN?= =?us-ascii?q?bOcdIZrgeUnAvYj+hJNJIxkeIHhTJ9NmLguX0q1fY7ggZo3ZGmooeHMX5g/L+i?= =?us-ascii?q?AhFGLD31fNkf+irqjaZDhMaZw56gHptmGjURU5vnU+ikEDQMuvT7LwyOCiEzqm?= =?us-ascii?q?+HGbrDGg+S8ElmoGjJE5C3MHGXIWIUzdt8SxaAI0xfmhobXC0gnp4+FACl2tDu?= =?us-ascii?q?cFtj6jAW/F74pQNGyvh0OBnnTmffuACoZy8xSJeFKBpW6h9N51vJMcOE9O1+BC?= =?us-ascii?q?dY8YO9rAyWNmOUfRxIAn8TVkyCGV/jIqGk5cPc/OiAGuq+M/zObK2UqeBEWfaE?= =?us-ascii?q?35ev3ZFi/zaLNsSCJWNtAOE+2kZZWnB5AcvZkS0VSyMLjyLNc9KbpBCk9y1xtM?= =?us-ascii?q?Cw6uzrWBr06IuBCrtSK85v+wy4gaeCMe6fniB5JipZ1pwWwX/E0r8f3EQdiyt2?= =?us-ascii?q?bTmiDawAtTLRTKLXgqJXFwAUZDhtO8tO7qI8wg5NNNXaitzryLF3kOQ5C1BfVV?= =?us-ascii?q?zugsupf9AFI3mhNFPbA0aGLK+JKibMz8HzYKO8UqFQjP5Oux2rpzmUD1XvPi+d?= =?us-ascii?q?mDntVhCvN/xMjS6AMRNCuIC9aAttCXP5QNPocBK7LMR3jTowwbEugXPKL2EcOy?= =?us-ascii?q?Bmc0xRtr2Q8T9YgvJnFmxa9HVlM/OLmymH4OnDMZsWquFkAjpumOJV/ns60KFZ?= =?us-ascii?q?7CdaS/xpgCHStMJho0m6kumTzTpqSAFBqjdEhIKMu0VvIrjW+YdbVnbF5h0N63?= =?us-ascii?q?+cCxMQp9tqEtfvobxfysDTlKLvLzdP68jb/cQGCMjKNs2KK30hMQL3Fz7SCQsK?= =?us-ascii?q?Vz+rNWXEiExan/Ce7HqVroI1qpL0gpoBVqdbVEApFvMdEkllANsCIJJtUjM+lr?= =?us-ascii?q?6ajdAH5XyloxnLQ8VVoJPHW+mODvXoLTaWkaNLZwAUwb/iK4QcKJH70VR4alZm?= =?us-ascii?q?hITKB1bQXddVry1ibg40pFtC/WN7Tm001ULlZB2i4GMPFf60mR42jxVxbf4r9D?= =?us-ascii?q?jy/1c9PkDKqzcokEkthdXlhiiccD/3LKesQ45WDzT7t00vPZPnWQZ0bRa/nUt8?= =?us-ascii?q?NDjaQbJRiqFvdWFviADHvptOFuRQTapeYB8f3fuXfekn0UxAqiW7wk9K/e3FBo?= =?us-ascii?q?V4mwsuapOsrHVA2xl/bNEvI6zQP6lJzllKiqKIoCCoyvg7wBUCKEYV7GOSZCkI?= =?us-ascii?q?tVQSNrY4PCqn4PZj6RaelDtDY2UDTPsqouh3+UM6NeSA1zjg3KBDK0yrMeyQMb?= =?us-ascii?q?+ZsXDalcGUWlMwyl8Il05d8Ldr1scjdUyUWF0xw7uVFhQELtDNJh9Pb8pV7nTT?= =?us-ascii?q?ejyOserVy5JvI4q9DvzoTfOJtKsMn02rBhgpH4UR4cQaBZSjylvYLd3gLL8L0h?= =?us-ascii?q?Ui+hjkJEifDPRIZBKKkC0Lo8ehw59rxYNdPC0SAX1hMSWr4bbavhIlgOGdU9gs?= =?us-ascii?q?bXcaRJELNmwtVc2hgSFZvGlADCOt3e4DzAiC8jn8qT7KDDXlc9pjY/SUZBNrCN?= =?us-ascii?q?2s/zUw7bS2g0bN8prCP2H6KchiutjX5OMUvZaIFe5bTaJnvEfah4lYQGeqXnXV?= =?us-ascii?q?HtGpIpj8cY4sbcb7CnyiSFywlyo1T9vtPNaqNqWIhQboRZxKv4md3TEjMtSwFj?= =?us-ascii?q?4YGxdtve0D47h8ZQIbaZohfRHorxg+N7C4IAqAydWhXWKtKTpQT/lCwuS3fKBY?= =?us-ascii?q?zy0pbuCm0nQgVY06w/Ox8UETWJEAlgveyuq7Z4lCTSjzHWRQewbVpSs5jWdhMP?= =?us-ascii?q?oywuckzRPHtlkcKyyEePZvaGNao9E2HUmSLmluCmokW1+cipLO4hKt37AX+Ctd?= =?us-ascii?q?g9ZU0O1evXfjv5/eYCijV7expZXTrSUgccAso7dtPoz7PsuGqJTekyTFQ5nUsw?= =?us-ascii?q?2KTDC1GOJfmtlQJiJYR/9Ilns+NMMduIpO80wxWt4wJ7xSEqUsoK6laSZ8By4I?= =?us-ascii?q?0SAZT5+A3CAFguqkwLTViBGQfY84PxMZrpVNnMEdUzVsbSMEpK6vTYLWl3WLSm?= =?us-ascii?q?ITOgcc8RxM5B4clo93Zu3l75fITJ5Iyz5Svf10VzDGGYR2+FTgS2GZm174RO+m?= =?us-ascii?q?k+yz0gJY1Ojs3cUDWB5jFUhdwP5bllEuKLF2N6YQvonKsjuTdU3ipWzj1fGoKU?= =?us-ascii?q?VWx8DPa1L4C4/FunbmXS0H5X0YX4lPx2/DFZ4KiQp2dL4rpElQIIChYkvx+z4k?= =?us-ascii?q?yJ51ELSjSc+rwFIlrXIHRyi0CdpBF/9pv07XWDF/ZJCrsprlMY1IQmBM4J2dt0?= =?us-ascii?q?tZkEJ1Pi6j05VcMcZN7SUXUThTuzWSpsWyR9NH2c93CZ8MLdN/u3byGKNEJJiR?= =?us-ascii?q?rWc5uqbqynPD/TAzrku6zi2pG6CkV+JZ43EeGgIxKmWQsEUgE+ss8mbX8lDMqF?= =?us-ascii?q?90/PxWBrmRgkpvvjlxBJdOBixG1Xq9NVR8UGFGs/lGKKTSa8FTWeMyZQKpOxAk?= =?us-ascii?q?Fv4rxE2J/UB1nXfleCN+rA1a9D7BXwMsTykanq/tmSECqsGgITIaRIhIYi8nby?= =?us-ascii?q?fZMA+bmCdXvRhZa0F2W5AWHNdF+7cH3YRK5MrOU0CsJj8ZXBZ6LAI3zeJflVJf?= =?us-ascii?q?sEWfYS3dEQ2odfPUvx1rYcuRqdWmIO7//AhZloPtqPo4+LkbR326hQ2tRsjTr4?= =?us-ascii?q?/mud2QrESOcLr3PvahbnDfVDjMlQ6/hbM6AJnQ5STTNxBbK5Ziw3o+fZfhEXLL?= =?us-ascii?q?PQhBJ68DJUpbUr51ZM5bre9EfM9rZrwJ+bNzCR2aXB/vHpKgrOVeJFbJWTveNz?= =?us-ascii?q?mB8vC4oY/L9rPdR/TvatCOynraTa96JYt16T7+G7j2y4Be4Vb21u1r9kxkVVjM?= =?us-ascii?q?KzqBo8j5JgMX+MmicVPvvoc3EjzLAJd/imbty1pEd8oQXS2l7ooUx49e6HntV+?= =?us-ascii?q?10yE7zv/NO97N884k4/6hpyduoJafVMflaqVRnAgSOCQp36pUgG3N/R2dMYu8L?= =?us-ascii?q?NPjeY6IZjdz0q+/tE6wb8hqV+/ZWadHfPUHOhtG/Ci2ASRxDhAoBtSQaIRWC2P?= =?us-ascii?q?GYgKJ0VMKlpfTj2k03/Vi+LxkGzLRz6oeY4KaIo/XXbxTJx7geRqfqXt/zrqgr?= =?us-ascii?q?u06K+PIkkqQBd3dobA2hCucRTMkdxn3vzaoy1yIjD9vDH678+P5ET385nCjvm4?= =?us-ascii?q?p6H1UNHvMbB6SL8J9bnmcln+zZKtwWfbxDmmmVEx6kCaUOyXmx6yuYOGNlmA3B?= =?us-ascii?q?0wnsQWOv61/7tS14TjHKz9ftiEpVUaS4CllJUiq1I0B4tiiPPA3yuNrxp6s18F?= =?us-ascii?q?k8Mnb4u9KViGuhJLRXEtX5JNyYOiQ0pVQXjJgrStyu34AbF8C9L80K8HFidPve?= =?us-ascii?q?9n+kkzNco6ddmYXS+MaV+u/YHXO4la2Vt62NxCxEyng/pVw/7NGgOe3J592OWf?= =?us-ascii?q?uozHwdTyZ4uwvGRB61safWr1UbNE2EykvLn5YKPt5B13kiyk7m/PQjQM409AhG?= =?us-ascii?q?ConPffcCqi7oODvowVefZMk6VjKC3DtWAF31F0V4GKkm127qusLGi2vQ8UUyRo?= =?us-ascii?q?Zsb0znmQB3D4IgJEIp81gXxyoOHBMDaR+FEb6oAl7lIpEcVUgZbhSH3qa1dbsr?= =?us-ascii?q?3UFpxbOv/uDTZ/RmB6URLvZdkhKOnF9DF5IUsK0eRalxe1pD+6/XuAfiEYnnX/?= =?us-ascii?q?7plXYqM/26XNxa+9gDt3Q++ga/Wwag6ZBb4rYaiZGHbLRLboTXscBn8Uhn+SAA?= =?us-ascii?q?eTBXjBh4lRO5XvgWpPr/7djDrJqo9uGuWb42SOUW7Bg1CX5xj5nxgFA/udHYzf?= =?us-ascii?q?pcSonOhIvj9wBCPmCFt5zH0xlmLuoOMZikcKxn93UdKCgUP2gOMsaOa/kg/y9t?= =?us-ascii?q?Ny3e50RYDcMQedwYPMTMmQdOik3qQb1T7dTUGluZC4d1asAp4HH6yCgv/psgTu?= =?us-ascii?q?ng6DG3JZfF71FOJf9DjztjlMjEpOcLxfreEi8X4WOWaxJt2CON14GNC+rs/eWL?= =?us-ascii?q?0NzUS0kGETAyU4hHIjqN5xeqSfe0lJXmUwOU9tX8gIkke0KKW3y9hqIFvbhQEe?= =?us-ascii?q?RYkCX0wiBeFpzph/KSq9es53FYtkdZH4Zv7R3IA6FfPpRnORvmlsmkXFV8BjDl?= =?us-ascii?q?dMHSaBUupPKcxv0Q7OVmK0v+eYgbLwoLy73k73pVUgxuSLnxslaCQ+0RYNpmSP?= =?us-ascii?q?XZrnFa8o9gL7EAPEKdpZPwtDtIrk45ABMxYr8qsjNablXOnBFSW6vsvb4AjQ0c?= =?us-ascii?q?UcJ2uUBSAm+wPWM+6CDBVatLkKmQBvsV8i+QTqwVSUloND1xQw+t0pV0Z7Sphe?= =?us-ascii?q?xHsn9Bni5lr/glzydmRACltSPxqKwD3zMg+LeltDQOonFFQeCenD3OCVpd1vgK?= =?us-ascii?q?ir0cC3n641ymfHYDdJfy4KVgJcn494kh5HQ/YRM5cyIaXeSgDzzwgL6JA4yOtt?= =?us-ascii?q?Jcnx2NuMTVYL+tLCgSKK4yyRb+SHh8yATemghn8HcTSDW68NAkPJm9Odoixiew?= =?us-ascii?q?GGjbakwD4qVSvcv1qF4EUeo2aVR6wGl51ciHXCINTtTVG2kplggkdXlEcJVb5B?= =?us-ascii?q?8YCaYojDiIvq1d8wAaejjUFJqq+pXKkcfOx3Y9Uc9gxnjKqa2dmpMqzHpllst7?= =?us-ascii?q?7i6Kv3QTefLXU8toAnXozYdfzur+Z/SxvewdTotp1qihWucYMsa/4Wu2xIlqWk?= =?us-ascii?q?i9y7QcH1q4MPcDxrDfUyekVW2XR/+Gc22NnzYlKE79+wOkLlotaMdFt0U9KPfN?= =?us-ascii?q?hoZAlw39VrN5XiqQpULazGM+NuMXbB42uJ25dAwMUO4efeycKvIowPIiCVsDdW?= =?us-ascii?q?XFHS1oBO+qqVSthpR0O2184UXmZuTg6hzmMNqXGhQfDY7ar4J++f+kSWKFI3Ng?= =?us-ascii?q?ygN9PFVs/efFC1sxrvNcc4qWndXIgtR70O0Fd/RqMSAmuN4cgIFj6Y6S0MiUdx?= =?us-ascii?q?Hd1JDyKs/JovKAGf3Q01wqen1GUroeeQ76/Js1PtglW7DIBrtZuRMcBbQmQJw/?= =?us-ascii?q?KWj+6bt4LARpcg7efL60mNXlpvqXZptIoH/b9kowLCDYuxIZ0Py1Qwt7b5Skh3?= =?us-ascii?q?jpJZAwQTVBr8ZzBRR6BotPHNgArxGmA56Sl6G3kdix+1l1u+USq6r/FujK1Mil?= =?us-ascii?q?34V2R5Va61KEPDLQBKlznEtoleWzgvbF0pn0F8ziY9cEW/ZhTm7CcL/GEZ21Ki?= =?us-ascii?q?iSNcLkZ05G77mc3ap5UhWNZCD5WK+Guze/NPh/5EU7y5B4fPDNwzA36LHbwtTy?= =?us-ascii?q?bXlBpii/tX6JKIdf7FvSCO3QRxJUU/uF/3p7EqAMaIv09fsOMcY8z9SG5Alz9j?= =?us-ascii?q?tC2tOfI6e9tk/Mxl57dZXDIUvu3yY2R5IHIAy7MUQ2mm/ZtnXdDmhALsi+N8Zi?= =?us-ascii?q?nsyZDhrz6EltgWstfHJOGnL0RdeNPmgWw8a+ZAyM9AJWANcPhuq3eU8jtq2uUu?= =?us-ascii?q?llIZRFlv+stLUAi9ppLDvPRMdCNSHKMLB2JiZRDvnIpFUweR4Lrbw1WoYzZZiT?= =?us-ascii?q?L0ILN0iOyT/yzQTcy037acSs27ySLSYV7HpH1bTF3iZIpwaipPaZjdfvULfDbJ?= =?us-ascii?q?H5RPTSKjYqVimGRTQuFkak4VOku/sfvPqEOmoeo0kUYiSIBwIJoKBgs8TQBHfJ?= =?us-ascii?q?meJ/ZJ0KmOyaWyfoRS19jqU9GiZLtUGKQ/oEDgTWcX7hgGxCtwymJ/9M+2/lbr?= =?us-ascii?q?KCyqpSQewWDZNGcueFTNvAZfBeOzAomy0bOOmmfN3cqK0230nVTWsfD6nI9Fqe?= =?us-ascii?q?TFOZQvyc2zLnR4MVsJYouiAw4NLfgjd3E7jUP7aYvzOu/ZS3gz2Cue3fSGYtZ1?= =?us-ascii?q?c4gPwGAGab2xlAKXwEB8sTuE7zXq6Kf1xM224xieJyxx8Mfxx+Un9r0n1Rhva9?= =?us-ascii?q?AMxZSUUPgWOoWvIGaU54DDIq8U+N+A3ybsQKudrPSG9G6rsMVY0dIeEz6InZPa?= =?us-ascii?q?sf3Pck0TF9rSwkrSqdFVJdjwOC86rWBq58wKNN5XUg9fFsQk6PWy/fcnTAyoe+?= =?us-ascii?q?CcJPwiFuoXT/2srRoO9iKbVap4ZjAFgWHy16PNbd8i5dUTK85AznpBu/HTKDMB?= =?us-ascii?q?oF8T0LImoDbe8zwOhl4zjScdOUz0KbsKYoswOKDgGQEfLg3p1ADcXgzkO5bi5Q?= =?us-ascii?q?ah2uS4AwrexCwoVBKZg7bJSzVgiSZjP1CRiV7mVVrBU=3D?= X-IPAS-Result: =?us-ascii?q?A2ELBQAsiGFY/wHyM5BdHQEFAQsBGAEFAQsBgwwBAQEBAR+?= =?us-ascii?q?Ba45EpiuGTymHWVMBAQEBAQEBAQIBAl8ogjMagiMCJBMUIA4DCQIXKQgIAwEtF?= =?us-ascii?q?R8LBRgEiE8EAa09OigCg2iHDYZIiHwCEQFohRUFmn2Beo84ikmGGkmRdlhoH1G?= =?us-ascii?q?DZR2BX3GGYQ8XghcBAQE?= Received: from unknown (HELO tarius.tycho.ncsc.mil) ([144.51.242.1]) by emsm-gh1-uea11.nsa.gov with ESMTP; 26 Dec 2016 21:18:53 +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 uBQLIl7j018053; Mon, 26 Dec 2016 16:18:48 -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 uBQLIk1A146195 for ; Mon, 26 Dec 2016 16:18:46 -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 uBQLIkwt018050 for ; Mon, 26 Dec 2016 16:18:46 -0500 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A1ApAAAsiGFYmCIeaIFdg2cBAQEBAYIKjkSmK4JBjBBTAQIBAQEBAQITAQEBAQEICwsHHYVGgiOIcAQBm1KRazqEEocNhkiIfHyFFQWafYF6jziQY0mRdoFeg2YBCwFDHYFfcYZhgj0BAQE X-IPAS-Result: A1ApAAAsiGFYmCIeaIFdg2cBAQEBAYIKjkSmK4JBjBBTAQIBAQEBAQITAQEBAQEICwsHHYVGgiOIcAQBm1KRazqEEocNhkiIfHyFFQWafYF6jziQY0mRdoFeg2YBCwFDHYFfcYZhgj0BAQE X-IronPort-AV: E=Sophos;i="5.33,413,1477972800"; d="scan'208";a="5890784" 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; 26 Dec 2016 16:18:45 -0500 IronPort-PHdr: =?us-ascii?q?9a23=3Ak5Ul1hAAxdVUii4yzt3GUyQJP3N1i/DPJgcQr6Af?= =?us-ascii?q?oPdwSPvzosbcNUDSrc9gkEXOFd2CrakV0KyH6eu5BTNIyK3CmUhKSIZLWR4BhJ?= =?us-ascii?q?detC0bK+nBN3fGKuX3ZTcxBsVIWQwt1Xi6NU9IBJS2PAWK8TW94jEIBxrwKxd+?= =?us-ascii?q?KPjrFY7OlcS30P2594HObwlSijewZb1/IA+yoAnPucUanIRvJ6QswRbVv3VEfP?= =?us-ascii?q?hby3l1LlyJhRb84cmw/J9n8ytOvv8q6tBNX6bncakmVLJUFDspPXw7683trhnD?= =?us-ascii?q?UBCA5mAAXWUMkxpHGBbK4RfnVZrsqCT6t+592C6HPc3qSL0/RDqv47t3RBLulS?= =?us-ascii?q?wKMSMy/mPKhcxqlK9VoAyvqQFxzYDXZ4+YL+Zycr/HcN8GX2dNQtpdWipcCY28?= =?us-ascii?q?dYsPCO8BMP5AoYn8u1QOqh++ChO3BOjyyTFIgXj23bYh0+88FgzG2g0gEM4JsH?= =?us-ascii?q?TQttr1L70eUeGyzKnP1jXDdOhb2TLy5YnHaBwhpuuMXb1pfMfX1EIhFBvFg02N?= =?us-ascii?q?pYD7Oz6ZzPkBv3SU4uZ6W++jl3Qrpg9+rzS3yMogl5PFi4APxlzZ9ih0z5w5KN?= =?us-ascii?q?O3RUN9fNWqCoFftzuAOItzWs4iQ39nuCI9yrAevJ66czUGxI4/xx7Yb/yGc5SI?= =?us-ascii?q?7Qz/W+aRJzd4hWtleK+hiBqo9kig0OL8WtG10FZMsCVFjsHBum0T2xHX8MSLV+?= =?us-ascii?q?dx80i71TuBywzf8O9JLE8smareMZEhw7owlpQJsUTEGy/7gFj4grOLeEk44uWo?= =?us-ascii?q?7P/rbbbkq5KENYB6jhnzMqEhl82wG+g4NRIOX2eD9OS61b3s4Ur5QLFQgf0tiK?= =?us-ascii?q?XZsZfaJcMApq6iGAJayYEj6wu5Dzi6ztsYhmMLLFdKdROIlYTpPEvOIP/gAfel?= =?us-ascii?q?n1usiCtrx+zBPrD5GZXCMHzDkLbnfbZg5E9R0xYzzNBD6JJUDbENOvTzWlTru9?= =?us-ascii?q?DCAR85NBK0kK7bD4Bm24cfX3+fKrOIO6PV91mT76QgJPffSpUSvWPbKvMi4/f1?= =?us-ascii?q?xV4+nkQGNf2v3JAQbHmjWPVhJF6CSX+wkpEGC2hc7Vl2d/DjlFDXCW0bXH21Ra?= =?us-ascii?q?9pvjw=3D?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0GfAAAsiGFYmCIeaIFdg2cBAQEBAYIKj?= =?us-ascii?q?kSmK4JBjBBTAQEBAQEBAQECAQIQAQEBAQEICwsHHTCCMxiCS4IjiHAEAZtSkWs?= =?us-ascii?q?6hBKHDYZIiHx8hRUFmn2Beo84kGNJkXaBX4NmAQsBQx2BX3GGYYI9AQEB?= X-IPAS-Result: =?us-ascii?q?A0GfAAAsiGFYmCIeaIFdg2cBAQEBAYIKjkSmK4JBjBBTAQE?= =?us-ascii?q?BAQEBAQECAQIQAQEBAQEICwsHHTCCMxiCS4IjiHAEAZtSkWs6hBKHDYZIiHx8h?= =?us-ascii?q?RUFmn2Beo84kGNJkXaBX4NmAQsBQx2BX3GGYYI9AQEB?= X-IronPort-AV: E=Sophos;i="5.33,413,1477958400"; d="scan'208";a="1846687" Received: from mx1.polytechnique.org ([129.104.30.34]) by emsm-gh1-uea11.nsa.gov with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 26 Dec 2016 21:18:45 +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 E8DAA56469F for ; Mon, 26 Dec 2016 22:18:43 +0100 (CET) From: Nicolas Iooss To: selinux@tycho.nsa.gov Subject: [PATCH 1/5] checkpolicy: fix memory usage in define_bool_tunable() Date: Mon, 26 Dec 2016 22:18:28 +0100 Message-Id: <20161226211832.7165-1-nicolas.iooss@m4x.org> X-Mailer: git-send-email 2.11.0 X-AV-Checked: ClamAV using ClamSMTP at svoboda.polytechnique.org (Mon Dec 26 22:18:44 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 In an error path of define_bool_tunable(), variable id is freed after being used by a successful call to declare_symbol(). This may cause trouble as this pointer may have been used as-is in the policy symtab hash table. Moreover bool_value is never freed after being used. Fix this memory leak too. This leak has been detected with gcc Address Sanitizer. Signed-off-by: Nicolas Iooss --- checkpolicy/policy_define.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/checkpolicy/policy_define.c b/checkpolicy/policy_define.c index 864788992e5c..2ad98c3c851e 100644 --- a/checkpolicy/policy_define.c +++ b/checkpolicy/policy_define.c @@ -1704,11 +1704,11 @@ int define_bool_tunable(int is_tunable) bool_value = (char *)queue_remove(id_queue); if (!bool_value) { yyerror("no default value for bool definition?"); - free(id); return -1; } datum->state = (int)(bool_value[0] == 'T') ? 1 : 0; + free(bool_value); return 0; cleanup: cond_destroy_bool(id, datum, NULL);