From patchwork Mon Jun 12 08:31:40 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Haines X-Patchwork-Id: 9780587 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 D5F4C60244 for ; Mon, 12 Jun 2017 08:33:48 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id C518E2860D for ; Mon, 12 Jun 2017 08:33:48 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id B96BA28616; Mon, 12 Jun 2017 08:33:48 +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.1 required=2.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_MED,T_DKIM_INVALID 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 4EA4E2860D for ; Mon, 12 Jun 2017 08:33:46 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.39,333,1493683200"; d="scan'208";a="6549852" IronPort-PHdr: =?us-ascii?q?9a23=3AqdPQER29ha9vGKHFsmDT+DRfVm0co7zxezQtwd8Z?= =?us-ascii?q?sewXIvnxwZ3uMQTl6Ol3ixeRBMOAuq0C1LOempujcFRI2YyGvnEGfc4EfD4+ou?= =?us-ascii?q?JSoTYdBtWYA1bwNv/gYn9yNs1DUFh44yPzahANS47xaFLIv3K98yMZFAnhOgpp?= =?us-ascii?q?POT1HZPZg9iq2+yo9ZDeZwdFiCC/bL9vMR67sRjfus4KjIV4N60/0AHJonxGe+?= =?us-ascii?q?RXwWNnO1eelAvi68mz4ZBu7T1et+ou+MBcX6r6eb84TaFDAzQ9L281/szrugLd?= =?us-ascii?q?QgaJ+3ART38ZkhtMAwjC8RH6QpL8uTb0u+ZhxCWXO9D9Qr4uWTSm8qxlVhnmhi?= =?us-ascii?q?kaPDI96W3ai8l8gaRGqxyjuhN/2ZbZboGLOvRjcK3TftQURXJDU8pMWSFOHJi8?= =?us-ascii?q?YpATA+YdJ+tUs5Pwq0cSoRa4GAKiBPnvyjhNhnLuwaM60vguEQHc0ww6At0FrX?= =?us-ascii?q?bao8/0NKcUT++117TDwDLZb/NXxTj96JLHcgo8rv6UQb1/acrRxlMuFwPDkFqQ?= =?us-ascii?q?spfoMCiJ1uQMtWib8/RvVfipi2E5twF9uCSgxsApioTQgI8e117K9SJ8wIkvJN?= =?us-ascii?q?24TlZ2Ydu+H5tKqy6WLYp2QsUsQ2Fvvisx174IuYajcSQXx5kqyATTZvyaf4SS?= =?us-ascii?q?/B7uW/idLS1liH59e7+yhgy+/VWvx+D9TMW50VdHojBYntTDq3wA0QHY5NKdRf?= =?us-ascii?q?tn5Eih3C6C1wXU6u5ZP085jbHbK5s9wr4okZoTrFjDEjf2mEroiK+WcV0p+vSy?= =?us-ascii?q?5OT9Y7Xmu4ScO5VoigD+Lqsumsu/Df4+MgcSRGiU5f6w1Lji/U39WLlKj/s2nb?= =?us-ascii?q?fFsJ3COMgWqaG0DxVV34o+8RqzETir3MoCkXUaNF5FfQiIj4ntO1HAOvD4CvK/?= =?us-ascii?q?jky3kDh1w/DGP7vhAojCL3Tai7jheqt960hAxwUt1tBS/I5UC7EdL/LzXU/9rt?= =?us-ascii?q?rYDgQjPACuzObnD8t92psEWW2TGq+ZLL/SsViQ6+ItJOmMYpUauCr9K/c/4f7j?= =?us-ascii?q?ln05mVgbfamsx5QXc2y4Eep8I0WCe3bshc0BEWgStAokUOPqkEGCUSJUZ3uqXa?= =?us-ascii?q?I85Cs0B56lDYfYQYCthr2B3DmgE51YYmBGF1+NHmz1d4WCR/cMdTieIsh7kjwL?= =?us-ascii?q?TbKhUZMu1QmytA/mzLpqNuTV+iwctZLmytd1/fbelR8s+jNpCMSdyXuCT3lunm?= =?us-ascii?q?MPRT85wrxwoVBnxleEy6h4jORSFcZP6PNRTgc6KZncwvRnBN/uXwLBedGJSEq7?= =?us-ascii?q?Tti9HzE+UMgxw94PYkZ6HdWulBbD0DS2A7UNjbyEGIQ08r7A33j2P8ty1mrG27?= =?us-ascii?q?M7j1Q9XsRPMmimibJl+AjIG47FiUOZmLi2da4Exi7C6H+DzXaSvEFfSANxUaTE?= =?us-ascii?q?XXcZZkbNqNT54lrOT76oCbg9NAtO09SCKqhLat33k1pKXvHjN8rCY2ipgWe/GQ?= =?us-ascii?q?6Ixq+QbIrtY2gSxz7SBE8AkwAS5naGKRM+Cj26o23AEDNiD0nvbF3o8el/rnO7?= =?us-ascii?q?U0A1whqWYExhzbq15wUVieaSSvwJwrIEoyAhqzNuEFa6xdLWBMKKpxB9c6VEfd?= =?us-ascii?q?M9/FBH2HrHuAxlJJOgNaFihkUFfgRvpUzuzRR3Cp5Ykcgutnwl0BR9Jbif0FNb?= =?us-ascii?q?eDOSxYrwNaHPKmnu4BCvbLbb2l/E0NmM/KcA9PU4q074sQGsDkoi8mxr08Jb0n?= =?us-ascii?q?uH/JnKCxASUZ3pWEYt6xd6v63aYjU6547M1n1jK6q0sjjf298yB+sq0BWgf9BC?= =?us-ascii?q?MK+eEw/yCcIaDdC0KOM2g1ipcg4EPOdK+aEuIsymbfqG17CxPOt7hj2pkWFH7J?= =?us-ascii?q?p60kKW+Cp2UvTI0Iodw/GEwguHUC/xjEyvssDtnoBEfi0SE3GkySjiA45QaKhy?= =?us-ascii?q?cpwNCWu0Jc242Ml+jYb3W3FE7F6jG08G2MixdBucdVP92RFQ2loNoXy8gia40S?= =?us-ascii?q?J7kysyoaqC2SzC2ePidAAIOmRTXmltkU/sIZSoj9AdREWocxUmmwak5Ungw6hW?= =?us-ascii?q?v7hwL27WQUhUZSf2NH1iXrG2trWcf85F8IkovjlPUOSgfVCaTabwox0b0yPnG2?= =?us-ascii?q?tR2is7eiqwtZrnhRx6j3iRLHFprHrWYctw3wvQ5MTARf5N2ToLXDd4iTjLCVig?= =?us-ascii?q?ONmp58+YmIvDsuC5UWKhWYZecS3qzYOGriS7/2pqDQe4n/Cpld3tCRI63jPj19?= =?us-ascii?q?l2SSXIqw7xYo3q16ShLeJrZ1JoC0H468p7HIF+j4QxiYoL2XgCh5WV+3sHnnvo?= =?us-ascii?q?MdlB36LxcmYNTyYRw9HJ+AjlxFFjLnWRyoLjUXWdxs9haMegYmwK3SI84dtHCL?= =?us-ascii?q?yJ7LNYhit5uF24rRjeYfJlhDcS1eMu6GIGg+EOoAct1j+SAq0WHUVCJyPgjQ+H?= =?us-ascii?q?79e6rKVLY2avd6O91E9ikdCnC7GNvhtQWHDndZc+BSVw9NlwMErQ0H3v7YHpYN?= =?us-ascii?q?rQYswVth2PiBrAjPZaKJQqlvoMmyVnJXjxvXo/y+40lRZux421vJCbK2Vx+6K0?= =?us-ascii?q?GgBYNjvoaM4I5DHti7tRnsaM04CpAJphBi0BXIH0QvKwDDISqfPnOh6WEDImt3?= =?us-ascii?q?ebHaHSEhOe6Ed6r3PDCp6rOGuRJHUDytViXhadLlRFgA8IRDU6goI5Fgeyycz5?= =?us-ascii?q?akh5+zQR6UDgqhRWzOJoKwfwUn3EqQe1cTc7VoKfLAFM4gFZ4EfVLNae4f5tEC?= =?us-ascii?q?FW+Z2htgONJXKBawROE24JRlSOB0r/Mbm2+dnA7++YC/KwL/TUZ7WOteteV/KT?= =?us-ascii?q?yJKhzIRp4jGMNt+VMXl6Ff073UhDUm5lFMTFgTkPTDYXly3VZc6BuBi84jF3rt?= =?us-ascii?q?y48PnzXQLg/4+PC79MPtVz5xC5m72MOvWWhClnNTZYzY8DymXQyLcBxlISjT9h?= =?us-ascii?q?dyW1G7QaqSHNVL7QmrNQDxMDcSN/LsVJ47g53gZXPc7bjdP026VigfEpDldJT1?= =?us-ascii?q?vhmtumZcYSOWGyKEvHBFqXNLSBPTDLzdv3br2hRr1LlupUsQGwuTGAE0L4JDuM?= =?us-ascii?q?izzpWwqoMeFWgyGRJAZet52lchZxFWjjS8rrahuhMNBtlT022aY5hn3LNW4GKj?= =?us-ascii?q?h8b01NrryW7SxChPVwB21B4WBhLeWenCaZ9ebYII4MsfR3GiR0i/5a4HMixrtN?= =?us-ascii?q?8i5LX+J6mC3Trt5ypFGrieiPxSR5XxVQsDpLg5iLvUp6M6XD6pZAQWrE/A4K7W?= =?us-ascii?q?iIFhsKvMVqBcfgu6BK0NfPirn+KCxY/NLX4MscHdLbJNiDMHo8NxrmAiTUABIZ?= =?us-ascii?q?TT6sNmHeh0tdnOuU9nKLspgwsoLsl4YWSr9HSFw1EesXCl9/E9wcOph3US0rka?= =?us-ascii?q?WAgc4T/3W+sgPeRMpEsZDcTP6SB+vgKCqBh7leexQI2a/4LZgUNoDjwENia1Z6?= =?us-ascii?q?nIPMG0fLQN9CvDZubg4ur0VL6nR+SXcz2039YAO3/HATDeK0ngIxigZme+st+y?= =?us-ascii?q?3j40kpKVfRoyswiFc+mdPggT+LcT7xKLy/XYZZCibusEgxKJz7SR5vbQKuhUxk?= =?us-ascii?q?KCvER7VJgrt8cmBrjRXQuYFIGf9dU6JEZgQfxeuQZ/o20lRRsTmoxUhC5eTZE5?= =?us-ascii?q?RijxcqfYSqr31exwJpdMQ1KrDIJKpV0lhQgbqDviyo1+A13gATPEMN8GSceC4G?= =?us-ascii?q?pkMIKqUmJyqv/uxp9wOOgT1Dd3YQV/AyuPJl6ls9O/iczyLny7NDLF6+OPabL6?= =?us-ascii?q?6CuGjAktWIQk8q2UMOjElF/rl23d0lc0WKS0Al1KGRGAgRNcreNQFVaNJf9GLN?= =?us-ascii?q?ciaVr+rC24h1MJm9Fu3zVuCOtbwUjV+jHAYnB4QM9NoOH5m23EHeM8jnMKYPyQ?= =?us-ascii?q?8x6wTzOFWFEPNJdQqWnzcApcG/yoJ40pdZJjEcGmhyKzu45qzQpgMwh/qDRtg2?= =?us-ascii?q?aG8AXoQYLnI2RNG6mylBsntdFja3zOMZxxWZ7zLnvCvQFiP8b91tZfePexxjFM?= =?us-ascii?q?y2+S8+86iqiV/b6JPeKH/mNd56oN/A9fsap4qbC/NTVbR9t0Dcm5NGSHysUm/P?= =?us-ascii?q?FsW4J5f2a4kxd9D0DWy6UlOngTIvU8jxJMqtLrSPgQzwXoZbro2b3DElNc+gGT?= =?us-ascii?q?ATAAt/p+YG5K1gfwIDeIY7bQTutwsgK6y1OB2Y3cm2Q2axNTtWSOFSzeagZ71X?= =?us-ascii?q?1SUsaPO6yHs7Q5E1yOm36VICSIsMjh7A2fapf5NeXjTrGnxBZwXPojI0l3RgNu?= =?us-ascii?q?Y3xec/3BPIsFkHPj+WdexoaHZLsMomCVOUP3p2FnIyR0WAgorb/g6sw7cS8jNH?= =?us-ascii?q?kNZQ0O1KrGbxsYfaYDOsXqyrrpPVvDA7YNc9oq1+K4rjLtKItJPDhDDfSoffsh?= =?us-ascii?q?GdWi6gC/VagsRQID5fQPRQgm4qJ8oGtJFb5kUsSMcxOaZPCLI2qbCwaTtoFykS?= =?us-ascii?q?zTUWV4mYxjwNnv+826fGlheXaJkiPwEEsJRGgtsZTSF2ZzgTq7K9WIrNlm+LUG?= =?us-ascii?q?4LLB0U7QRW6wIKjpVwcfz94IrUUJ9MzCZbo+hyUivKCpZo91z7SmWNgVbgUfuv?= =?us-ascii?q?jvan0B5Vwv/3ztYbXxt/BlRHyOZNikskMrd3JLcMvoTSqD+HaVv6vH7xyOuhPF?= =?us-ascii?q?RR09DbeEDjAYrKsGr9XTcQ+XsKSo9T0HvfD4gdkxJlaKY3o1VBOJqmdVzk5zwj?= =?us-ascii?q?3ItkBKW4VdqxyFY7s3kGQyaqE9xOC+FisVLXVz1lY4ylqJr/IZVSR3Vc+JuDpF?= =?us-ascii?q?dFiE9tKTK2yYJAK8FR5T4BRDZOrS+Bs9uySc1D3M52AIUPItpkunfyBr1LN4aL?= =?us-ascii?q?r30xoLzvxWfT+yogv1ei2DWzB6i4QvpD8G0EBwUpIX6Sqko0Aust82fS80zNvU?= =?us-ascii?q?tu8+ddGLePkV17oCxhEZBWGjZJyXelIkxyTHlAr+VVNqDVfNJZQ/YseR+vIRw/?= =?us-ascii?q?GOUh30yR4050m3L5bDZztgte4C/dWAY1WTMSgrf3lj0UstunNiMCS5JUcTUhaD?= =?us-ascii?q?/IKw2BmS9NuhZfd1pnW5EeAtdL/bEbwYtU8dTDSUaqNSEKQgZiOhg+0fVBiU5J?= =?us-ascii?q?qF+YdjzFDQq0afbPtQV6fduWrM6sN/n54BtLiob8v+wi8aUMWWGmkxW3Qd/Ct4?= =?us-ascii?q?/8qsGKtkyWeaf4KeK8e2XOTDzRgh2rmLgrEYHK/zDNPwpfNZZ602AoYZ/7CW7E?= =?us-ascii?q?JR5GPb4UJ1JHVaBmbtVLuuJaZ8h6d6sS5KBiGAmHSQ31GIyzsvZJM0zfRTLAIC?= =?us-ascii?q?Wd6ua/u57c7aTBSej8YcyB323IQ6xrMZtm6zT3Brnn3JRC9Urx3/di6ll1SUPa?= =?us-ascii?q?MyybqtTuOB8L7tG4dkT+pp0pAS/WAJBonXr32E5PasoXTDe28JkDzJNZ72jwRv?= =?us-ascii?q?xm3kfvt+1d6qdr5ZMx47931ce+Pb3SJuhCsU97HhiUAR1n9o02AGhjXW9ef/MR?= =?us-ascii?q?JezKfaQekMDusfz4GLIR6B2J4exWc9/HK1vGmsmlBTGWUQZEkxsZqT4GMguc0O?= =?us-ascii?q?aIm7NuScm7u+f2x1kg40W6Lh4a1rBi/5mE+quPpO/TcRTR0aIIWq/wRsP8tr4s?= =?us-ascii?q?oV+d5eU4lL4SfWx4ew+nH/IHVs4a3WfgybolzTw3HsPGArLg/OJDV3MlkTLhgZ?= =?us-ascii?q?99GU4WFukTHbqR8oRUhn04lPDBNt0KbqBCnX6CFRy+Hb8Ex36r8SyXL3R7jRzV?= =?us-ascii?q?zxH/W2Wz7ETxrSNiRyvD0cvjmFJPVrarHUdSQzapOUhgvTOJOArlr9v3uaIw7E?= =?us-ascii?q?0sM2zkstyNlHG7N7NMA83/PsGcLjUopFIKlp0+WMaj2YcBGdqyON0R6m1xbuPC?= =?us-ascii?q?62O3lC9Mu6FHh4vC7cGS/vXYB2Kgg7ebq7WKwzBY0WM4sEo66t2vOfDC/dqKQ+?= =?us-ascii?q?6n12wJVSdwpxPBXwKpqrzct10bJVaE0EPVl4wRItFY3X4421r95Oc/QdI86gNe?= =?us-ascii?q?FprBZ/wYvzzzPiX7wUqHadItSiaeyydXHk7yEVRgHKg8w2fwscLSmHfe5VInW4?= =?us-ascii?q?5wd1b9ihxvFYU4LkAt50YLzSofCwQNbgqbDL6wD0T/MYQETVQDaQiA3LWieKc3?= =?us-ascii?q?3Ehzz6iq5ODNbe1zGbANNvdbjg6BhlRbHIwZsbEGSrJmZ1Bd7LLXphTlC4X/Xv?= =?us-ascii?q?jnlGA/OuepTc1B6sAWqWci7RijSBa67pdD9bkbgoiSdqFYeZjMoNx870B/6DEU?= =?us-ascii?q?dyxNmxZ+gAm7UeAduODj+sLUsIes6uu1SKktQPgY+AYuCGRjlZvwh0ojrsvN2+?= =?us-ascii?q?dbUI3Vhpz18BpRLH6SpIbazx58JPIWK42xYLZv63UHJiYZJ3IUPtqacuI87DFp?= =?us-ascii?q?MDXS4VxCH8wNaMgAPMXXhQBblk3pWb9U9srBGV+UEYRzeN4y72rx1j819YEwUu?= =?us-ascii?q?H66D+5PZrf9U1CP+tfjCVwk9LPvPQVweDMBygT+3aZbQZ6zzifxJmMBPbw/PmM?= =?us-ascii?q?x8vPV1wcBC42Tp1RJDyc9gy7XuC1jonmUhuI6s/vh5IzbE2QSWarnKsbrqZMEf?= =?us-ascii?q?VNiiH63jhCCI/1h+ias8e36GdNsF1IDppz5wXfGKpDJpV7JQj4ls6zS0hzGCT/?= =?us-ascii?q?ft3Udh0puOaR3ecD/eF+N0r4ZY8GLRMJ0Lb65mRPTgpuUrH6pFCZUvwNZNF+Uv?= =?us-ascii?q?PLsmhV6Z58K68IJFWSuJ7qoS1Up10tHAApb7swrjhbdkbQhg1VR7j7t6IAigcG?= =?us-ascii?q?Vt55o0BME3qqOG0i/zrHSbhVjK6JBfwQ9TWTSLAOU0p2PS5lRhO12Y9he723kv?= =?us-ascii?q?BbvGJGmTl9oPsx0zB8QhuzpzHsrboX2T084LG4qCkBuXtdQ+WRjyjIEk5DwO0X?= =?us-ascii?q?g6kTDXji6Fq8YGQMbYbp77lnIN7v9Y8/7HglZhUjZSIGV/y6Cy7sl6OIHpCPsN?= =?us-ascii?q?VEiR6Pv8XObbmzITIOObQ9zRLjWmVy0wnfnBZu62sLQTSg4cQ6JIW8J8Yq3C6o?= =?us-ascii?q?FnXadFoW5KNGrtfxv0YRTOQqcVNh3Hlj0s+fSy0MWszAAWA1gxMgaWVZbZ1D6B?= =?us-ascii?q?gaF7IyjjaPpKlG8RkeYC3IHYS95onQgcDI1GE/Tdh0yGLWqKmFi4gk0XJ/ndN7?= =?us-ascii?q?8DKOtG4Ud+PGT89mGmLz2ZtHyezie/WttfgKSIRiyLSmXv4NLM2j+W+t1ZVxXU?= =?us-ascii?q?+lwLUeEEajPO8F2LjbTz+vSXeEVuSTb2iMgzE5P1bw5RmoLlw3cMBKr0s8Muve?= =?us-ascii?q?mJFRjAjhUbJoRiWKu1DX1msjMfkVdwguooeoZxQKTPINZ+ibPeUu3Pw+CF4XYn?= =?us-ascii?q?/VHCt5F+y2vkCpnIRhPXVv/1n6a/z38g/6KNuSBgUEEYnCo550+Py6RWGBOXh7?= =?us-ascii?q?wR1wJkZ09ODfF1Ivue9aaZqRm8bfh8hj2+4fa/htKTE9usIUmo978oabzsGKcQ?= =?us-ascii?q?3Kw5bpIdHVpeSYA+HBz0s0Z25WSL0ZYRn6548iJN42R6XTHadFvRQbHaU6WJsh?= =?us-ascii?q?N2Pr+6FuIgJzdQrRZLqvj8nvoeKLYYBUqGHK4VIqKyfcoAYDyv2yTQx0dZyqgG?= =?us-ascii?q?/yIJ8oTDJbs9JtEgdmHJdIG84YoQqoHZqUmKCji9Cv4E57uu4Ksa/1Cv/UztS5?= =?us-ascii?q?25t+U4Jd5UyRMzbbHLNrjVh9juSunvfA1YH8CM36edMeVeh0XnDKZ6TDHoW+Nj?= =?us-ascii?q?KOINzzd1RB876G37JzSg+RazzhX6qaqC2kM+1p4UI/yoNmZ+fT1Dgt4KvA2Nvu?= =?us-ascii?q?ZmFUujujrWSXO5RB9lDKA/LRXw5MQ/qf7GllBbEXbZfz9OoWNdwiwd6c4xR87T?= =?us-ascii?q?hb1MuFIrOhrlPX2k9gdJLUNk3p2yEjVYkNOhS/PlMmgXXFpXTFHXRcMs+kJNF2?= =?us-ascii?q?gNmLChzt5k9xmXwiZ2JGFWToWdeRNnYB282gfA2F7hlGD9UdkO6tf043qKmyRv?= =?us-ascii?q?J1OpVKg+mqs68HkdlxISHVWMdaJz3QLKNxPjdJC+XAvkQnYh4Fs7gzXYc4foaO?= =?us-ascii?q?IEIBMEiezSPyzA3C0VD7dtC206aJOikW+G1dz73ZyThMuxW5ufGBj83hSr/Zb5?= =?us-ascii?q?b2U+XJPSo4UDGaWTQyEUG0+Veru/oEoOCUIWEBrVAIeiiSEhIcprhzrdjMCW/e?= =?us-ascii?q?geJjc4cRi/CAWiD/Vil4mbEsBiZPr0+MWPsDFRTMY3/nnmVcpBSoJuVQ8nL9c7?= =?us-ascii?q?2Y2q1VVvQUAotJdf2ZWcHYefFFJzozkDUWIuO8cMPdr7oj1VLIV2QZGbHS9FKC?= =?us-ascii?q?VE6WXuCcxzXzUIUOsYg0vzYn99PTkyJsDaTHIayfpz+v846/iiaUo+veWXcxYx?= =?us-ascii?q?99vOVXG2SFwR9dOEkYGtoVvwfrWafGaEFSh1wzjuc74R4HeA1pXjVO23xQke31?= =?us-ascii?q?TtdYQl4dlm+ZS8oGZVFxASgY91OL5BH/e9oNpYbYQGoIpehEcpYUMPR9sNqfA6?= =?us-ascii?q?AX2vt8mWxr?= X-IPAS-Result: =?us-ascii?q?A2HUAwCmUD5Z/wHyM5BcHAEBBAEBCgEBFwEBBAEBCgEBgwI?= =?us-ascii?q?rYoENjn+eLYVwhC88KAuBb4cXVwEBAQEBAQEBAgECaCiCMyQORiYGAQEBAQEBA?= =?us-ascii?q?QEBAgEBAQEBGwEBAQEBAQEBAQEBAQEBAQEaAggFIkMCPQE5AgMJAgUSMQgDAWw?= =?us-ascii?q?FiFWBOQEDFQQMsVcmAoJiBYEChFuDHgQIhFGDcIV4TocYHwWJTZRyhyuMEYITV?= =?us-ascii?q?YhQDIZNAokSi1pYgQowISOFGQwVIIISdYleAQEB?= Received: from unknown (HELO tarius.tycho.ncsc.mil) ([144.51.242.1]) by emsm-gh1-uea11.nsa.gov with ESMTP; 12 Jun 2017 08:33:45 +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 v5C8Xgg9006312; Mon, 12 Jun 2017 04:33:44 -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 v5C8Vo6H259730 for ; Mon, 12 Jun 2017 04:31:50 -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 v5C8Vou8005844 for ; Mon, 12 Jun 2017 04:31:50 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A1CiAABjUD5Zh7cAFEFcHgYMgy2BDYENrSyKYg4ehXiDDlcBAgEBAQEBAhMBAQEIDQkIKIYOATgBFYE7iFqBOQEDFQQMsVaDCgWBAoRbgx4ECIRRg3CFeE6EGQyCcx8FiU2UcocrjBGCE1WIXIZNAokSi1qBYTAhI4UZASAgH4FzdYleAQEB X-IPAS-Result: A1CiAABjUD5Zh7cAFEFcHgYMgy2BDYENrSyKYg4ehXiDDlcBAgEBAQEBAhMBAQEIDQkIKIYOATgBFYE7iFqBOQEDFQQMsVaDCgWBAoRbgx4ECIRRg3CFeE6EGQyCcx8FiU2UcocrjBGCE1WIXIZNAokSi1qBYTAhI4UZASAgH4FzdYleAQEB X-IronPort-AV: E=Sophos;i="5.39,333,1493697600"; d="scan'208";a="6086906" 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; 12 Jun 2017 04:31:49 -0400 IronPort-PHdr: =?us-ascii?q?9a23=3AV773yhECU7Ur1ENMC5eWop1GYnF86YWxBRYc798d?= =?us-ascii?q?s5kLTJ7zpsqwAkXT6L1XgUPTWs2DsrQf2rWQ7PmocFdDyK7JiGoFfp1IWk1Nou?= =?us-ascii?q?QttCtkPvS4D1bmJuXhdS0wEZcKflZk+3amLRodQ56mNBXdrXKo8DEdBAj0OxZr?= =?us-ascii?q?KeTpAI7SiNm82/yv95HJbQhFgDiwbalwIRmrsA7cqtQYjYx+J6gr1xDHuGFIe+?= =?us-ascii?q?NYxWNpIVKcgRPx7dqu8ZBg7ipdpesv+9ZPXqvmcas4S6dYDCk9PGAu+MLrrxjD?= =?us-ascii?q?QhCR6XYaT24bjwBHAwnB7BH9Q5fxri73vfdz1SWGIcH7S60/VDK/5KlpVRDokj?= =?us-ascii?q?8KOT4n/m/KhMJ+j6VVrQm9qxBj2YPYfJuYOOZicq7bYNgURXBBXsFUVyFZHo28?= =?us-ascii?q?bpcAD+obMuZCsob2ulkAogG/BQmqGuzv0SJDi3js3a07z+shERvJ3BY9EN0WrH?= =?us-ascii?q?vbtNX1O70TUeCz0qbI1i7OYOhK2Tf87ojIbg4uoeuKXb1ubcrd01UgFwTAjliJ?= =?us-ascii?q?r4HuIj2b1uMIs2eB7upgU/qii2s9pAFrvjej3MYsio/HhoISzF3P6CZ3wJ4tKN?= =?us-ascii?q?C5SEN3e8CoHIdKuy2GLYd6X8AvTm9wtCs5y7AKo4O3cScLxZg9xhPSauaLf5WH?= =?us-ascii?q?7x7+UuuaPC12i2h/eL2lgha/6UigxfP4VsmzyFtKtCVFkt7RtnARyxDe69KLRe?= =?us-ascii?q?Bh/ku73TaP0AbT5+FeLU8ojarUN5ohwrktlpUOq0jMAij2lF/rjK+Vbkkk++6o?= =?us-ascii?q?5Pr7Yrj+p5KRN5V4hh/iPqg0hsCzG/k0PwsAUmSD/OSzzrzj/Un3QLVQif02l7?= =?us-ascii?q?HUsIrbJcsHpq62GRVV3Zs75BmjFzim0M4XnXgBLF1bYxKKlJPmO03PIPD+Efew?= =?us-ascii?q?nU6skDF1yPDaJLHuHpLNLn3bnLf7Ybl981JcyBY0zd1H/JJbFLUBIPP1Wk/su9?= =?us-ascii?q?3VFQM5MgyozObnD9VxzIUeWXmVDaODP6PStkGItaoTJLyXaYsUvivtA+Q07P7p?= =?us-ascii?q?y3kikBkSerf684EQbSWCH/9mKl+VKVrlg9EMCi9epAs1TOXwhGqJZj5aZnC/RI?= =?us-ascii?q?o2+jA9FI+8C4rfAIuqherSj2+AApRKazUeWRi3GnDyetDcVg=3D=3D?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0HhAACmUD5Zh7cAFEFcHgYMGAEFAQsBg?= =?us-ascii?q?wKBDYENrSyFcIQvQw4egW+ECYMOVwEBAQEBAQEBAgECEAEBAQgNCQgoL4IzIhB?= =?us-ascii?q?GJgYBAQEBAQEBAQECAQEBAQEbAQEBAQEBAQEBAQEBAQEBARoCCAUigQIBOAEVg?= =?us-ascii?q?TuIWoE5AQMVBAyxV4MKBYEChFuDHgQIhFGDcIV4ToQZDIJzHwWJTZRyhyuMEYI?= =?us-ascii?q?TVYhchk0CiRKLWoFiMCEjhRkBICAfgXN1iV4BAQE?= X-IPAS-Result: =?us-ascii?q?A0HhAACmUD5Zh7cAFEFcHgYMGAEFAQsBgwKBDYENrSyFcIQ?= =?us-ascii?q?vQw4egW+ECYMOVwEBAQEBAQEBAgECEAEBAQgNCQgoL4IzIhBGJgYBAQEBAQEBA?= =?us-ascii?q?QECAQEBAQEbAQEBAQEBAQEBAQEBAQEBARoCCAUigQIBOAEVgTuIWoE5AQMVBAy?= =?us-ascii?q?xV4MKBYEChFuDHgQIhFGDcIV4ToQZDIJzHwWJTZRyhyuMEYITVYhchk0CiRKLW?= =?us-ascii?q?oFiMCEjhRkBICAfgXN1iV4BAQE?= X-IronPort-AV: E=Sophos;i="5.39,333,1493683200"; d="scan'208";a="6549824" X-IronPort-Outbreak-Status: No, level 0, Unknown - Unknown Received: from rgout06.bt.lon5.cpcloud.co.uk ([65.20.0.183]) by emsm-gh1-uea11.nsa.gov with ESMTP; 12 Jun 2017 08:31:48 +0000 X-OWM-Source-IP: 86.146.66.141 (GB) X-OWM-Env-Sender: richard_c_haines@btinternet.com X-Junkmail-Premium-Raw: score=8/50, refid=2.7.2:2017.6.8.143616:17:8.707, ip=, rules=NO_URI_FOUND, NO_CTA_URI_FOUND, NO_MESSAGE_ID, NO_URI_HTTPS, TO_MALFORMED Received: from localhost.localdomain (86.146.66.141) by rgout06.bt.lon5.cpcloud.co.uk (9.0.019.13-1) (authenticated as richard_c_haines@btinternet.com) id 58F7952B05ABC754; Mon, 12 Jun 2017 09:31:46 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=btinternet.com; s=btcpcloud; t=1497256308; bh=EUWUCo0rA1Ii20cVAHCPNliizUz6vISW0wZVyEJs0V8=; h=From:To:Cc:Subject:Date:Message-Id:X-Mailer; b=XS6HGMs/nH4/Xa+goU9kSvsfhi1/YaLxFJMkYVTx2q3aAW5JGK/nxEng7F7nQC2/dywSU16aYGb24b6sWe/E6NstCOAX1Yyi4w6Me4DZzz6n0WbZQAGiR6d60lFlrKZ1CO3+J3uG2uc4gl64bP+c2rUpDTIQ+C/8GBCBzg1lstY= From: Richard Haines To: selinux@tycho.nsa.gov Subject: [PATCH] secilc: Update test policy and documentation for Infiniband Date: Mon, 12 Jun 2017 09:31:40 +0100 Message-Id: <20170612083140.5096-1-richard_c_haines@btinternet.com> X-Mailer: git-send-email 2.9.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: Errors-To: selinux-bounces@tycho.nsa.gov Sender: "Selinux" X-Virus-Scanned: ClamAV using ClamSMTP CIL updates to support the InfiniBand development. Signed-off-by: Richard Haines --- secilc/docs/Makefile | 1 + secilc/docs/README.md | 4 ++ secilc/docs/cil_infiniband_statements.md | 90 ++++++++++++++++++++++++++++++++ secilc/test/policy.cil | 6 +++ 4 files changed, 101 insertions(+) create mode 100644 secilc/docs/cil_infiniband_statements.md diff --git a/secilc/docs/Makefile b/secilc/docs/Makefile index 52c7435..c0fa6b7 100644 --- a/secilc/docs/Makefile +++ b/secilc/docs/Makefile @@ -23,6 +23,7 @@ FILE_LIST ?= cil_introduction.md \ cil_sid_statements.md \ cil_type_statements.md \ cil_user_statements.md \ + cil_infiniband_statements.md \ cil_xen_statements.md PANDOC_FILE_LIST = $(addprefix $(TMPDIR)/,$(FILE_LIST)) diff --git a/secilc/docs/README.md b/secilc/docs/README.md index aada78f..3f1838e 100644 --- a/secilc/docs/README.md +++ b/secilc/docs/README.md @@ -144,6 +144,10 @@ CIL (Common Intermediate Language) * [selinuxuser](cil_user_statements.md#selinuxuser) * [selinuxuserdefault](cil_user_statements.md#selinuxuserdefault) +* [Infiniband Statements](cil_infiniband_statements.md#infiniband-statements) + * [ibpkeycon](cil_infiniband_statements.md#ibpkeycon) + * [ibendportcon](cil_infiniband_statements.md#ibendportcon) + * [Xen Statements](cil_xen_statements.md#xen-statements) * [iomemcon](cil_xen_statements.md#iomemcon) * [ioportcon](cil_xen_statements.md#ioportcon) diff --git a/secilc/docs/cil_infiniband_statements.md b/secilc/docs/cil_infiniband_statements.md new file mode 100644 index 0000000..38c15bd --- /dev/null +++ b/secilc/docs/cil_infiniband_statements.md @@ -0,0 +1,90 @@ +Infiniband Statements +===================== + +To support access control for InfiniBand (IB) partitions and subnet management, security contexts are provided for: Partition Keys (Pkey) that are 16 bit numbers assigned to subnets and their IB end ports. An overview of the SELinux IB implementation can be found at: [http://marc.info/?l=selinux&m=149519833917911&w=2](http://marc.info/?l=selinux&m=149519833917911&w=2). + +ibpkeycon +--------- + +Label IB partition keys. This may be a single key or a range. + +**Statement definition:** + + (ibpkeycon subnet pkey|(pkey_low pkey_high) context_id) + +**Where:** + + ++++ + + + + + + + + + + + + + + +

