From patchwork Fri May 11 17:15:11 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexey Kodanev X-Patchwork-Id: 10394773 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 049F560153 for ; Fri, 11 May 2018 17:12:34 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 1D0A828F6D for ; Fri, 11 May 2018 17:12:34 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 1BC1828F8D; Fri, 11 May 2018 17:12:34 +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.1 required=2.0 tests=BAYES_00,DKIM_SIGNED, MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED, T_DKIM_INVALID, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 Received: from ucol19pa09.eemsg.mail.mil (ucol19pa09.eemsg.mail.mil [214.24.24.82]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 14CEB28F6D for ; Fri, 11 May 2018 17:12:29 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.49,389,1520899200"; d="scan'208";a="695447350" Received: from emsm-gh1-uea10.ncsc.mil ([214.29.60.2]) by ucol19pa09.eemsg.mail.mil with ESMTP; 11 May 2018 17:12:15 +0000 X-IronPort-AV: E=Sophos;i="5.49,389,1520899200"; d="scan'208";a="11706292" IronPort-PHdr: =?us-ascii?q?9a23=3AVY4AkxyFu92IJADXCy+O+j09IxM/srCxBDY+r6?= =?us-ascii?q?Qd1u8TLPad9pjvdHbS+e9qxAeQG9mDsLQc06L/iOPJYSQ4+5GPsXQPItRndi?= =?us-ascii?q?QuroEopTEmG9OPEkbhLfTnPGQQFcVGU0J5rTngaRAGUMnxaEfPrXKs8DUcBg?= =?us-ascii?q?vwNRZvJuTyB4Xek9m72/q99pHPbQhEniaxba9vJxiqsAvdsdUbj5F/Iagr0B?= =?us-ascii?q?vJpXVIe+VSxWx2IF+Yggjx6MSt8pN96ipco/0u+dJOXqX8ZKQ4UKdXDC86PG?= =?us-ascii?q?Av5c3krgfMQA2S7XYBSGoWkx5IAw/Y7BHmW5r6ryX3uvZh1CScIMb5Q6o0WT?= =?us-ascii?q?C/5Kl1ThHmhjoMOzog/G3KlsB8iaRWqw+jqRNi2Y7ZeIGbOuRwcK3eet0UWH?= =?us-ascii?q?JBU8RMWyFPHIy8dJACA/YdMetCs4XwvUcCoQe4CAKxBO3v0DhIhnru0KAm1+?= =?us-ascii?q?QuDw7H0xIgHtkTtXrUq8j6O70UUe+r0qnD0DLOYOlS2Tjj54nHbBAgreuPXb?= =?us-ascii?q?J3bMXe008vGB3bjliLrozlJSma2fgJs2eF9eZvSeWvi2s+pgx3vzOhxd8sh5?= =?us-ascii?q?HUio8axV3I7yV0zJsvKdGmR0N3f8SoHIZIuy2HOIZ6X9kuT3xntSs70LEKpI?= =?us-ascii?q?O3cSkQxJg52hLSbeGMfZKS7RL5TumRJC91hHdieL2imRm/6VOgyujgVsms11?= =?us-ascii?q?ZKszZFnsHMtn8T0xzT7dCKSudn8Ue72DaPyhvT5vtYIUE0iaXbK5khzqQ2lp?= =?us-ascii?q?UPqkTMAjX6mED3jK+Sbkkk++6o5Pr7Yrj+u5OROIB5hhv+P6gzgMCzH+s1Ph?= =?us-ascii?q?YUU2SG4ei80afs/Uz9QLVElP02lazZvYjBJcsFoq65AglV0pss6hqmFDim18?= =?us-ascii?q?kYnX8bI11bYxKKlJTpOlHSL/D4CvezmVKskCxxyPzcMb3hBYvNImDZkLj9Zb?= =?us-ascii?q?Z991JcyA0rwNBd4JJUDKsOIO7zWkDrstzVFR05Mwuyw+biEtp9zZ8eVnyVAq?= =?us-ascii?q?+CKq/StkWI5u03KemWeIAVoCr9K+Qi5/P2j385m0UScrWq3ZsMb3C4GPVmI1?= =?us-ascii?q?uCbHrihtcBDGgLsREjTOzslF2CTCRfZ3GoX6Iz/js7Ep6pDZ/fRoCxh7yMxD?= =?us-ascii?q?+7EYNNaW9YDFCMEGvod4KfVvcNdi2dPNFuniYDVbi7RI8rzQuuuxPiy7p7Mu?= =?us-ascii?q?rU/TUVuo/k1Nhz4e3ciA899Th1D8mGyW6CUXt0nmQSSz8xxqB/rlR3yk2f3q?= =?us-ascii?q?hgn/xYCdtT6utUXQcmL5Hc1fd3BMz1WgLEYtiGUk2mQsm8DTE3UN0x38cEY1?= =?us-ascii?q?xhFNW6khDDwy2qDqcUl7yNGJw77Kbc0Gb0J8lj13bGzqkggkIhQstXK2KmgK?= =?us-ascii?q?t/+BLSB47NiEqZkKmreb4b3C7X+2eJ1XCOs11AUA5sTaXFWmgSZ0vXrNT+4E?= =?us-ascii?q?PPVLquCbA+PgtAz86OMK1KZcfzjVVFRffjJsrRb3i3m2iuGRaC3qmMY5bye2?= =?us-ascii?q?UBwCXdD1AJkg4S/XaCMAgxGD2hrnnQDDNwCF3vZFns/vNmqHOhSU80zR+FYF?= =?us-ascii?q?F917av/R4Vn/OcQesJ3r0YoCchtyl0HFGl0tLYEdqPvQxhc7ldYdMm+1pH0H?= =?us-ascii?q?rZtw1kMpy7IaFinUQScwNtv0Phzx93EJlPkdA2rHM2ywp/MaGY30lCdzOfwJ?= =?us-ascii?q?D9Ib7XJXPx/BCodq7awFbe0MyZ+q0X8vQ3t03jvB21Fkol63hoycRa02Gd5p?= =?us-ascii?q?rUFgofSoj+XVoy9xRgoLHaeCY97ZvO1XJwKam0riPC29UxCeQ50Bmge8lQML?= =?us-ascii?q?iYFA7yFM0XHNOuJ/Arm1e3aBIEIOFS+7QuM8OgafSGxLahPPx8kzK+kWRH/I?= =?us-ascii?q?d931qW9yVhV+HFxJkFw/SX3wedUTfzkkuhuNjtmY9YfTESAna/yS/8CY5KaK?= =?us-ascii?q?1yZ4ELCXyyI8Cs3dV+gZntWnBd9FG5AVMKwsmpdgSOb1blxw1fyVwXoWC7mS?= =?us-ascii?q?u/1zF1nSsmrq6D3CPQ2eTibwEKOnBVS2l4lljsPI20g8odXEiyYAgjjAGl6l?= =?us-ascii?q?rix6hHuKR/KHHeQVlJfyfqM2FiVbGwuqCebM5P75MotypXXf+4YVCbTL7yuQ?= =?us-ascii?q?Ea0yT5E2tZ3jA7eCmguo/lkBxilGKdMHFzoWLdecFx3hff+MXQReVP0ToCRS?= =?us-ascii?q?l4jyTXB1enMtmy5dWUlpHDsuGiWGK6TJFTdzfkzZ+Yviuh+WJqGQG/n+y0mt?= =?us-ascii?q?D/Cwg61iv71910WiXSsBn8ZYfq2r+hMeJ6YkZoH0Xw681gGoFxioEwno0f2W?= =?us-ascii?q?AGhpWJ+noKiWTzPstd2aLld3cNRiAEw9jO4AjjxkJjMmiFx4XjVnWS2sFhfc?= =?us-ascii?q?W1YnsK2iIh6MBHEL+U46ZZnStxvFW4tRjeYf5hnjgD0/sj82Mag/oXtwo31S?= =?us-ascii?q?WRGKsSHU5FPSz2ixuH8d6+rKJNZGagb7e8zkx+ks69DLuauAFTRG75eos+HS?= =?us-ascii?q?939sh/LlTM32Do54H6ftnfcNITugeSkxjek+hfMIgxmeYShSp7JWL9umUoy/?= =?us-ascii?q?Yhghxz2ZG3p5SIK2Rx/KO5GxJYOCf6Z8UJ9jHql6Zekd6c35qzEZV5BjULQJ?= =?us-ascii?q?zoQOqrEDMSsfToKR2DEDg7qneVF7rQAxOf6Ftmr3LIFpCkKWubJH8HwtV+XB?= =?us-ascii?q?OdPlBQgBgIXDUmmZ40Dg6qy9bncEdl4TAR40X1qhVSxe11MBn/SH3QpB+yaj?= =?us-ascii?q?czSpiQMgZZ7h1Y60fSK8ye4fp5HztE8Z25sAyNNmubahxVAm4VX0yEAFbjPq?= =?us-ascii?q?Wz6dTb7eiXGPC+L/rPYLWJr+xSTfGIyoyz0oF+5TaDKt2PPmV+D/08wkdDU2?= =?us-ascii?q?p5FNrElDUUUSMXkT7Nb8mApBqn4CJ4ssW//O7sWAL16ouFE6FSPsl3+xCqna?= =?us-ascii?q?eDMPadhCBjKTlCzpMM3WTFyLYe3F4IkCFuazetEbUGtSHXSqLfhq5XAAQfay?= =?us-ascii?q?9pM8tI9a081BFXOcHHktP1yqJ4jvktBlheTlPtncWpZc0RI2GhL1PLHl2LO6?= =?us-ascii?q?qaKjHR2MH4f6e8SbxWjOVJuBy9oiqUEk/5PjSejDnlTR6uPvtQjCGAOxxevp?= =?us-ascii?q?uxchF3CWjsVNjmcAG0MMdrjT0qxr05nnXKNW8YMTh4bUxNtaad4jlGjfVlHG?= =?us-ascii?q?xN9H1lLfOLmyyB9enXNo4Wsed3AiRzj+9V+3U6y7RS7CFCX/F6hTXdocVvo1?= =?us-ascii?q?68lOmD0D1nUABBqjxTnoKEoV1iObnF9plHQXvL5h0N4n+OCxsUvNZlDcXvtL?= =?us-ascii?q?5WytjKjq3zKTNC/MnT/coTHcTUL9iHMHU5OxrzBDHUFBcFTSKsNWzHm0xdl/?= =?us-ascii?q?SS+mePrpg9q5njhpwORaRBVFwyCPwaCV9oE8AFIJdyQjwri6WbjNIS6Xq4sh?= =?us-ascii?q?bRWN1QvorbWfKKHfXvNDGZgKFGZxsIwbL4NYMTNon620x+dFZ3h4HKG0vMXd?= =?us-ascii?q?BXvCJtdAg0oF9C8HJmVG08x1rlah+x4H8UDfO0mAA5hRF6Yek29zfs5Ew3Jk?= =?us-ascii?q?bQqys2i0kxmtTljSqXcDHvMKe6RZtWBDbst0gtLpP7RB54bReskkx/KjjLXa?= =?us-ascii?q?hRgKdgdW1wkwDcuIFPFuNbTa1KeB8Q3++YZvUy3VRatCqn2VdN5fHZBpt6iA?= =?us-ascii?q?sqbZmsompd1A15ct41JLHfJLFSw1dKnKKOpCio1+4qwAAAO0kN7XmSeC8UuE?= =?us-ascii?q?0ILLUmITSn/vB04wyYhzRDYHQMV+Ytov9y8kM9PP6AwDzm079CLUC8LOOfL6?= =?us-ascii?q?WEu2Taks6IWFww3FsSl0ZZ5bh2zdsjc02MWkA00rSRExUJNczfKQBadMdd6H?= =?us-ascii?q?/TfSOSvurX2pJ1I5+xFub2Qu+SrKwUmF6rHB41H4QQ6cQMBoWs0EDdLcfgML?= =?us-ascii?q?4FyRUs6R/2K1WEDPVGYgmEnC0Bo86h0J99xZNdKS0FAWVhLSW34a7aqRUugP?= =?us-ascii?q?qCQNg5fG8VXo4EN3IwX826nTRWsm9bAzm2yO0ZzhGO7zHhpijKCjnzccZjbu?= =?us-ascii?q?+OZRxwENG25Sk/86+uhFHM7JreIXr3Os5/td/R9+wavY2HBOlOTbh9qUvcnJ?= =?us-ascii?q?NYR3OyWW7VDdG1P4Twa5UrbdHsEHa6VF2/hC41T8f2ONatNbCGjxj1S4hOrI?= =?us-ascii?q?SV2ysuOtO6FjEbBxh/vfoD5L5maQ0FfZU7fQbitx4iOKynPAeYztKuTn6xJj?= =?us-ascii?q?tUVfZQ0f63aKBQzyooau+6yWUvTosmz+ap7UENRIsGjhbExfasf4NeSzT8Gm?= =?us-ascii?q?RBewXToio0j3JhOfwowuc42xzFqkUcMyqRe+x3dmNEu9A8BVWdIXVyC2o4SF?= =?us-ascii?q?+cjZbN4gG2xbAS+jFRn9BK3u1ZqHL+pIPQYCqwWKy3rpXYqyQhYcI6rK1xMI?= =?us-ascii?q?zjJ8qGu4ndnjHETZnfrBOKXzCgG/pdgNhQLzpSQONUlmE9JcwGpY1B5FI0Vs?= =?us-ascii?q?gkPbxPC7cjpqyraTpiAi4f1iEYWJmG3DMehue83KbamQqLcJg4NhwLrolCiM?= =?us-ascii?q?MHUyFqeiMeuLOjV4LOmm+cTWgLJB0c7R5C5QIHko9wcPvo4I/PTJ9L0D5Zve?= =?us-ascii?q?57UjHMFplz7Fv7S2eWgVfiRPWmieyp0hpYzOjw3dkDRB5/FU9dyv5MmUsyNb?= =?us-ascii?q?F3LbMcvo3Rvz+JdEP6vX7tx/C8KFlX18LUa0XyDJDZumrkTi0c5XoUSJdTyH?= =?us-ascii?q?HYEJQfiBZ5ZLoupFpXOoymfFjx5yA8zYRzA7a4Tdyrx0oirXseRyelCcBBBP?= =?us-ascii?q?tisF3KQzBqfo6kqI39O5pMRm9f5oedp01ekEV3PC6z0YBcJN1V4j4QQDhPpi?= =?us-ascii?q?2QvNm1SMJdwsJ5EoEDIsxhtHfnBKNLJoWer2cwurPx1n/T4yo8v0uixDWvB6?= =?us-ascii?q?+4SPpU/3EDFQo0JmSRsE0vAvAw/WfV91DCrkp7//xHBrSVi0V+vip9FIhUBj?= =?us-ascii?q?lVzXClM0hzTH5evupBJqTab9BQTvsvaRKhIBExCfkm30mV8k5uhnf5fzZ+tg?= =?us-ascii?q?1E9CDBRwM0TzUagq/xmT0CrcGqISUaRIxVYjUhdSjFNxmWmSRQvBZBdU5mRY?= =?us-ascii?q?wWAtFY9L4Fx4dU+NTNSVq0IyEfQBNiLh440eZYlUNbqEWYYjzdAhC1evbTqR?= =?us-ascii?q?B3ZsCRrNOzLPvl4ghHjJ/nsPoi+KUHXXGmnhetQd/GpY/mqtKKrleOdLv/M+?= =?us-ascii?q?CkfX/BVibDgg6tiro/EpnK+zTTMBBBJJlkyHokZpzhBnDXPRhcIKIbPUVbX7?= =?us-ascii?q?hgadpauuBae9NkeKER9K9oHB2HQhfvF5KzrPlaNFncXy/TLyOf/eyjuoLc8a?= =?us-ascii?q?bSSfD+acCWwXbIXb53NI9g6TbnA7fqzZNe+k3u1/dv7Ex6U1/GMzuFrNv7OA?= =?us-ascii?q?MG/8yidlbmvp01HDPZHJZwn2DrxkFbbcYXRDeq8JsAwpND9HnwUf540lT0sO?= =?us-ascii?q?BK9blr8483475zycezOKjdN+9XsVN9DRiSHQVq8Y8hAG5hSGBNeuURMuvefb?= =?us-ascii?q?wFjcDyrOD6D6MX6ACU++xdbdvIOUTBl9KiBT6CUhNEnR0OqTgAIgubzf6FlL?= =?us-ascii?q?d+Sdy5qujhxkIt/1++IwYEzLBs4IeJ4a+Iq/HXbhTP17gEW67qRszporQqpU?= =?us-ascii?q?yS+eUulKQSdWxtfw2nDO8dW9Ybxmfk1q0qzCQsE8bZE7Lh/v5DWWg5kSj7m5?= =?us-ascii?q?BhBVUWB+8bHaaW/YREgGg0gevZNscZcqpagGaACQakEqMeyX6s8yaXJW5lgh?= =?us-ascii?q?fS0xH/X2y+91r2rS5iTivK0djjjkRUVr6tBUdRRCqlI0l4vy2TPADwrtr4pb?= =?us-ascii?q?w17F0qMmzjrN+NkHChOLZXEsDkKtyTPzQ7pFUNjJIrXtyvw4cbGdijL9gN7H?= =?us-ascii?q?FydPze63mkkyVZuadIm5Le4t2J+vXQBXSgjqybpK+Xyz9E0XU4pk8w6sy+Of?= =?us-ascii?q?7S/dGKRO6o12kJRSdlpwTBRwK1qqDcr10MIkOL0VzLmYIQMdFb3Hk4ylnm6/?= =?us-ascii?q?I+QNI37whRCoHAaO4cqj/pJTv021GfY8gtWSWE1DtXBF31G0FiGKcgwGLwoN?= =?us-ascii?q?7JlXDI9l0wXIZwa1DohRx5DoU/M0It60EbwjEdHggJaBCbCqyoBEv+IIscT0?= =?us-ascii?q?cDdQiI3Li0e6cwx01zwamj5OzNYuxmAaoCKPJdghSJnFhBFZIcqbceT65ke1?= =?us-ascii?q?9B6K7XoRDvC4f9UPj8i3UwKf21T9te8cAYq3st/Aa/SAC96ZdY9bobjo6Hdr?= =?us-ascii?q?Jca5jWoM9891tn5SIIdiFVjxhwkRW5UfwbpODk5dTbq4Sn6uKvVKYrWuUW+A?= =?us-ascii?q?M5B2BggJvqgFEsu8vb1+FCRY3JkY7/6hxCI2aWuIbG1BlxMewOK4O3c7Zn83?= =?us-ascii?q?UIPTMeK2gPPdqRbPk8+DRtPS7W51FNDcIAf9QYPNDCmQpMkE3mRKlT9tbHGl?= =?us-ascii?q?+fE4pzeNwn73HsyDws7JUyXeDu6D6wJZDC4FBAJPxDjCB2m9LEuucZ2/3SCD?= =?us-ascii?q?IY4XOBcRh63juCy4WRC/b35eiMytbUV1MAHiIsT4hdJD6C+RG6Seu0lZXpVB?= =?us-ascii?q?iU6szygJ8lakKQR2Kxk74BsqlREO5MkCP70SZCFortnfKar8Ks6HdLtl1ACI?= =?us-ascii?q?tz7APFF79ZPphgPRT4i9SkRkl7BivkYs3UcQAuuOWOzOcW/+p+L1f+ZZMcIh?= =?us-ascii?q?8cybL193RVTgVqSLPtsFeWR+QRa8V6SP/eqHBa955gIbcVPFeBvJzqsitIqF?= =?us-ascii?q?cuDQ8mbL8wqTJbeVfKnA1RQKv0o7kAig0dUdFlo0NMH3y/OH4m7TrdSatVlL?= =?us-ascii?q?WRCOAS8jiLS6wOUkZoMiB5Qx6u2pVhYbipnfdBsmxYmCNxuv4q3CJ6RBGkoy?= =?us-ascii?q?3ju7oN2S48+LG/rDgOomJKTuOCkyrTElVDyPMKjbsAC3b891OzfWMPbIzo4L?= =?us-ascii?q?loPc7g75Uu42wjYRU/eC0LReqgBD/0j6OJGoyArslRhR+MuMXLaL+8MzISNr?= =?us-ascii?q?Ajxh75QHh9yAfelg5y8GQXWjWg8MMkJIKlNMcr3iqoA2nbe0oS7a5StcvxtE?= =?us-ascii?q?ILTPEoZl97x2VjyMeHTDUXRMPTA2Y1khQkaWJcfZJE7R8VCbIlgi6MvqZc5Q?= =?us-ascii?q?EUfDbUHZi5+onKg8jHx2MxTdF0yWLKvqeFnI8l0GV5m9No6S6DoHASd+3eU8?= =?us-ascii?q?9xDXn/z4Nfye3lZ/WxqeAKU4pmx66nUP8FKMWj/nG22JpyUE+/2rseB0a5MP?= =?us-ascii?q?MExrrDVieqU3GXWeSKc2iKmDY0KVDy5RiuLlIpbMdKrkk9MvbNh5JGkA3hS7?= =?us-ascii?q?x0TD2KpVDH1GwjLf8adwUutYelYQMKT+kRaPOHKOgzxv0+FFsMb3jUHSt5C+?= =?us-ascii?q?+2rUShnI5lNHV8+U/6e/ji8hj6MNuOHRkJCYzarpt2+fygXGKBOGRgwQZ0PE?= =?us-ascii?q?Zu8ufQCVUxuvVbc5aLktjan8573vIdd/dxLS09vcYemplt6YmRzMiHcBLcw4?= =?us-ascii?q?3sJd7LuPiYAvzez0Msem1AVLoWfx/1tM0GOYsiVrnSG6ZJlQgNDqg9Bpo6Pi?= =?us-ascii?q?H+878nAhl0d1v4YLmkj9iiheWHb51ZuTeC51Y9PCrN/R4ExvWyQBJTaIqjjH?= =?us-ascii?q?H/Zps3Q2QS/JVWFhJ6Ed4XSIs7pA29DsvRwfnh0Y245l96tukWsKH5FvHN0p?= =?us-ascii?q?Gj0p5sW4RBtRTZAQ3/LvJAum090qK/j/Lb3d/0AMLmP9YFULseICbJab7DS5?= =?us-ascii?q?22MSnGetn9dEhP76OG3fpnXw+QaiH0U+vOtCCtOPh+p0Ru4otideHXwXom6L?= =?us-ascii?q?TW?= X-IPAS-Result: =?us-ascii?q?A2DCAgDezfVa/wHyM5BcGQEBAQEBAQEBAQEBAQcBAQEBA?= =?us-ascii?q?YMYKAOBXCiLdl6LVjqCbhqOZDGEIIFxEhgTAYdLITQYAQIBAQEBAQECAWscD?= =?us-ascii?q?II1JIJXAiQZAQE3AQIDCQJICAMBbAWDHiqBVwMBAastglYzgm8BAQWBYoNrg?= =?us-ascii?q?kAIiCUzAYEgP4EPglaKfIc6hT6LPAcCgWWMbAKIF4RSK5ALAgQCBAUCEwGBJ?= =?us-ascii?q?Rw4gVIzGgQfgxOCFAwXEYM0ilVsegEBkCABAQ?= Received: from tarius.tycho.ncsc.mil ([144.51.242.1]) by EMSM-GH1-UEA10.NCSC.MIL with ESMTP; 11 May 2018 17:12:10 +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 w4BHC6CH015043; Fri, 11 May 2018 13:12:08 -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 w4BH5nN4025562 for ; Fri, 11 May 2018 13:05:49 -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 w4BH5s7Z014698; Fri, 11 May 2018 13:05:56 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A1DxAQApzPValykaGNZcGQEBAQEBAQEBA?= =?us-ascii?q?QEBAQcBAQEBAYMYKIFfKIxUi1c6gm4ajmQxhhgLhGyDCyE3FQECAQEBAQEBAhQ?= =?us-ascii?q?BAQEBAQYYBksMhVYZAQE3AVV7gyMqgVcDAQGrKoJWM4JvAQEFhU6CQAiIJTMBg?= =?us-ascii?q?SA/gQ+CVop8hzqFPos7BwKBZYxsAogVhFIrggCOCAIEAgQFAhMBgSUygXQzGgQ?= =?us-ascii?q?fgxOCFAwOCRGDNIpVbJERAQE?= X-IPAS-Result: =?us-ascii?q?A1DxAQApzPValykaGNZcGQEBAQEBAQEBAQEBAQcBAQEBAYM?= =?us-ascii?q?YKIFfKIxUi1c6gm4ajmQxhhgLhGyDCyE3FQECAQEBAQEBAhQBAQEBAQYYBksMh?= =?us-ascii?q?VYZAQE3AVV7gyMqgVcDAQGrKoJWM4JvAQEFhU6CQAiIJTMBgSA/gQ+CVop8hzq?= =?us-ascii?q?FPos7BwKBZYxsAogVhFIrggCOCAIEAgQFAhMBgSUygXQzGgQfgxOCFAwOCRGDN?= =?us-ascii?q?IpVbJERAQE?= X-IronPort-AV: E=Sophos;i="5.49,389,1520913600"; d="scan'208";a="275120" Received: from emsm-gh1-uea10.ncsc.mil ([214.29.60.34]) by goalie.tycho.ncsc.mil with ESMTP; 11 May 2018 13:05:55 -0400 IronPort-PHdr: =?us-ascii?q?9a23=3AhCzV+BV8jE917WvJp0PtBTfBmNvV8LGtZVwlr6?= =?us-ascii?q?E/grcLSJyIuqrYbBeOt8tkgFKBZ4jH8fUM07OQ7/i7HzRYqb+681k6OKRWUB?= =?us-ascii?q?EEjchE1ycBO+WiTXPBEfjxciYhF95DXlI2t1uyMExSBdqsLwaK+i764jEdAA?= =?us-ascii?q?jwOhRoLerpBIHSk9631+ev8JHPfglEnjWwba98IRmssQndqtQdjJd/JKo21h?= =?us-ascii?q?bHuGZDdf5MxWNvK1KTnhL86dm18ZV+7SleuO8v+tBZX6nicKs2UbJXDDI9M2?= =?us-ascii?q?Ao/8LrrgXMTRGO5nQHTGoblAdDDhXf4xH7WpfxtTb6tvZ41SKHM8D6Uaw4VD?= =?us-ascii?q?K/5KpwVhTmlDkIOCI48GHPi8x/kqRboA66pxdix4LYeZyZOOZicq/Ye94RWG?= =?us-ascii?q?hPUdtLVyFZH42yb5UBAeQCM+hftITxu0cCoAGiCQS2GO/j1jlFjWL2060g1O?= =?us-ascii?q?QhFBnL0RAkH90Qv3XbstX0P7oXX+Cy0abH1zPDYO1I2Tzg74XHaBQhru+DXL?= =?us-ascii?q?1uccvd00ovFwTYgVqKr4zqIS2V2/8Ks2iB9eVvSeavhHA9pw5tpTivw94hh4?= =?us-ascii?q?/UjYwW0lDJ7Tt1zJs6KNGiVkJ2bsSoHIVRui2AOIZ6X9suT3xntSon0LEKpJ?= =?us-ascii?q?G2cSkQxJg62hLSauaLf5aV7h/lSe2fOy13hGh/d7K6nxuy8Vavyun7VsSs3l?= =?us-ascii?q?lEsypLn8TRun0JzRLe9tSLRuVn8ki/xzmP0hvT6u5eLUAxj6XbKpohzqQ1lp?= =?us-ascii?q?oStUTPBi72mEPog6+Kbkgo5PWk5uv9brn4qZKQLZF4hwDkPqkhh8CzGeE4PR?= =?us-ascii?q?IPX2if9+S8zrrj/UjhTbpQiv05jKbYv47aJMgBpa65BBJa3Zwl6xmhETery9?= =?us-ascii?q?MYnWMdI11ZfBKIkZLlNE3JIPD9Ffu/mUijkC93x/DaOb3sGo7NIWXYkLr6Yb?= =?us-ascii?q?Z861JTyAo0zdxF4ZJUEasOLOj8Wk/2qtzSFgU5PBCsw+b7FNV90ZsTWXmRDa?= =?us-ascii?q?+dMaPSt0KI5+00LumQZI4apDb9K/8/6/7oln82g0URfaau3ZsJOziEGaF9Lk?= =?us-ascii?q?GYZ2f8qssQGmcN+AwlRarlj0PRfyRUYiObW68s6yBzK4WqBIHOWMj5ibiMzC?= =?us-ascii?q?qqWJ5RamlAB06kFm3hfIGJHfwLbXTBcYdajjUYWO35GMca3ha0uVq/kuI/dL?= =?us-ascii?q?CG8zAEtZ/lyNl+7vHSkhd37zFvEsCByD7dHVxPsElTbAcfhPw5rEF40VjF1K?= =?us-ascii?q?F5h7pdFNgAr/9KUwJvLZfH1KQ6ENH9XAvdY82EAEirWNSoADw9D5oxztYCbl?= =?us-ascii?q?w7GoCKiQrK1C6nRbQSkrE=3D?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0ACAQDizPValykaGNZcGQEBAQEBAQE?= =?us-ascii?q?BAQEBAQcBAQEBAYMYKIFfKIxUi1eDKBqOZDGGGAuEbIMsNxUBAgEBAQEBAQI?= =?us-ascii?q?BEwEBAQEBBhgGSwyCNSQBgnwZAQE3AVV7gyMqgVcDAQGrKoJWM4JvAQEFhU6?= =?us-ascii?q?CQAiIWAGBID+BD4JWinyHOoU+izwHAoFljGwCiBeEUiuCAI4LAgQCBAUCEwG?= =?us-ascii?q?BJTKBdDMaBB+DE4IUDA4JEYM0ilVskRwBAQ?= X-IPAS-Result: =?us-ascii?q?A0ACAQDizPValykaGNZcGQEBAQEBAQEBAQEBAQcBAQEBA?= =?us-ascii?q?YMYKIFfKIxUi1eDKBqOZDGGGAuEbIMsNxUBAgEBAQEBAQIBEwEBAQEBBhgGS?= =?us-ascii?q?wyCNSQBgnwZAQE3AVV7gyMqgVcDAQGrKoJWM4JvAQEFhU6CQAiIWAGBID+BD?= =?us-ascii?q?4JWinyHOoU+izwHAoFljGwCiBeEUiuCAI4LAgQCBAUCEwGBJTKBdDMaBB+DE?= =?us-ascii?q?4IUDA4JEYM0ilVskRwBAQ?= X-IronPort-AV: E=Sophos;i="5.49,389,1520899200"; d="scan'208";a="11705878" X-IronPort-Outbreak-Status: No, level 0, Unknown - Unknown Received: from uphb3cpa02.eemsg.mail.mil (HELO USFB19PA02.eemsg.mail.mil) ([214.24.26.41]) by EMSM-GH1-UEA10.NCSC.MIL with ESMTP; 11 May 2018 17:05:54 +0000 X-EEMSG-check-005: 0 X-EEMSG-check-006: 000-001;cd9db537-7806-47e1-8ac3-3e4b87a44fd0 Received: from localhost.localdomain (localhost [127.0.0.1]) by USFBF3ID06.oob.disa.mil (Postfix) with SMTP id 40jGgy3xccz2Dblg; Fri, 11 May 2018 17:05:50 +0000 (UTC) Received: from USFB3CPA04_EEMSG_MP26.eemsg.mil (unknown [192.168.16.21]) by USFBF3ID06.oob.disa.mil (Postfix) with ESMTP id 40jGgy1SPzz2Dblf; Fri, 11 May 2018 17:05:50 +0000 (UTC) Authentication-Results: USFB3CPA04.eemsg.mail.mil; dkim=pass (signature verified) header.i=@oracle.com X-EEMSG-check-008: 15753338|USFB3CPA04_EEMSG_MP26.csd.disa.mil X-EEMSG-SBRS: 3.5 X-EEMSG-ORIG-IP: 141.146.126.78 X-EEMSG-check-002: true X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0AFAQDUyfVah05+ko1bGQEBAQEBAQEBAQEBAQcBAQEBAYMYggcoi3Zei1c6ggpkGo5kMYQggXgLE4RZgwshNBgBAgEBAQEBAQIUAQEBCA0JCCgjDIVWGQEBNwGBUIMjKoFXBAGrKYJWM4JvAQEFhU6CQAiIJTMBgSA/gQ+CVop8hzqFPos7BwKBZYxsAogVhFIrkAgCBAIEBQITAYElHIIKMxoEH4MTghQMDgkRgzSKVWyREQEB X-IPAS-Result: A0AFAQDUyfVah05+ko1bGQEBAQEBAQEBAQEBAQcBAQEBAYMYggcoi3Zei1c6ggpkGo5kMYQggXgLE4RZgwshNBgBAgEBAQEBAQIUAQEBCA0JCCgjDIVWGQEBNwGBUIMjKoFXBAGrKYJWM4JvAQEFhU6CQAiIJTMBgSA/gQ+CVop8hzqFPos7BwKBZYxsAogVhFIrkAgCBAIEBQITAYElHIIKMxoEH4MTghQMDgkRgzSKVWyREQEB Received: from aserp2120.oracle.com ([141.146.126.78]) by USFB3CPA04.eemsg.mail.mil with ESMTP; 11 May 2018 17:05:49 +0000 Received: from pps.filterd (aserp2120.oracle.com [127.0.0.1]) by aserp2120.oracle.com (8.16.0.22/8.16.0.22) with SMTP id w4BH21hD075215; Fri, 11 May 2018 17:05:42 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id; s=corp-2017-10-26; bh=ujzIIAHDqF0MKiA55hAhyfxoHYxEHk75Y1NDgkK+iEI=; b=giqtqLwl5gOM10DCeymMfardE1Tg12f3S91BE8y7o9/94+q5ukNaefgXwtVdAwVPZV4T OXGDBFzYHiZDC4HsAe4vDjCvExkiyULRw8t1iek/d6yzYrjS1np2GUceZu+SgKwyvy/r nL4rVeIgP9Eh5rVJPBLm/s5LOM7GDb5cJXWjKf7XwNKF3AOOguveTPqlLLTNXAe5+HIc hs95hvGCohst0k09yeMQKOsoybtHyXv3YfjUh2PnZwOBDqWp2EkBgGDVJuNktOkAj/z5 6/VKOAlJ7jT9CYBBw0ltPBScR9TVeLBwOTSvi8Xf3NDxJYNtyW7lTqB9kqTQ7Tfa37U7 ag== Received: from userv0021.oracle.com (userv0021.oracle.com [156.151.31.71]) by aserp2120.oracle.com with ESMTP id 2hwd7drj11-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 11 May 2018 17:05:42 +0000 Received: from aserv0121.oracle.com (aserv0121.oracle.com [141.146.126.235]) by userv0021.oracle.com (8.14.4/8.14.4) with ESMTP id w4BH5exx008704 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 11 May 2018 17:05:41 GMT Received: from abhmp0015.oracle.com (abhmp0015.oracle.com [141.146.116.21]) by aserv0121.oracle.com (8.14.4/8.13.8) with ESMTP id w4BH5dmv019953; Fri, 11 May 2018 17:05:39 GMT Received: from ak.ru.oracle.com (/10.162.80.29) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Fri, 11 May 2018 10:05:39 -0700 X-EEMSG-check-009: 444-444 From: Alexey Kodanev To: selinux@tycho.nsa.gov Date: Fri, 11 May 2018 20:15:11 +0300 Message-Id: <1526058913-14198-1-git-send-email-alexey.kodanev@oracle.com> X-Mailer: git-send-email 1.7.1 X-Proofpoint-Virus-Version: vendor=nai engine=5900 definitions=8890 signatures=668698 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=13 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 mlxscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1711220000 definitions=main-1805110159 X-Mailman-Approved-At: Fri, 11 May 2018 13:10:11 -0400 Subject: [PATCH v2 1/3] selinux: add AF_UNSPEC and INADDR_ANY checks to selinux_socket_bind() 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: Cc: Alexey Kodanev , netdev , linux-security-module@vger.kernel.org, Stephen Smalley Errors-To: selinux-bounces@tycho.nsa.gov Sender: "Selinux" X-Virus-Scanned: ClamAV using ClamSMTP Commit d452930fd3b9 ("selinux: Add SCTP support") breaks compatibility with the old programs that can pass sockaddr_in structure with AF_UNSPEC and INADDR_ANY to bind(). As a result, bind() returns EAFNOSUPPORT error. This was found with LTP/asapi_01 test. Similar to commit 29c486df6a20 ("net: ipv4: relax AF_INET check in bind()"), which relaxed AF_INET check for compatibility, add AF_UNSPEC case to AF_INET and make sure that the address is INADDR_ANY. Fixes: d452930fd3b9 ("selinux: Add SCTP support") Signed-off-by: Alexey Kodanev --- v2: As suggested by Paul: * return EINVAL for SCTP socket if sa_family is AF_UNSPEC and address is not INADDR_ANY * add new 'sa_family' variable so that it equals either AF_INET or AF_INET6. Besides, it it will be used in the next patch that fixes audit record. security/selinux/hooks.c | 29 +++++++++++++++++++---------- 1 file changed, 19 insertions(+), 10 deletions(-) diff --git a/security/selinux/hooks.c b/security/selinux/hooks.c index 4cafe6a..1ed7004 100644 --- a/security/selinux/hooks.c +++ b/security/selinux/hooks.c @@ -4576,6 +4576,7 @@ static int selinux_socket_post_create(struct socket *sock, int family, static int selinux_socket_bind(struct socket *sock, struct sockaddr *address, int addrlen) { struct sock *sk = sock->sk; + struct sk_security_struct *sksec = sk->sk_security; u16 family; int err; @@ -4587,11 +4588,11 @@ static int selinux_socket_bind(struct socket *sock, struct sockaddr *address, in family = sk->sk_family; if (family == PF_INET || family == PF_INET6) { char *addrp; - struct sk_security_struct *sksec = sk->sk_security; struct common_audit_data ad; struct lsm_network_audit net = {0,}; struct sockaddr_in *addr4 = NULL; struct sockaddr_in6 *addr6 = NULL; + u16 family_sa = address->sa_family; unsigned short snum; u32 sid, node_perm; @@ -4601,11 +4602,20 @@ static int selinux_socket_bind(struct socket *sock, struct sockaddr *address, in * need to check address->sa_family as it is possible to have * sk->sk_family = PF_INET6 with addr->sa_family = AF_INET. */ - switch (address->sa_family) { + switch (family_sa) { + case AF_UNSPEC: case AF_INET: if (addrlen < sizeof(struct sockaddr_in)) return -EINVAL; addr4 = (struct sockaddr_in *)address; + if (family_sa == AF_UNSPEC) { + /* see __inet_bind(), we only want to allow + * AF_UNSPEC if the address is INADDR_ANY + */ + if (addr4->sin_addr.s_addr != htonl(INADDR_ANY)) + goto err_af; + family_sa = AF_INET; + } snum = ntohs(addr4->sin_port); addrp = (char *)&addr4->sin_addr.s_addr; break; @@ -4617,13 +4627,7 @@ static int selinux_socket_bind(struct socket *sock, struct sockaddr *address, in addrp = (char *)&addr6->sin6_addr.s6_addr; break; default: - /* Note that SCTP services expect -EINVAL, whereas - * others expect -EAFNOSUPPORT. - */ - if (sksec->sclass == SECCLASS_SCTP_SOCKET) - return -EINVAL; - else - return -EAFNOSUPPORT; + goto err_af; } if (snum) { @@ -4681,7 +4685,7 @@ static int selinux_socket_bind(struct socket *sock, struct sockaddr *address, in ad.u.net->sport = htons(snum); ad.u.net->family = family; - if (address->sa_family == AF_INET) + if (family_sa == AF_INET) ad.u.net->v4info.saddr = addr4->sin_addr.s_addr; else ad.u.net->v6info.saddr = addr6->sin6_addr; @@ -4694,6 +4698,11 @@ static int selinux_socket_bind(struct socket *sock, struct sockaddr *address, in } out: return err; +err_af: + /* Note that SCTP services expect -EINVAL, others -EAFNOSUPPORT. */ + if (sksec->sclass == SECCLASS_SCTP_SOCKET) + return -EINVAL; + return -EAFNOSUPPORT; } /* This supports connect(2) and SCTP connect services such as sctp_connectx(3)