From patchwork Fri Jan 13 19:10:09 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stephen Smalley X-Patchwork-Id: 9516261 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 8434060761 for ; Fri, 13 Jan 2017 19:08:19 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 6E5672871E for ; Fri, 13 Jan 2017 19:08:19 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 630B92876B; Fri, 13 Jan 2017 19:08:19 +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=-1.9 required=2.0 tests=BAYES_00, RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received: from emsm-gh1-uea10.nsa.gov (emsm-gh1-uea10.nsa.gov [8.44.101.8]) (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 268F82871E for ; Fri, 13 Jan 2017 19:08:13 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.33,222,1477958400"; d="scan'208";a="2810438" IronPort-PHdr: =?us-ascii?q?9a23=3Af1mjTRMV5I1YMaZozFkl6mtUPXoX/o7sNwtQ0KIM?= =?us-ascii?q?zox0LP74rsbcNUDSrc9gkEXOFd2CrakV16yN6eu5AD1IyK3CmUhKSIZLWR4BhJ?= =?us-ascii?q?detC0bK+nBN3fGKuX3ZTcxBsVIWQwt1Xi6NU9IBJS2PAWK8TW94jEIBxrwKxd+?= =?us-ascii?q?KPjrFY7OlcS30P2594HObwlSijewZbx/IA+4oAnPucUanJZuJ6IswRbVv3VEfP?= =?us-ascii?q?hby3l1LlyJhRb84cmw/J9n8ytOvv8q6tBNX6bncakmVLJUFDspPXw7683trhnD?= =?us-ascii?q?UBCA5mAAXWUMkxpHGBbK4RfnVZrsqCT6t+592C6HPc3qSL0/RDqv47t3RBLulS?= =?us-ascii?q?wIOSQ58GXKgcJuiqxVrg+qqxhmz4LKfI2ZMfxzdb7fc9wHX2pMRsZfWTJcDI2y?= =?us-ascii?q?bIUBCPIBMORFo4TzqFQBsRSwChe3BO701j9FhGX70bEg3ug9Dw3L2hErEdIUsH?= =?us-ascii?q?TTqdX4LLocUfyrw6nQzTXMcfVW0irg5ojNaB8hpfWMUqxwcMHMzkQvDB7Kjk6L?= =?us-ascii?q?pIz5PzKayuQNs2+B4+pmTuKgkXQrqw52ojix38ohjJTCiIENyl3c6Cl0z4k4Kc?= =?us-ascii?q?e4RUJme9KoDpRduz+AO4drRM4pXntmtzwgyrIcvJ62ZC0KyJM6yBHBc/GHaI2I?= =?us-ascii?q?4g77VOaWPDd4mGppeLKhiBa29kit0vH8WdOu0FZLsypFicPAtmwN1hPP6siHTe?= =?us-ascii?q?Fx/kG91jaUyw/f8OREIUEwlabDKp4hxKA/loYLvEjeESL7l1/6ga+Lekk+5OSl?= =?us-ascii?q?5Prrbq/7qpOEMo97kAD+MqAgmsylBuQ4NxADX3OF9uS41b3j+1D5QbpTgvItla?= =?us-ascii?q?nZrZbaKtgFqa6iGAJVzoYi5Aq/DzehytgYm2IHI0hfdBKIiIjpJUnCIOrkAven?= =?us-ascii?q?n1SsjDBryujEPr3mBJXCNGTDkLf7crZ78ENcyg0zzdZa551OEbEBPOz8WlXqtN?= =?us-ascii?q?DCCR85KQO0yf79CNphzoMeRX6PAqiBPaPQs1+H/P4gI+qXZI8Svjb9KuYl6uXg?= =?us-ascii?q?jX89hF8ccrKm3YYRaHCkA/RqOUKZYWDjgt0ZC2cFohI+TPD2iF2FSTNTf2i9UL?= =?us-ascii?q?ki6TE9CYKmEYDDS5usgLOfwii0AIdaZmdcClCDCX3obZmLW+8QaCKOJc9siiEL?= =?us-ascii?q?Vb+nS48nyB6hqgv6y7t8I+XO5CIYr5Xj2MJy5+3JmhE47SZ0ANiF02GRU2F0mX?= =?us-ascii?q?sFSCIq3K9lu0xw0UuM0a99g/NED9NT/O9JXh08NZHC0+xwE8ryVR7ZfteVVFam?= =?us-ascii?q?Rc2rATA3TtIt3dAOZ1hyG9C8gRDfxSqrA6QYl7uTBJMq9KLc2mL+J8d5y3nd06?= =?us-ascii?q?kggEMqQsxVNW2pnqR/7RTcB5bVk0WFkKanbaQd3S/K9GeF1meOuUVYXBdxUaXD?= =?us-ascii?q?R3wfYFHZrc765kPDUb+hF64rMg1fxs6eMqFKcMHmjU1aRPf/P9TTe3y+m3+qCh?= =?us-ascii?q?aSx7OMd5Hne30H0yXHCUgEiBgT/XKcOgciGCituWXeDCZhFVj3eUPj7fF+qG+n?= =?us-ascii?q?Tk8z1wyLYUxh176w+hELn/yRUP0T0awZtycmsTV7Bk6938jRC9qCuQVuYLlcbc?= =?us-ascii?q?k64Fdd2mLTrxZ9MYC4L6B+ml4edBx6v0301xptDIVPjckqrGgxwQp3MaKY0UpN?= =?us-ascii?q?dyiW3JDrILHXLXPy/B+3Ya7Mxl7eyMqW+rsI6PkgqFXspgKpFk0/83h80NlayX?= =?us-ascii?q?ic5pLXDAYIVpLxSEk3/QBgp77Geik9+5/U1Xp0PKaurzDCwdMpC/U/yhu7ZdhQ?= =?us-ascii?q?LKaEGBX1E80ACMikMPYqlESxbhIYIOBS87Y5MN+8ePuCxqGrJ/pgnTKhjWlc+4?= =?us-ascii?q?ByzkOM+DR6Su7U3pYK2euU3g2ZWDfglF2hqNz4mZhYZTEOGWqy0SjkC5BVZq12?= =?us-ascii?q?eoYGEmOuI9CrxtV5gp7iQWRU9Fm5B1MJwMWpYwadb0Th3Q1M0kQauWenmSWizz?= =?us-ascii?q?xziDEpsrGS3DfIw+TlehsHP3RERG94gVfqP4e0k8gQXFK0YAgxiBul+UH6yrBV?= =?us-ascii?q?patlK2nTXVlHfzLtL2x5TKu/qKCCbNVS6JMtqylXV/68YV+CQL7nvxQayz/jH3?= =?us-ascii?q?dZxD0jazGlp4j2nx1gh2KZN3t8sH3ZecRsyhjF/9zcWeRd3jwYSylkkTPXHESz?= =?us-ascii?q?P8G1/dWIkJfOqua+V2OlVp1Xbybr1piNuzGl6m1wBh2zhfezmsfoEQIiyy/0y8?= =?us-ascii?q?FqVTnUrBb7eoTryaW6Pv57fklvHl/w8dZ1GoF5kos2i5EdwnwahpST/XUdi2fz?= =?us-ascii?q?Ns9X2aXkbHoCXTQL2cLa4BD52E1/KXKE34b5VnSGwst9ftW6eX0Z2iY878BMFa?= =?us-ascii?q?eV46dJnTBtolq5qwLRYORyniwHxfso9nEan/kDuBAxwSWFHrASAU5YMDT2lxSP?= =?us-ascii?q?69C+qLtYZHyzfri32ktzhsuhDKyerQFHQnr5fY0iHSBo5MVlLF3MyGHz6p3jeN?= =?us-ascii?q?TIddIcrACUkxPag+dPMp4+jf0KhS57OWL6u30o0Os7gQBo3ZG9oIeLMWNt87yl?= =?us-ascii?q?AhRALD36e9sT+i3xjaZZhsuW3J6gHpN6GjgQX5vnU/SoECkUtfv5KwaCCjo8qm?= =?us-ascii?q?2UGbDHBw+Q9F9mr27TE5CsL3yXPGMWzchmRBaDPExQmgYUXCkkkZ4jDQ2q2dfh?= =?us-ascii?q?f1lj5jAK/FL4sRxMyv9yNxbjTGjfqgCoai07SJeBNhZW6B9N51vNO8yE8u1zBz?= =?us-ascii?q?1Y/oGmrAGVNGybYRlHAHoXWkyCGl/jPqOi5d/e/OiEHuC+NefBYa2SqexCUPeF?= =?us-ascii?q?3Yqv3ZF7/zaILciAInhiD+E720ZaU3B2AcLZly8ISywNmCLHd9Sbqwuk+i1rss?= =?us-ascii?q?C/9+zmWAHv5IuLFbRfKtBv+xe4gaeNKeGQmDp5KTZf1pMJ23DE0r4f00AOiyt2?= =?us-ascii?q?bTmiDawAtTLRTKLXgqJXAQQUayVvNMtP6qIxxQdNNtDGhdPyzL53lOY1C01CVV?= =?us-ascii?q?zjhM6medAKL3u6NFPdC0aBLK6GKiHTw8HrfaO8TqVdg/hStxKqojuUDknjMS6Z?= =?us-ascii?q?mznuTRCvPvlGjDuHMxxGpIG9bhFtBHD5TN78ZBy3Ktp3gicywb0zhnLHLnQTPi?= =?us-ascii?q?R5c09Xqb2Q9yxYiO1lG2Nd9nplMfWEmyGB4uneMJYZq+NrAjxvmuJU4XQ60aBV?= =?us-ascii?q?7D1KRPx0nivdtNhurE2nkuaVzjprSh1OqixEhIiTp0VtJb3Z9oVcWXbD5B8C8H?= =?us-ascii?q?6QBAoQqNtqEN3gob5Qx8PUlK3pKzdC7sjU8tEGC8jQNcKHNmAuMQDwFD7ICwsF?= =?us-ascii?q?Tj6qNWbFi0xbjv6S6mWfroImpZj0hJoOVrhbWUQuGfMbBURlG9oCLYxqUTw6ir?= =?us-ascii?q?GbjdQH5XykoBnWXsVasYjNVuiODvX3NDaZkb5EagMSzrP3N4sTKJP01ldlalli?= =?us-ascii?q?govKHU/QUspMoi1ldQA0p0pM/GJ5Tm0p1ELvchmt72MLFf6ogh42jRNzYfgq9D?= =?us-ascii?q?fp+Vs3PF3KpSoun0k3gtrlmzeRfyDyLKqrQY5WDC/0uFQrPZPgXwZ5dwuyklJ4?= =?us-ascii?q?ND3cXbJek6NgdXx3iA/boZZPH+BTQrdAYBILxvGXYO4o0UhGpSWh3k9H5urFBY?= =?us-ascii?q?FklAQ0bZ6mt2hA1B57bN4pOazQI7JEzkJOiaKVoCCnzPoxzxMeJ0sW62ySeTQI?= =?us-ascii?q?t1EPNrkoPyqo5PJj6AyYlztFZmcMS+Igouh2+UMlJ+SA0yXg3qZeJU+rKeyfLr?= =?us-ascii?q?6Wu3PbmMGSWFMwzEQIlkde/bdozcgjblCUV0EzzLqRDRgJM9TNKR1NZcpI6HfT?= =?us-ascii?q?ZTqOsfnKwZ9tMYW9DP7nQvKVtKkOhEKkAAEpH58X48sbApas1VvULcD9LL4K0R?= =?us-ascii?q?8t/hjkJE2ZDPRVfxKGiDMHo8alzJBp24lcJzYdDH5yMSWx+7bbvAgqgOCMXN0u?= =?us-ascii?q?eHcVQpMENm4qWM29gyNZpGpPDD220uIf1QiD4CTxqTjXDDn5c9VsfuyUZQ92BN?= =?us-ascii?q?Gw5zo/77C8iUTL/ZXGO2H6KdNit8fS5uwGopaHDPVUTaVgv0rHhYlXWWaqU2/O?= =?us-ascii?q?EN6yIZj8cY8sYsLoCnyiSFywlyo1T9vtPNaqNqWIghvoRIZOv4mdwDAjNdSwFj?= =?us-ascii?q?4ZGxdou+4P/qR8ahMfY5Ajex7nqxw+N7CjIAefytiuX2etKT5RT/lDzeW7Z6da?= =?us-ascii?q?wDctbu660nQvVYs2z++p/k4RXJsKlA3Rxe6/Z4lCVij+AnNdex/Vqio/i2hsLe?= =?us-ascii?q?cywuAxwRPOrVkcMy6EdO1vaGxYod48H0meIXNoBWokX1Wcl5bM4haw37AO+CtQ?= =?us-ascii?q?h8xb0elEsHfioJDQeDesWaytqZXStSovd8MrrLZwMYP5JMuKrZ3eniHFQJnWrA?= =?us-ascii?q?KFTDawF+BGldhIPCJYXP5IlHk+NsMYv4pM8lA+WdogJ7NREqksvaqlaSBkDCII?= =?us-ascii?q?yi8ZTYyA1iQYguigw7vaiguQcJM6PRwetpVCg8cSUy5xYiMav6+tT5zYmXKeRG?= =?us-ascii?q?UXJwke9hhD5AUFloBsZO/l+5bIQIVKyzFIv/J+SjHLGYVw91vnVmGWhkD1R+mj?= =?us-ascii?q?k+OzwQ1f1+7j0t4fWB57CEhS2fxWllc2J75rK6kcpInKsiWHdUnipmLi1POmJE?= =?us-ascii?q?VNyc3Tb1D4FpDKtXD7UiIH4nAUWZVPx2vBFZsMlwp5aaArpFpIIICndUb+5yAk?= =?us-ascii?q?x4pzELmiUMCn3VAlomgaRy2yCdpOF/lmsE7LWD1ie52qpo/pNIlSQm9R/Z2dqk?= =?us-ascii?q?1WkEZ2Pi6415VTNd9C7iQLXDhVrjWXpMGyR9Fb2c9qE58MJc9yu2/6GKNAIpeR?= =?us-ascii?q?uXM3urvryn/X4D08tVC6xDKoG6CmU+1Z5WoeGh4yJ2SfrEkvAPEg8mDI8lDCql?= =?us-ascii?q?p05ftUBqCTjUVtpzZwBopBBixU1XCjNVhzT2JLs+RbKKTUb8xTWOM+ZRmxNBwi?= =?us-ascii?q?DfQmxVCG/VlonXflZCx/rhda+yfYXwQvSSkZnrLtliYEpsGhJzAaV4pCbS89YC?= =?us-ascii?q?fdNwKbhSdXsQ5fa05wQZAWGNJF9KwA0IRJ4MXCUV6sJj8BXBN8LAI0y/1flVRM?= =?us-ascii?q?sE+AYyDSERKoderTsh1wZcqRrsmpI+ri8QhalIznq/43978fR3K4hAKhW9beoJ?= =?us-ascii?q?HgtteSrEuBaL/4M/GgYX/GVDXDlh6wiqs4A5TI4iTePhFWJIV9yXohfZfuE3XL?= =?us-ascii?q?PQhcK6IdOUVbSbhwac9areBCe89kZKEJ9Ld3Bh2ZWxzvGJagrOVdI1bXQjTeMT?= =?us-ascii?q?uO/vKjroLU8LPSV/LsZsqSyHbbW6h3JIt16SHnG7f21o9T4lL22uxx9kxgVFfG?= =?us-ascii?q?LzuMrM/mJgMW/smtalXtvps1HTPMGphwlGDhxkZad8oYWyeq6ogXyItF6HbsTu?= =?us-ascii?q?J1ylTzsPdM+LZ69IY6+K1pycOoJafIM/tar05nAh+QBgp06pUhGm9/R3peYuUJ?= =?us-ascii?q?MvfeYbwZjdzyq+DwD6EX7Qea++hdadTZO0HBhtOwBSuHRBxCgggBtSUaIReG2P?= =?us-ascii?q?6dhaB4U8Clqvbl2kg1+VixMgYGzKxx5YeD4qeIpvXYbwHWzbgfXqjlXN3zo68p?= =?us-ascii?q?u0OP4f0kiL8OdXB0YwK9FugdTdQRxmD6zaAl1SgsCd/MH6r8+P5fUHI0hjDglI?= =?us-ascii?q?p7H1UYAPMUGqeE8ppFk2ckgePZMMYWcqdYlmaJCxGkDqcIyWS35CuPPGllnhbO?= =?us-ascii?q?3gn/QWOu7V/2qSt4TjXJz9r4j0VaSKK4BUZIUCqvI0N4tymPPAXwvtrtpas19F?= =?us-ascii?q?02MnDjtN+VkmuhPKhaH8z5JNyZOyU0pVQXjJMrRtO1woAbBcC9IMoN/3Fic/ve?= =?us-ascii?q?8X2knzVGo6ddiIrU+tuV9enPHXm8k62arK2AxDVfyng+oVE/5c6vO+rL592LWf?= =?us-ascii?q?uo0XgeTztxugvGRR61qafbo0oSOUOVzEfBgJYKMc1B3XkkykHm4/AuQMgu+wpD?= =?us-ascii?q?DYvAaPYCpD/pNDvy31mff8o9VjOC3DtPAlL1DV54FbA42GLrucLElWzd+1M2SY?= =?us-ascii?q?ZtcEznnwZ4D50iKUIq6lgY3DYMERQXZRCcFrGoClzvLZEYWkgbdRSHwL+6d78s?= =?us-ascii?q?3UJp3LOg/uDTYvJnB6cWLfZSlBCOk0JUGp0Iqq0SWrR8dEFB9KTPvAjtF5DnX+?= =?us-ascii?q?T6lXo3LfC1QMFa8cUCunsn/Am+RwSv6Y1C77Ydh5CEbKhEbobQvMpk9Udo+SYP?= =?us-ascii?q?djBRgBh4lx65UOEdq/r57dfHq5eo8fihVLozSOoL7RQ0AH5+j5ToilA5vd7Xz/?= =?us-ascii?q?tcSpHSiYnn6w9NImWKuYjA3Bl+KOoON5qrc6x993UDPCURO3UOMseIZPYm/i9t?= =?us-ascii?q?KjLT50ZYDc8WYtMYJsXNkxhOikL1QLFT6tbbGliABodrbc8o83b4yDA78Js7SO?= =?us-ascii?q?bg6ya6JYvB4FFJPvNDijhsld3ZqegN2/XSFDQY4XmXahhy2COCyIOBC/Xu8uWW?= =?us-ascii?q?ztHbSVcGEjQxU4dHKzqI4RanSfatlJX1TgOU7df+gI4kdE2OQny+hqIFvbhXHO?= =?us-ascii?q?FdiyX70TleFpzviPKOqdWs8nZXukdBEIlt8R3PAL9fMYljORTkismrQVBxBiTl?= =?us-ascii?q?d8HOaBUupOqWy/wI4+V/K0vxe48bLQgZy7Lh83ZVSBVhSKLutFaDQe0RfMdmSO?= =?us-ascii?q?/Drn1N5oJvNakPPESapJztqTtIs045AAsoaL82szxbeVLDnAlLVKbuuL8PkBEQ?= =?us-ascii?q?Udhntk9QAWiwIn4x5yLbVaRJi6mcEPoV8jSPQawJV0VnKDh+Twm02JVpfLuphu?= =?us-ascii?q?tHv3hDni5yr/kmyTtmRAGzuSf0vaICxSog+K2ktDUGoXFFQfmRkzzTCVla0foE?= =?us-ascii?q?gqESC3fk6Vyhb3gOd4Ty4Lx9KsTm64Yt+XM/YQ8sfyceR+SvFznwj7+UAoyIqN?= =?us-ascii?q?9chhmNuMXIbbOpMScSNrA9yQ/+SHl80wjemg1o8GgKQji78t8kJZu9NtwhxiW1?= =?us-ascii?q?GGjXblAM7b1VsMHpr14EUPM2aU99wGVkysWHRzMNS9bJG2suiggkdHhLcJNE6R?= =?us-ascii?q?8BDaUohSyIvqZe9AEOfDjUCpil+pXXncrQ23kyU9lqxmzSpqCeiJIlyntllM1o?= =?us-ascii?q?7iKUvnQdafDYWdd2Anfvzodf1fD+Z/K1v+AITItmz7qgX+EGMsmn4ma2w5JqWk?= =?us-ascii?q?mkxrsCBVa5NvEMxqvDWSe/VWKYQfiLc3SLnzshME7y5RmpLkUwaMdOrk89LvXN?= =?us-ascii?q?i4VZlw3gTbN0XDufqUXczGw5PuMQbxg2t5u/ewwWUO4RYPCRJfQvwP07E1YMc3?= =?us-ascii?q?7JEjd1C+CotV6hho57NGt84U/ie+Ti7hjmMMeOGhkDCYPaq59x+f+5RmKGInJg?= =?us-ascii?q?zgd9PEpz9+fZCVsxsPVQc5CPktjMn957y/IKd+9xMS0hvd4egpls5peS0MeWah?= =?us-ascii?q?zR1ZLyJdbJoviEHf3Q0VkldntdUroDbgP//586McIhW73PAbtZugwRBaYkT5wl?= =?us-ascii?q?Nmfx7L97IRhycw7QYbS0h9flpviPZpRKvXPW6UgwLCjEsR0Z1vO0VRB7b4yth3?= =?us-ascii?q?jqLpEwXihBr9xxBRR4B4ZPHsIArxa9A5GKgq27jMWx+0xise8QraXwEuzK1Mi+?= =?us-ascii?q?34hpWJha4VKEMS3JBKlvmEtllfiygvbc3ZntE8PtZ80LWPJ9QmHbdr/MBp+/JS?= =?us-ascii?q?6WOsLgZ05G9KaR0LZ4UhWXeSD4ULOKtCmlNPV//UU70Zd1fOvJwzwr6LHXwtzy?= =?us-ascii?q?Z3tUpi27t36GKINf7EDWBezZRx9UUuSK8GJkHa0RcIv1++ACP9M+wNic/QZz9i?= =?us-ascii?q?pN0NOfLKW6rU/DxFh7dZTFI0vtwCk5RIYKLA64MUs2jm/Tsm7dDmhELsi4Nclt?= =?us-ascii?q?h86YDhn36EZtmWEtZ2hBGm3zSNePOGgb3dyxZAmL9AJNEtYCkPS7eUkitq29Ue?= =?us-ascii?q?NoIIlKmf22tLUbltZkMyPPS9JZPyHXN7B7JSdRDuPTpFgoZR4Errc1WocpZZSU?= =?us-ascii?q?JkMILluAwzvozQTeyU30a8Cs1KGRLSkN6XpLyLbF0TlXpwmlovaVmNbjX67FY5?= =?us-ascii?q?3sR/7dLi4lVjCcRTQvHkek4kuruvoevPqFOmcTuF4VbTiOCA4IoaBvq8LcDmjJ?= =?us-ascii?q?me1sZJcKnuyVWzjsSC1kk6o/HilLulqXTPoZFAnZcXvhjXFCuAymPPBM5nPlb6?= =?us-ascii?q?CCyqpTReMWHpNGcueFTNvAZfBeOzAomy0bOOa5eN3ctaw50lPTTWYCFanH7lie?= =?us-ascii?q?Q1CXQvCGwDLrR4oVtZAuuiU04tLQgjN3E6PQMraEqT6u95K3gSebtODFSGkifV?= =?us-ascii?q?Y1gOMDAWmGxhlMMmcEBM8JuEv1WK6Pe15M1G41ieJpwxIMegNzUntq0nBNmfay?= =?us-ascii?q?BNBWSVATjGO0XPIJckp7DDUu8k+WsUXOZokbtMTSQXJO3qcdQooaav8z4c/YP7?= =?us-ascii?q?VD7uwu2WddvCEisyibR2hYhwaB/ruYSLlw3ZVe9GI4+LdwRUjJTDTBJDuUgrG6?= =?us-ascii?q?At5CkH896Uvv0NDZ66U3bLY=3D?= X-IPAS-Result: =?us-ascii?q?A2F3BQD7JHlY/wHyM5BdGgEBAQECAQEBAQgBAQEBFQEBAQE?= =?us-ascii?q?CAQEBAQgBAQEBgn8PAQEBAQEfgVcRjkqoUyaIGVcBAQEBAQEBAQIBAmAoQg4Bg?= =?us-ascii?q?WIbgiMCNxQgCwMDCQIXKQgIAwEtFR8LBRgEiFUNs0MmAolpJo8+EQGCaAyDDAW?= =?us-ascii?q?QHYsVkVkCikSGJQKSZVhxHgYCEAgbDzqENRyBfVWFL4EJgi4BAQE?= Received: from unknown (HELO tarius.tycho.ncsc.mil) ([144.51.242.1]) by emsm-gh1-uea10.nsa.gov with ESMTP; 13 Jan 2017 19:08:04 +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 v0DJ7cvK013801; Fri, 13 Jan 2017 14:07:44 -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 v0DJ7YE5167420 for ; Fri, 13 Jan 2017 14:07:34 -0500 Received: from moss-pluto.infosec.tycho.ncsc.mil (moss-pluto [192.168.25.131]) by tarius.tycho.ncsc.mil (8.14.4/8.14.4) with ESMTP id v0DJ7XRm013795; Fri, 13 Jan 2017 14:07:33 -0500 From: Stephen Smalley To: selinux@tycho.nsa.gov Subject: [PATCH] selinux-testsuite: extend sockcreate to support other address families Date: Fri, 13 Jan 2017 14:10:09 -0500 Message-Id: <1484334609-17111-1-git-send-email-sds@tycho.nsa.gov> X-Mailer: git-send-email 2.7.4 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: Cc: Stephen Smalley MIME-Version: 1.0 Errors-To: selinux-bounces@tycho.nsa.gov Sender: "Selinux" X-Virus-Scanned: ClamAV using ClamSMTP Extend the sockcreate test program to support other address families. This is what I used to manually confirm the other extended socket classes. However, to avoid bloating the required kernel configuration for the selinux-testsuite and because some of the required kernel config options are not enabled in current Fedora kernels, I am not adding tests of these individual address families to the test script or policy. We already test a representative sampling of the extended socket classes. IUCV is only supported on s390 and QIPCRTR is only supported on qcom. I did not test creating sockets with these two families but confirmed that they are supported socket families from the sources. Config options not already enabled in the Fedora kernel configs required to test creating sockets with these address families: CONFIG_CAIF=m CONFIG_DECNET=m CONFIG_LLC2=m CONFIG_PHONET=m CONFIG_X25=m CONFIG_AF_RXRPC=m Config options already enabled in the Fedora kernel configs required to test creating sockets with these address families: CONFIG_AX25=m CONFIG_NETROM=m CONFIG_ROSE=m CONFIG_ATM=m CONFIG_RDS=m CONFIG_IRDA=m CONFIG_MISDN=m CONFIG_LLC=m CONFIG_IPX=m CONFIG_CAN=m CONFIG_CAN_RAW=m CONFIG_TIPC=m CONFIG_L2TP=m CONFIG_L2TP_PPPOL2TP=m CONFIG_IEEE802154=m CONFIG_IEEE802154_SOCKET=m CONFIG_NFC=m CONFIG_VSOCKETS=m CONFIG_VMWARE_VMCI_VSOCKETS=m CONFIG_AF_KCM=m Sample invocation of sockcreate for each address family that should succeed (no output, exit 0): sockcreate atmpvc dgram default sockcreate atmsvc dgram default sockcreate ax25 dgram default sockcreate caif stream default sockcreate can raw can_raw sockcreate decnet stream default sockcreate ieee802154 dgram default sockcreate ipx dgram default sockcreate irda stream default sockcreate isdn raw default sockcreate kcm dgram default sockcreate llc stream default sockcreate netrom seqpacket default sockcreate nfc seqpacket default sockcreate phonet dgram default sockcreate pppox stream default sockcreate rds seqpacket default sockcreate rose seqpacket default sockcreate rxrpc dgram default sockcreate tipc stream default sockcreate vsock stream default sockcreate x25 seqpacket default Note that CAN required adding an explicit protocol value since it did not support creating sockets with the default/0 protocol value. Signed-off-by: Stephen Smalley --- tests/extended_socket_class/sockcreate.c | 34 ++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/tests/extended_socket_class/sockcreate.c b/tests/extended_socket_class/sockcreate.c index c5802ae..ee1d8f3 100644 --- a/tests/extended_socket_class/sockcreate.c +++ b/tests/extended_socket_class/sockcreate.c @@ -17,6 +17,36 @@ static struct nameval domains[] = { { "inet6", AF_INET6 }, { "bluetooth", AF_BLUETOOTH }, { "alg", AF_ALG }, + { "ax25", AF_AX25 }, + { "ipx", AF_IPX }, + { "netrom", AF_NETROM }, + { "atmpvc", AF_ATMPVC }, + { "x25", AF_X25 }, + { "rose", AF_ROSE }, + { "decnet", AF_DECnet }, + { "atmsvc", AF_ATMSVC }, + { "rds", AF_RDS }, + { "irda", AF_IRDA }, + { "pppox", AF_PPPOX }, + { "llc", AF_LLC }, + { "can", AF_CAN }, + { "tipc", AF_TIPC }, + { "iucv", AF_IUCV }, + { "rxrpc", AF_RXRPC }, + { "isdn", AF_ISDN }, + { "phonet", AF_PHONET }, + { "ieee802154", AF_IEEE802154 }, + { "caif", AF_CAIF }, + { "nfc", AF_NFC }, + { "vsock", AF_VSOCK }, +#ifndef AF_KCM +#define AF_KCM 41 +#endif + { "kcm", AF_KCM }, +#ifndef AF_QIPCRTR +#define AF_QIPCRTR 42 +#endif + { "qipcrtr", AF_QIPCRTR }, { NULL, 0 } }; @@ -32,6 +62,10 @@ static struct nameval protocols[] = { { "icmp", IPPROTO_ICMP }, { "icmpv6", IPPROTO_ICMPV6 }, { "sctp", IPPROTO_SCTP }, +#ifndef CAN_RAW +#define CAN_RAW 1 +#endif + { "can_raw", CAN_RAW }, { "default", 0 }, { NULL, 0 } };