ibpkeycon

The ibpkeycon keyword.

subnet

+

IP address in IPv6 format.

+

pkey | (pkey_low pkey_high)

+

A single partition key or a range of partition keys.

+

context_id

A previously declared context identifier or an anonymous security context (user role type levelrange), the range MUST be defined whether the policy is MLS/MCS enabled or not.

+ +**Example:** + +An anonymous context for a partition key range of `0x0-0x10` assigned to an IPv6 subnet: + + (ibpkeycon fe80:: (0 0x10) (system_u system_r kernel_t (low (s3 (cats01 cats02))))) + + +ibendportcon +------------ + +Label IB end ports. + +**Statement definition:** + + (ibendportcon device_id port context_id) + +**Where:** + + ++++ + + + + + + + + + + + + + + +

ibendportcon

The ibendportcon keyword.

device_id

+

A single device identifier.

+

port

+

A single port number.

+

context_id

A previously declared context identifier or an anonymous security context (user role type levelrange), the range MUST be defined whether the policy is MLS/MCS enabled or not.

+ +**Example:** + +A named context for device `mlx5_0` on port `1`: + + (ibendportcon mlx5_0 1 system_u_bin_t_l2h) + diff --git a/secilc/test/policy.cil b/secilc/test/policy.cil index 2078399..4c37ecc 100644 --- a/secilc/test/policy.cil +++ b/secilc/test/policy.cil @@ -282,6 +282,12 @@ (pcidevicecon 345 system_u_bin_t_l2h) (devicetreecon "/this is/a/path" system_u_bin_t_l2h) + ; InfiniBand + (ibpkeycon fe80:: (0 0x10) system_u_bin_t_l2h) + (ibpkeycon fe80::7629:afff:fe0f:8e5d (15 25) (system_u system_r kernel_t (low (s3 (cats01 cats02))))) + (ibendportcon mlx5_0 1 system_u_bin_t_l2h) + (ibendportcon mlx4_3 5 (system_u system_r kernel_t (low (s3 (cats01 cats02))))) + (constrain (files (read)) (not (or (and (eq t1 exec_t) (eq t2 bin_t)) (eq r1 r2)))) (constrain char_w (not (or (and (eq t1 exec_t) (eq t2 bin_t)) (eq r1 r2))))