From patchwork Mon Dec 4 10:44:54 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tetsuo Handa X-Patchwork-Id: 10090241 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 A90C360329 for ; Mon, 4 Dec 2017 13:24:11 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id A2ABE28E2D for ; Mon, 4 Dec 2017 13:24:11 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 973AB28E2F; Mon, 4 Dec 2017 13:24:11 +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=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 AAA8128E2E for ; Mon, 4 Dec 2017 13:24:10 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.45,359,1508803200"; d="scan'208";a="583595975" Received: from emsm-gh1-uea10.ncsc.mil ([214.29.60.2]) by ucol19pa09.eemsg.mail.mil with ESMTP/TLS/AES256-SHA; 04 Dec 2017 13:24:09 +0000 X-IronPort-AV: E=Sophos;i="5.45,359,1508803200"; d="scan'208";a="6399857" IronPort-PHdr: =?us-ascii?q?9a23=3AhBu6WBXWtyEm/cY4/+hK78fCyxjV8LGtZVwlr6E/?= =?us-ascii?q?grcLSJyIuqrYYRKOv6dThVPEFb/W9+hDw7KP9fy4ACpZu93d4DgrS99lb1c9k8?= =?us-ascii?q?IYnggtUoauKHbQC7rUVRE8B9lIT1R//nu2YgB/Ecf6YEDO8DXptWZBUhrwOhBo?= =?us-ascii?q?KevrB4Xck9q41/yo+53Ufg5EmCexbal9IRmqsAndrNQajZVtJqs+yRbCv2dFdf?= =?us-ascii?q?lRyW50P1yYggzy5t23/J5t8iRQv+wu+stdWqjkfKo2UKJVAi0+P286+MPkux/D?= =?us-ascii?q?TRCS5nQHSWUZjgBIAwne4x7kWJr6rzb3ufB82CmeOs32UKw0VDG/5KplVBPklC?= =?us-ascii?q?EKPCM3/2HNjsx7kbxVrhSvqRdix4LYeZyZOOZ7cq7bYNgUR3dOXtxJWiJfAo28?= =?us-ascii?q?YYkAAekGM+ZcoYfyqEcBowamBQSuGe/ixCFHhmTt0K0mz+gsCx3K0RY8E94Qtn?= =?us-ascii?q?nfsdX7NL0VUeCw1KTG0yvMb+9N2Tfg74jDbxIvruuKXb1ta8Xa1E4iFxvbgVWW?= =?us-ascii?q?pozlIjKV1uIUv2iY8eVgT+SvhHAjqwxqozij38Msio7Xho0L0FzE7j92wIUoJd?= =?us-ascii?q?2iUkF3e9ikH4VKuyGYL4t7W8UvSHxrtiYi0rAKpJG2cScQxJkn2hLTceKLfoeW?= =?us-ascii?q?7h75SeqdOSp0iGxkdb6lgxu//lKsx+n4W8WuzVpHrShIn9/RvX4XzRPT8NKISv?= =?us-ascii?q?5l80ek3jaAyh7c5/lfIUAxiarbM5khwqMslpYLsUTMACv2mELuga+KbEok4Omo?= =?us-ascii?q?6/n8Yrn8up+dN5N7igH5Mqg0nMywHf84PRQUU2ie+OS80KXv/Uz/QLpUkv07ir?= =?us-ascii?q?TVvZ/VKMgBpqO1HhVZ3pgs5hqhFTuqzcwUnXwdI1JEfBKHgZLpO1bLIP3gFvew?= =?us-ascii?q?nVCskDZtx/DbMbztG47CLn/ekLfnYbly9VVcxREvzdFf+51UCrYBLOj1Wk/qrt?= =?us-ascii?q?PUFBA5Mwuqw+r/EtVyypseWX6TAq+eKK7Ss1iI5uQ1LOmQZI8aojD9JuMn5/7p?= =?us-ascii?q?i385nEUSfbK13ZQJcnC4Be5qI0KDYXrjmt0BC3sFvhIiTOz2j12PSTxTZ3SoUK?= =?us-ascii?q?0g5TE7E4WmDYHCRoCzm7GB0iO7HoBZZ29dF1CMF2vod5ieV/cLciKSLddrkiYY?= =?us-ascii?q?Wri5V48hyRauuRfiy7V5NeXb5CsYtZP/1Nhy/ODTlA89+iJqAMiH1GGNVW50lH?= =?us-ascii?q?sSRzAqxKB/vVB9ylCb3KdlhPxYE9pT6O5XXQc+NJ7R1PZ1BM7oWgLGZNuJT0ym?= =?us-ascii?q?Qtq+CzErUt0x28MOY1p6G9i6kx/DwzClA6UOmrOXA5w0977T0GLqJ8Zh0XrG0r?= =?us-ascii?q?cuj0U+SMtVKWKmnrJ/9xTUB4PRkkWZkbqqeroY3CHT8WeM03aOvFtYUQNrVqXF?= =?us-ascii?q?RW4QZk3Trdvj50PCS6ShCbMoMwdbzs6CMKRKYMXzjVpaXPfjJMjeY2WplmawBB?= =?us-ascii?q?eIwbWMYZHve2UZxSndCU4EnxoV/XmcLwg+BSaho3zAAzB0E1LgfV/s+/FkqHyn?= =?us-ascii?q?Vk800x2Kb0p52ru7+x4VgfmcRO0J3r8fticutSh7HFGn393ME9qAvQ1hfKdCbt?= =?us-ascii?q?wh/FdLz2XZtxZyPpa4NaBtmkYecxhrv0Ppzxh3BJ9AntIsrHw2zQpyMrmV0FZZ?= =?us-ascii?q?dzOZxJzwIbPWKnLo8BCoca7W1UnU0MyK9acX9PQ4t1LjsRmqFkU48HVn1MRV3m?= =?us-ascii?q?Cf5prQDwoSVo/xXlww9xhgqLHQejM96J/M1X1wLam0tSfP1Mg0C+s/yxavYc1f?= =?us-ascii?q?PbieGwDuFs0WHc+uKPYlm1KxdBILIPhS9LIoP8Ohb/aJxLSkPOJ+kzK9kWRG4I?= =?us-ascii?q?d931mX9yVgS+7HwZAFw+2Z3gSdTTv8ikmustzvk4BeeT4SBna/yTTjBINJfK19?= =?us-ascii?q?YJsEBHyhI82yydRynZjtVGBE9FS7HVMJxNepeQaOb1z6xQBQzkoXoWagmSuj0z?= =?us-ascii?q?x5iCoprqyY3C3AxuTtbhwHNnRNRGZ8kVfmOZK0gMwCXEi0cwgpkwOo5EjgyKhf?= =?us-ascii?q?uKRwMXPTQVxTcijoMW5iSLC/tqeHY8JV75MoqypXWvymYV+GUr79vwca0yT7Em?= =?us-ascii?q?tC2T80ajCqtY/9nxFhlG2dK3Nzo2bDdsFr2RfT/trcSuBN3jAeXil3lSHXBkSg?= =?us-ascii?q?P9mu5diUiZbDvfyiV2KmTJ1fazXkzYOHtCu96m1nGhm/n/G1mtL9Cwg61jX319?= =?us-ascii?q?5wVSXHtBz8eJXk17ymMeJ7eUllHFv868thGoFii4cwn48f2XwbhpWT4HoGnnz+?= =?us-ascii?q?Mc5D2aL/anoNRCIEw8XP7AjjxkJjMmqDx5jlWXWF3sthe966b3sM2iI668BKDL?= =?us-ascii?q?mb7KZYkityrFu1thnRYeVhkTcG0/cu72Qag+4Rsgo30iqdGqwSHVVfPSH0lBSH?= =?us-ascii?q?8da+rL5MaWasb7ew0lF+nda/A7GeuA1cX2z5epg6Fy9q8sp/KE7M0GH06oz8YN?= =?us-ascii?q?nfd88TthmKnBfYledVLo4xmeQQhSd8JGL9pmMqy/QgjRB0xpG6u5WHK39x862n?= =?us-ascii?q?DB5YMSf1Z8wN9T33i6ZRgNqW1Zi1Hpp9AjULQIfoTfWwHTIMs/ToKh2DECM6qn?= =?us-ascii?q?iGGbrTBwmf51l6r3jXCZCkK2mXJGUFzdVlXBSdPFZQgB0QXDghgpE5Fxyqxcz4?= =?us-ascii?q?fEd3/D8R4ET0qhxWyuJnLxP/SHvQpB+0ajcoT5iSNBlW7wFG50jLKsGe6+VzHy?= =?us-ascii?q?9W/pK/sAyNNmybZwNNDW4XQECEAU7sPqW279na7+eYHva+L+fJYbiWp+xRTfGI?= =?us-ascii?q?xY6o0otj5DuMONuAMWRlD/0hwEVDRWp5G8PbmzoRVyMXizjBb8mBpBez4id3tN?= =?us-ascii?q?yw8Oz3WALz4ouCE6FSPc9h+hyshKeMLeqQhCF5KDtDzJwD2XrIxKIY3F4IhCFk?= =?us-ascii?q?byOtHqgYtS7RUKLQnbdaDxABayxtKcRI9Lgz3g9ROc7ckdP4zaR3geIwC1tfUl?= =?us-ascii?q?zhgM6pb9QQI26hLFPHGFqLNLOeKD3N2cH4e7u8SaVLgeVath2woy2bE1PtPjSC?= =?us-ascii?q?kTnmTRavPv1NjC6BOBxSooa9cgxiCWL7VtLpdgW7MMNrjT0x2bA7nWjFOWkYMT?= =?us-ascii?q?h9aENNsqaQ4TlDgvphB2NN9GFlIveAmyaY6enYN5kXvOB3DSV0jeJa/W86x6Fb?= =?us-ascii?q?7S5eWPx1gyzSrth0r1GhiOmPxSJtUABSpTZTmIKLoUJiNL3f9plBXXbE+AwC7X?= =?us-ascii?q?6LBhsQudRlENrvt7pXytjVm6L5MC1C/M7M/csAG8jUL9qKP2EgMRrmHz7UChAI?= =?us-ascii?q?QiO1Om7EhkxSiveS+meSrpggpZjmgIAORaNDVFwpCvMaDVxoE8YNIJhtQDMrj6?= =?us-ascii?q?WWjMkQ5XWgqhnRQd9VvpHDVv2JBvXuJyyVjb5eZxsH2bn4N5gcNpXn20x+bVl3?= =?us-ascii?q?hJjKG03VXdxXuC1haQ41r1tL8HdlVG0z3FzqagC27XAPEv60mwI5hRFlYeQx7j?= =?us-ascii?q?vs5Uk4JkbSrisqjEYxgcnlgSyWcDPpKqe/Q5tZCy7vukgyNZP7WBp1Yhe0nUx/?= =?us-ascii?q?NzfERqhdj71+emB3kAXco4dAGeZATa1YZx8d3euXaOsz0VtCsCqn31NI5eveBJ?= =?us-ascii?q?R5lQsqa4Ojr3VO2wJ7dt46O6zRKLBPzldOmqKEpjWo2fwpwA8CO0YN93ufdzMS?= =?us-ascii?q?t0wWN7kpOjGo8/d25gyYgTtDf2YNV+E0rf1260M9IeWAzz7g0rJZLEC+KfCfJb?= =?us-ascii?q?uDu2fcjc6IXk8w1kQQmklB+rh2y9ksc0yVVkAo17aRGBIJNdfYJQFSdcpS+2DZ?= =?us-ascii?q?fTySvuXV3ZJ1I4K9G/jzTeCQsKYUg0SkHBsmHokX8ssBGZys313CIsf8ML4J0x?= =?us-ascii?q?Mt6xr3JF+dFvRGZAqLkCsbo8G41JJ4wJVSJjQaAWV7LSW7+63aphE0j/qZXdc3?= =?us-ascii?q?Y3AaXo0eOnIwRsK6hzZTv25cAzmvzuIZ1A+C4ifgpiTRCTn8aMZjZPeUZB53Fd?= =?us-ascii?q?62+DU+/LKthlLN9JXROX36P8x4utDT8eMau4qHC/RMQLZnt0fcmpVXSGKyXG7K?= =?us-ascii?q?Ed+1IZ/wa482YtHvEXm6U0awizQsQ8f/IdahNK6Ijh/0RYxMqomUwCgjNdOhFj?= =?us-ascii?q?EZAxp/vP8M5KRnaAIZfpU7fwDntx4lN6OlOgeZ0s+iQ2G3KTtZV/Nf1/m1Z6RL?= =?us-ascii?q?zyowae+30GEgTpc7z+ar8U4NQ5UKjgrGy/i6eodQSzT+FHtGdgrToio5knRuOf?= =?us-ascii?q?wpwucj2h/It0cTMyyTfuxzdGNEp808BU+VIXhuFmU4RUWTgpbY7wGw2LAS+y9d?= =?us-ascii?q?n9dK3u1frHjxoIPQYDK2VKyss5XVvDIqbcI6rK1pLYzjPsyGuYvEnjPFVpnQtR?= =?us-ascii?q?aKXTWmF/pAgNdQPjxXQP1JmWEjNswGvYtB6UUxVsciKbxAErMsprWwZTpiEyES?= =?us-ascii?q?0TcTV5mc0zwanue8x7zamw+ecZg4LBMEsJRCgt4cUyFsYSMTv66jWJvImGCaUG?= =?us-ascii?q?QLJx0T7QtU7gIaioBwZvzl4JbPTJJUzj5Zueh0UijVGZl09lv7TG6WjEP2Sfq7?= =?us-ascii?q?leymwQZSzPXx0tYGQx5zE05dyPhKlkEwMrF4N7EQvpLWsj+PbU76pGXtyO+8K1?= =?us-ascii?q?lLx8zUcFn4DITeuGr5VS0c/mYUSpFTx3HFEpQSiBF5aKctpFVDOoymfVz+5zM8?= =?us-ascii?q?zYRzA7a4Tdyrx0oirXseXSiqCcdBC+d8vFLUQzBlYpGrqJT5O5pJWGNQ/oOSq0?= =?us-ascii?q?tBmkV3LyG50YZcK91K4jMUQDhPpjCdscCuSMFf3M95FIUAItFhtHfhAKlEIoSe?= =?us-ascii?q?o2UqurzzzX/U4zA8v02gxDqpH6+3UvlU8HAAFQUxP2SRtE0vAPU28mvI9VDNqF?= =?us-ascii?q?909f9BBreTlUVxvCp9HpdWCzZL0nCqMU9+Q2RYvOVBNqvVadBcTOcvahO1PRwx?= =?us-ascii?q?C+Im1VST/U5ohXf5fzBytgxC9i/GUQk7STUZj7XwlTAQscyoJTgaS5dUYjo7dC?= =?us-ascii?q?fFNxiXmSZJsxZDc0tqQYwWAs5Z+7EH2otZ5tDCRlixJiEFRhNiKhk10f5YlU5d?= =?us-ascii?q?rkqUZzzSDQ21evnRqBF3e9merNKxJvTj4AhHkp/nsPw/96gbX32mghGtTsrDoI?= =?us-ascii?q?/grdCKrUyOdLriM+Kgf3DBSiTMjQqqircgFZXK+DLTMAVDIZlg1XUkeYThCXLM?= =?us-ascii?q?PRleO6IbPVRUWr5nZthdv+BaY9NkeLwT9q9zBxKHQRfvF5KzrPVcKVbTXzveJT?= =?us-ascii?q?2b8uOjuYLT8aDdSe/4a8yJ3XnHR6Z3MYlm6TnnAbjly5RT+kzo1fdx7UN1VULJ?= =?us-ascii?q?Mzifo9j7IAME+tWifFP4vpI1BTPWHItwkH31y0FCbcUXWSqq8I8cyJxD9nb9Uu?= =?us-ascii?q?d40lX3sO1O9rlr9Yg37KpvycevP6vSLu5asUB/CBiOGgpq7oktAHR4R21JYO8e?= =?us-ascii?q?MvHRfaoDjcDptu/4Cbca6AGP9OxfctvHIFvNms+hBTGAURZEhhsOqSYGLguA0P?= =?us-ascii?q?6Ig6B0Sdukpej93kIi/V2+IwUbw79z/oiE+7CHpOnNYxvW17gEVbDgRtnvobQ0?= =?us-ascii?q?p0OS+fokmaYMemx0Zg2qC+0dWdAdx2j+16AqzCQsE8zZE7Lm5vFDS2oznij8lJ?= =?us-ascii?q?BlA1UWBvQUEKKN/YRahWo4murZNtgMfqBDnGaPGwSkHaUZyX638SuXPXVqgg3T?= =?us-ascii?q?0xHqX2y/9lj2rTV3QSHU1dfsjlJVVqWrBUdVRyepPEh4sDWTPArnqtX6oqE17E?= =?us-ascii?q?AsPWziqt2NiGWgOLRNH838P9yQOy80q0wLjJcpXNygxZgbGcahINcW6Hx+auDe?= =?us-ascii?q?62arniJaradImZfR4saP+vrNBXmglaqaq7eTyz9E1ng0p1Y/6sqvNvvW/d2FX+?= =?us-ascii?q?yo13oNTyd4owbBXh+0pabBoF8IIkGLy1nEmJAUMd5Fx3U40Vvm5Oc7StIp6Ape?= =?us-ascii?q?DprAZ+8FpT3rIzT0wE2fYtwtWSmc0jtXAkr1HkNlGKg4w2//oMXJmmrO9FIyW4?= =?us-ascii?q?lwbUvnhQZtAIkiLkIt8lcXyDIZEQcRcRCbEK2oBUP9IIscT0cDdQiI3Li0e6cw?= =?us-ascii?q?x01zwaqj5PTNYux4BqoNMOtdjwGVkVhDAJ0WrbERQLJyel9a7q7XpRLuC4v5UP?= =?us-ascii?q?j8k3o/K/m1Ttpd8cADuHso+hy/SAa46Zdf87Ybj4iFdqFebpjWos9880dn6CUL?= =?us-ascii?q?dixMnBhwkRO5XvoBpOD4+NTbtoSn6vq2XqY3W+oX7wQ0B3h5j5boj1Asv9fX1/?= =?us-ascii?q?tbSo3Sjoj/6x5CI3qLuIbczhl9JvEDK4a1c7Z693QIPTISJ3QQMtqKc/M8+TNi?= =?us-ascii?q?MC3P51xeBcMBfdUYPMvRlgBTjk3mQqpT+tDaGl+fDIdzbNso4nHyyD06/powSO?= =?us-ascii?q?Hg6CW5JZrH9VFCI+tDjDlwlNLFvOUVzubdCDMM4XWAdhZ7zSWMy5iLC/bt8uSB?= =?us-ascii?q?097UV1YcES4wTYhRPj2C+RaoRuCtjpXmThuU6tPvgJI5bE+QRHuxnKQDsqpWDe?= =?us-ascii?q?FAiiH73iVDGYH0hvKVtcGs6GhWtlBcDoZz7APFF79bPppmOBT0jM+rSVZgBiHn?= =?us-ascii?q?YsHbagIuuPaKxucL++h+NlX+apUdIh8fz7L69GdaTgppSL7tpFqZWvgRZNR+Qv?= =?us-ascii?q?Pesn9V8Z5gK7MIPFWFppzlsDlIqF4yAAIyZr4/tDpaeVfSnAFPXab7pqIAgBMG?= =?us-ascii?q?UdFloU9MBX6wOGUm6jrIUaRVi6eQB+IR8jWXVaEOSEJoMiV/QxypwplufaWmne?= =?us-ascii?q?xfuGNcgix9uOQq0yBhRBakuy3sp6IM2Son+LG8tTUBpWJKQ/6bkyfJFVVD1uoF?= =?us-ascii?q?gb0bC3b45ly2eGMDY5fq4Ll7OcTg8pEs42g+YRUmZCAGQeWgBD3zj6yWBoyDqt?= =?us-ascii?q?RciwCRuM/Wd7+8MTASNqghyRLkX3V91wnenBVr8GsMWTig7sUrJIa6OcYj2CWo?= =?us-ascii?q?H3LXdFAS7aNVqMHxr0IETPMqaVN9x2VuytOISTMLRMzTAGs1lQwkaWJYcJJf9x?= =?us-ascii?q?8VCbQnjiyPvqlc8QEeeC3UHZi9+onMgcfI3mEwTdl0yWLSp62Fno0l3WZkmtN1?= =?us-ascii?q?6y6OvWodd/bcU8ByGHTz0Z1fyePmbfW3ru8HUJdmyKimUPIaPMij4XG22JR2VU?= =?us-ascii?q?C73bkeGlu5MPMZxrjFSSulTneYWeuTeWiWgzk5KlLy5QWvLlAvb8dKq1EyP/Da?= =?us-ascii?q?hp5YjQLhSq90RiSMql/H1mwsL/0VexgwuIi5ZwwAVPQRaPSEJegy3P0+D0MBb3?= =?us-ascii?q?vIHStwFu+3vkehnIx6O3V7/UX6ev/g8gH8P9uUHRkIC4naroR++faiXGKOJWdg?= =?us-ascii?q?zAFuPElz7+rfEk4+ufNcc5aQm9jQgM920fAEd/drLyI9vt8TmoR+6YibysuKdg?= =?us-ascii?q?vRzpnqL9HPvveYG+Hfz1gtemxCULoWewD154IhMdMiRr3TG6dZvRQbBagnT5wh?= =?us-ascii?q?N3vx+LtyLAxtbg7bfK60jdXypuKXeptUoGfb7lA1LCfboR0D0P20TRdgYpCsnX?= =?us-ascii?q?ryJY4/RjNbo91qEBtmE5NFG9kcoAq/H56UhKa7hseq+0N0vu8Frav9B/PR2dSn?= =?us-ascii?q?wYpxRZla5E2MPDbXHqVrhFpqjvjhysvHh5v4DM75P9dCUe9hWG/eQrjcF467J3?= =?us-ascii?q?SFPcevVVRB9uug3a5iTxLZRCn/U6PO4DWpMvp54EN+yYFieufX5D1o67bF1Z3p?= =?us-ascii?q?bmJGvC7lq3PPNoMJvw+CPvDXQx8BEanNy21iB6BCKNKs+Q=3D=3D?= X-IPAS-Result: =?us-ascii?q?A2AKAgDvSyVa/wHyM5BcGQEBAQEBAQEBAQEBAQcBAQEBAYM?= =?us-ascii?q?5A4FUjzqOA0ABAQEBAQEGgTGGCpB3jQxBFgEBAQEBAQEBAQFqKII4JIJHAQIDA?= =?us-ascii?q?QI3PwMDCQEBChgmCAMBOBseihAMAQOqDYpUMoNHggqBDoIxgyuLGQEEiB0HghU?= =?us-ascii?q?Lh0KBE49TlyeKGYcnmAcmDiSBTTIagxyCTgMcgXaLAAMBAQE?= Received: from tarius.tycho.ncsc.mil ([144.51.242.1]) by EMSM-GH1-UEA10.NCSC.MIL with ESMTP; 04 Dec 2017 13:24:08 +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 vB4DO7Do027417; Mon, 4 Dec 2017 08:24:08 -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 vB4AjodY007546 for ; Mon, 4 Dec 2017 05:45:50 -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 vB4AjnOr018980; Mon, 4 Dec 2017 05:45:49 -0500 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A1ATAQCNJiVaf3IbGNZcGgEBAQEBAgEBA?= =?us-ascii?q?QEIAQEBAYM5WX6ORnSOAEMBAQEGgTGXAYIVhUUChS0/GAEBAQEBAQEBARMBAQs?= =?us-ascii?q?WhgABAgM6PxAjLh8dG4ouDASqPYpUAQEBBwEBAQEkg0GCCoEOgjGORAWIHQeCF?= =?us-ascii?q?QuHQoETj1MelwmKGYcnmAcfggYyGoMcgk4DHIF2iwkBAQE?= X-IPAS-Result: =?us-ascii?q?A1ATAQCNJiVaf3IbGNZcGgEBAQEBAgEBAQEIAQEBAYM5WX6?= =?us-ascii?q?ORnSOAEMBAQEGgTGXAYIVhUUChS0/GAEBAQEBAQEBARMBAQsWhgABAgM6PxAjL?= =?us-ascii?q?h8dG4ouDASqPYpUAQEBBwEBAQEkg0GCCoEOgjGORAWIHQeCFQuHQoETj1Melwm?= =?us-ascii?q?KGYcnmAcfggYyGoMcgk4DHIF2iwkBAQE?= X-IronPort-AV: E=Sophos;i="5.45,358,1508817600"; d="scan'208";a="137057" Received: from emsm-gh1-uea10.ncsc.mil ([214.29.60.34]) by goalie.tycho.ncsc.mil with ESMTP; 04 Dec 2017 05:45:49 -0500 IronPort-PHdr: =?us-ascii?q?9a23=3Apu9kYxYRsOS1BXSWgI2TSUj/LSx+4OfEezUN459i?= =?us-ascii?q?sYplN5qZr8q4bnLW6fgltlLVR4KTs6sC17KP9fm6EjVcqb+681k6OKRWUBEEjc?= =?us-ascii?q?hE1ycBO+WiTXPBEfjxciYhF95DXlI2t1uyMExSBdqsLwaK+i764jEdAAjwOhRo?= =?us-ascii?q?LerpBIHSk9631+ev8JHPfglEnjWwba9vIBmssAndqMYajZZtJ60s1hbHv3xEdv?= =?us-ascii?q?hMy2h1P1yThRH85smx/J5n7Stdvu8q+tBDX6vnYak2VKRUAzs6PW874s3rrgTD?= =?us-ascii?q?QhCU5nQASGUWkwFHDBbD4RrnQ5r+qCr6tu562CmHIc37SK0/VDq+46t3ThLjlS?= =?us-ascii?q?EKPCM7/m7KkMx9lL9VrgyhqRxxwYHaY4abNP5wcKzSYdwXXnZBUtpLWiBdGI6w?= =?us-ascii?q?c5UDAuwcNuhYtYn9oF4OoAOgCwayGOPv0SJIhnjr1qM4yeshFxzJ0xY9FN8JqH?= =?us-ascii?q?TbstP1NKgPUeC0yqnE1DbDYO1M2Tf79ofIdgssr/KVUbJ0dsrR11cgGxnYgFiM?= =?us-ascii?q?rILqMS+b2/gXv2id8eVsT+Cvi3Y+pgx3vzOhxd8sh5HXio4IxV3I7zt1zYkvKd?= =?us-ascii?q?GmSkN3e8OoHIZfui2CKod6XMIvT3tstSs10LELvZq2cDIXxJkkxRPSbeGMfZKS?= =?us-ascii?q?7RL5TumRJC91hHJ7d7K7gBa/6UavxPfhW8e6zVpHqjBLn8XRun0CzRDc9NaISv?= =?us-ascii?q?5m/keuwzqP0hrc6uBAIUwukKrbKpohzqYxlpoVr0vDAjf7lFvrgKKZbEko5Oel?= =?us-ascii?q?5/75brjkvJOQKpJ4hw7mPqQrgMO/AOA4MgYUX2ic/OSxzKXj8lP/QLVFk/02k6?= =?us-ascii?q?/ZvInZJcsFvK65BRFa0oI45ha+Fjum1NMYnWcZI15fYxKIlYvpO0zUIP/iF/u/?= =?us-ascii?q?hUqjnC1px/DeJrHhGInCLmDfkLf9erZw81Vcxxcozd1E+5JVCq0OIPL0WkPrst?= =?us-ascii?q?zYFQU2Pxa7w+bgFtV3zpkeVn6XAq+FLKPStkeF5vkxLOmIZY8Vviv9Kvc+6v7y?= =?us-ascii?q?jX42hV8dfa6z0ZsRc3C3BO5qI0qeYXry0Z89FjIItw8zV6ruzliFSyRSfF61Ra?= =?us-ascii?q?s34jx9A4WjXqnZQYX4vLGdxzq8Vr1fYGxPQgSUHHHnaoSCHvQBciSfJudA1zgD?= =?us-ascii?q?S7XncKYC6CuH8gn3jbh/eLmHshYEvI7ugYAmr9bYkgs/oGR5?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0ATAQBMJiVaf3IbGNZcGgEBAQEBAgEBA?= =?us-ascii?q?QEIAQEBAYM5WX6ORnSOAEMBAQEGgTGXAYIVhUUChS0/GAEBAQEBAQEBAQESAQE?= =?us-ascii?q?LFl2COCKCSQECAzo/ECMuHx0bii4MBKo9ilQBAQEHAQEBASSDQYIKgQ6CMY5EB?= =?us-ascii?q?YgdB4IVC4dCgROPUx6XCYoZhyeYBx+CBjIagxyCTgMcgXaLCQEBAQ?= X-IPAS-Result: =?us-ascii?q?A0ATAQBMJiVaf3IbGNZcGgEBAQEBAgEBAQEIAQEBAYM5WX6?= =?us-ascii?q?ORnSOAEMBAQEGgTGXAYIVhUUChS0/GAEBAQEBAQEBAQESAQELFl2COCKCSQECA?= =?us-ascii?q?zo/ECMuHx0bii4MBKo9ilQBAQEHAQEBASSDQYIKgQ6CMY5EBYgdB4IVC4dCgRO?= =?us-ascii?q?PUx6XCYoZhyeYBx+CBjIagxyCTgMcgXaLCQEBAQ?= X-IronPort-AV: E=Sophos;i="5.45,358,1508803200"; d="scan'208";a="6395227" X-IronPort-Outbreak-Status: No, level 0, Unknown - Unknown Received: from upbd19pa14.eemsg.mail.mil ([214.24.27.114]) by EMSM-GH1-UEA10.NCSC.MIL with ESMTP; 04 Dec 2017 10:45:48 +0000 X-EEMSG-check-005: 0 X-EEMSG-check-006: 000-001;f07482fe-2167-4284-8e55-95f392fcf0c9 Received: from localhost.localdomain (localhost [127.0.0.1]) by UPDCF3IC03.oob.disa.mil (Postfix) with SMTP id 3yr1kM4GtmzJn6N; Mon, 4 Dec 2017 10:45:47 +0000 (UTC) Received: from UPBD19PA01.eemsg.mil (unknown [192.168.18.2]) by UPDCF3IC03.oob.disa.mil (Postfix) with ESMTP id 3yr1kM3RhjzJn2C; Mon, 4 Dec 2017 10:45:47 +0000 (UTC) Authentication-Results: upbd19pa01.eemsg.mail.mil; dkim=neutral (message not signed) header.i=none X-EEMSG-check-008: 273572732|UPBD19PA01_EEMSG_MP1.csd.disa.mil X-EEMSG-SBRS: 2.7 X-EEMSG-ORIG-IP: 202.181.97.72 X-EEMSG-check-002: true X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0CbAQBLeB9af0hhtcpbHAEBAQQBAQoBAYQSfo5GdI19QwEBAQaBMZZ0ghGFRQKFFT8YAQEBAQEBAQEBEwEBCxZdhSABAgM6PxALGC4fHRuKLgypTYpkAQEBBwEBAQEkg0GCCYEOgjGDK4sYBYgVB4ITC4c/gROPQR6XBooWhyWXfB+CCjIagxyCTgMcgXaKXwEBAQ X-IPAS-Result: A0CbAQBLeB9af0hhtcpbHAEBAQQBAQoBAYQSfo5GdI19QwEBAQaBMZZ0ghGFRQKFFT8YAQEBAQEBAQEBEwEBCxZdhSABAgM6PxALGC4fHRuKLgypTYpkAQEBBwEBAQEkg0GCCYEOgjGDK4sYBYgVB4ITC4c/gROPQR6XBooWhyWXfB+CCjIagxyCTgMcgXaKXwEBAQ Received: from www262.sakura.ne.jp ([202.181.97.72]) by upbd19pa01.eemsg.mail.mil with ESMTP; 04 Dec 2017 10:45:44 +0000 Received: from fsav305.sakura.ne.jp (fsav305.sakura.ne.jp [153.120.85.136]) by www262.sakura.ne.jp (8.14.5/8.14.5) with ESMTP id vB4Aj1Ii077601; Mon, 4 Dec 2017 19:45:01 +0900 (JST) (envelope-from penguin-kernel@I-love.SAKURA.ne.jp) Received: from www262.sakura.ne.jp (202.181.97.72) by fsav305.sakura.ne.jp (F-Secure/fsigk_smtp/530/fsav305.sakura.ne.jp); Mon, 04 Dec 2017 19:45:01 +0900 (JST) X-Virus-Status: clean(F-Secure/fsigk_smtp/530/fsav305.sakura.ne.jp) Received: from AQUA (softbank126094099187.bbtec.net [126.94.99.187]) (authenticated bits=0) by www262.sakura.ne.jp (8.14.5/8.14.5) with ESMTP id vB4Aiu12077555; Mon, 4 Dec 2017 19:45:01 +0900 (JST) (envelope-from penguin-kernel@I-love.SAKURA.ne.jp) To: james.l.morris@oracle.com X-EEMSG-check-009: 444-444 From: Tetsuo Handa References: <001a113f711a721c58055f052200@google.com> <089e08259d282c063e055f4bddbd@google.com> <97d6bab0-d278-9945-5d82-a0a76b8b78c5@I-love.SAKURA.ne.jp> <201712032227.JCH90603.HQOOtVFMJOFLSF@I-love.SAKURA.ne.jp> In-Reply-To: Message-Id: <201712041944.HAI56745.HOFQFtJSOVMOFL@I-love.SAKURA.ne.jp> X-Mailer: Winbiff [Version 2.51 PL2] X-Accept-Language: ja,en,zh Date: Mon, 4 Dec 2017 19:44:54 +0900 Mime-Version: 1.0 X-Mailman-Approved-At: Mon, 04 Dec 2017 08:22:21 -0500 Subject: Re: KASAN: slab-out-of-bounds Read in strcmp 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: bot+015afdb01dbf2abb6a6bfdd5430b72e5503fca6d@syzkaller.appspotmail.com, syzkaller-bugs@googlegroups.com, dledford@redhat.com, linux-kernel@vger.kernel.org, linux-security-module@vger.kernel.org, mka@chromium.org, selinux@tycho.nsa.gov, junil0814.lee@lge.com, kyeongdon.kim@lge.com, sds@tycho.nsa.gov Errors-To: selinux-bounces@tycho.nsa.gov Sender: "Selinux" X-Virus-Scanned: ClamAV using ClamSMTP James Morris wrote: > On Sun, 3 Dec 2017, Tetsuo Handa wrote: > > > Tetsuo Handa wrote: > > > which will allow strcmp() to trigger out of bound read when "size" is > > > larger than strlen(initial_sid_to_string[i]). > > > > Oops. "smaller" than. > > > > > > > > Thus, I guess the simplest fix is to use strncmp() instead of strcmp(). > > > > Can somebody test below patch? (My CentOS 7 environment does not support > > enabling SELinux in linux.git . Userspace tool is too old to support?) > > You mean enabling KASAN? Yep, you need gcc 4.9.2 or better. Recent > Fedora has it. I was not able to find "SELinux: Initializing." line for some reason, and it turned out that I just forgot to run "make install". ;-) I tested using debug printk() and init for built-in initramfs shown below. It is strange that KASAN does not trigger upon strcmp()ing initial_sid_to_string[1]. But anyway, my patch fixes this problem. ---------- ---------- ---------- #include #include #include #include #include #include int main(int argc, char *argv[]) { int fd; mount("/proc", "/proc", "proc", 0, NULL); fd = open("/proc/self/attr/current", O_WRONLY); write(fd, "n", 1); close(fd); return 0; } ---------- ---------- [ 7.894061] Write protecting the kernel read-only data: 71680k [ 7.899889] Freeing unused kernel memory: 1744K [ 7.923592] Freeing unused kernel memory: 1832K [ 7.926960] setprocattr current=0 size=1 [ 7.928253] Comparing with kernel [ 7.929350] Comparing with security [ 7.930457] Comparing with unlabeled [ 7.931581] Comparing with fs [ 7.932538] Comparing with file [ 7.933537] Comparing with file_labels [ 7.934720] Comparing with init [ 7.935719] Comparing with any_socket [ 7.936866] Comparing with port [ 7.937874] Comparing with netif [ 7.938965] ================================================================== [ 7.941183] BUG: KASAN: slab-out-of-bounds in strcmp+0x96/0xb0 [ 7.942957] Read of size 1 at addr ffff8801145a5441 by task init/1 [ 7.944832] [ 7.945349] CPU: 2 PID: 1 Comm: init Not tainted 4.15.0-rc2+ #323 [ 7.947177] Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 07/02/2015 [ 7.950331] Call Trace: [ 7.951133] dump_stack+0x12e/0x188 [ 7.952222] ? vprintk_default+0x28/0x30 [ 7.953431] ? strcmp+0x96/0xb0 [ 7.954421] print_address_description+0x73/0x260 [ 7.955860] ? strcmp+0x96/0xb0 [ 7.956855] kasan_report+0x22b/0x340 [ 7.957987] __asan_report_load1_noabort+0x14/0x20 [ 7.959460] strcmp+0x96/0xb0 [ 7.960408] security_context_to_sid_core+0x312/0x450 [ 7.961945] ? string_to_context_struct+0x940/0x940 [ 7.963434] ? vprintk_func+0x5e/0xc0 [ 7.964564] ? printk+0xaa/0xca [ 7.965554] ? show_regs_print_info+0x65/0x65 [ 7.966876] ? proc_pid_attr_write+0x169/0x280 [ 7.968178] security_context_to_sid+0x32/0x40 [ 7.969480] selinux_setprocattr+0x2e1/0x8f0 [ 7.970734] ? ptrace_parent_sid+0x400/0x400 [ 7.972034] security_setprocattr+0x85/0xc0 [ 7.973326] proc_pid_attr_write+0x1d8/0x280 [ 7.974638] __vfs_write+0x10d/0x610 [ 7.975746] ? comm_write+0x230/0x230 [ 7.976903] ? kernel_read+0x120/0x120 [ 7.978064] ? __might_sleep+0x95/0x190 [ 7.979266] ? rcu_read_lock_sched_held+0xa3/0x120 [ 7.980722] ? rcu_sync_lockdep_assert+0x70/0xb0 [ 7.982134] ? __sb_start_write+0x211/0x2d0 [ 7.983413] vfs_write+0x18d/0x510 [ 7.984477] SyS_write+0xd4/0x1a0 [ 7.985518] ? SyS_read+0x1a0/0x1a0 [ 7.986622] ? trace_hardirqs_on_caller+0x442/0x5c0 [ 7.988107] ? trace_hardirqs_on_thunk+0x1a/0x1c [ 7.989524] entry_SYSCALL_64_fastpath+0x1f/0x96 [ 7.990928] RIP: 0033:0x40f7a0 [ 7.991875] RSP: 002b:00007ffe20eb59c8 EFLAGS: 00000246 ORIG_RAX: 0000000000000001 [ 7.994144] RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 000000000040f7a0 [ 7.996262] RDX: 0000000000000001 RSI: 0000000000492b75 RDI: 0000000000000003 [ 7.998372] RBP: 00007ffe20eb59a0 R08: 0000000000000000 R09: 0000000000000004 [ 8.000498] R10: 0000000000000000 R11: 0000000000000246 R12: 00007ffe20eb5af8 [ 8.002629] R13: 00007ffe20eb5b08 R14: 0000000000000002 R15: 0000000000000000 [ 8.004774] [ 8.005283] Allocated by task 1: [ 8.006283] save_stack+0x46/0xd0 [ 8.007312] kasan_kmalloc+0xad/0xe0 [ 8.008417] __kmalloc_track_caller+0x192/0x760 [ 8.009804] memdup_user+0x2c/0x80 [ 8.010873] proc_pid_attr_write+0x115/0x280 [ 8.012172] __vfs_write+0x10d/0x610 [ 8.013283] vfs_write+0x18d/0x510 [ 8.014336] SyS_write+0xd4/0x1a0 [ 8.015380] entry_SYSCALL_64_fastpath+0x1f/0x96 [ 8.016793] [ 8.017302] Freed by task 1: [ 8.018211] save_stack+0x46/0xd0 [ 8.019241] kasan_slab_free+0x71/0xc0 [ 8.020389] kfree+0xca/0x250 [ 8.021317] acpi_ds_create_operand+0x45f/0x664 [ 8.022696] acpi_ds_evaluate_name_path+0x116/0x3b6 [ 8.024165] acpi_ds_exec_end_op+0x291/0xd61 [ 8.025469] acpi_ps_parse_loop+0x1338/0x13ee [ 8.026815] acpi_ps_parse_aml+0x23a/0x7f4 [ 8.028064] acpi_ps_execute_method+0x4f2/0x55f [ 8.029451] acpi_ns_evaluate+0x6ba/0x8d3 [ 8.030708] acpi_ut_evaluate_object+0x122/0x3c5 [ 8.032108] acpi_ut_execute_STA+0x84/0x15a [ 8.033390] acpi_get_object_info+0x431/0x9bd [ 8.034676] acpi_init_device_object+0xb65/0x15f0 [ 8.036040] acpi_add_single_object+0x119/0x1630 [ 8.037384] acpi_bus_check_add+0x1c7/0x520 [ 8.038656] acpi_ns_walk_namespace+0x1e0/0x346 [ 8.040029] acpi_walk_namespace+0xb5/0xef [ 8.041277] acpi_bus_scan+0xe0/0xf0 [ 8.042376] acpi_scan_init+0x258/0x5e5 [ 8.043578] acpi_init+0x650/0x6d8 [ 8.044654] do_one_initcall+0x9e/0x2c9 [ 8.045843] kernel_init_freeable+0x476/0x52a [ 8.047165] kernel_init+0x13/0x172 [ 8.048248] ret_from_fork+0x24/0x30 [ 8.049762] [ 8.050268] The buggy address belongs to the object at ffff8801145a5440 [ 8.050268] which belongs to the cache kmalloc-32 of size 32 [ 8.053780] The buggy address is located 1 bytes inside of [ 8.053780] 32-byte region [ffff8801145a5440, ffff8801145a5460) [ 8.057068] The buggy address belongs to the page: [ 8.058525] page:00000000243fc1bc count:1 mapcount:0 mapping:000000008e54372e index:0xffff8801145a5fc1 [ 8.061337] flags: 0x2fffc0000000100(slab) [ 8.062619] raw: 02fffc0000000100 ffff8801145a5000 ffff8801145a5fc1 0000000100000020 [ 8.064922] raw: ffffea0004516ca0 ffff880119c01240 ffff880119c001c0 0000000000000000 [ 8.067232] page dumped because: kasan: bad access detected [ 8.068902] [ 8.069409] Memory state around the buggy address: [ 8.070849] ffff8801145a5300: fb fb fb fb fc fc fc fc fb fb fb fb fc fc fc fc [ 8.073016] ffff8801145a5380: fb fb fb fb fc fc fc fc fb fb fb fb fc fc fc fc [ 8.075194] >ffff8801145a5400: fb fb fb fb fc fc fc fc 01 fc fc fc fc fc fc fc [ 8.077367] ^ [ 8.078977] ffff8801145a5480: fb fb fb fb fc fc fc fc fb fb fb fb fc fc fc fc [ 8.081133] ffff8801145a5500: 06 fc fc fc fc fc fc fc fb fb fb fb fc fc fc fc [ 8.083293] ================================================================== [ 8.085394] Disabling lock debugging due to kernel taint [ 8.086963] Comparing with netmsg [ 8.088029] Comparing with node [ 8.088992] Comparing with igmp_packet [ 8.090156] Comparing with icmp_socket [ 8.091319] Comparing with tcp_socket [ 8.092447] Comparing with sysctl_modprobe [ 8.093731] Comparing with sysctl [ 8.094805] Comparing with sysctl_fs [ 8.095905] Comparing with sysctl_kernel [ 8.097113] Comparing with sysctl_net [ 8.098188] Comparing with sysctl_net_unix [ 8.099370] Comparing with sysctl_vm [ 8.100449] Comparing with sysctl_dev [ 8.101571] Comparing with kmod [ 8.102525] Comparing with policy [ 8.103550] Comparing with scmp_packet [ 8.105942] Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000000 ---------- --- a/security/selinux/hooks.c +++ b/security/selinux/hooks.c @@ -5973,6 +5973,7 @@ static int selinux_setprocattr(const char *name, void *value, size_t size) PROCESS__SETCURRENT, NULL); else error = -EINVAL; + printk("setprocattr %s=%d size=%lu\n", name, error, size); if (error) return error; diff --git a/security/selinux/ss/services.c b/security/selinux/ss/services.c index 33cfe5d..fbf0ade 100644 --- a/security/selinux/ss/services.c +++ b/security/selinux/ss/services.c @@ -1417,6 +1417,7 @@ static int security_context_to_sid_core(const char *scontext, u32 scontext_len, int i; for (i = 1; i < SECINITSID_NUM; i++) { + printk("Comparing with %s\n", initial_sid_to_string[i]); if (!strcmp(initial_sid_to_string[i], scontext)) { *sid = i; return 0;