From patchwork Wed May 3 10:30:20 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Petr Lautrbach X-Patchwork-Id: 9709177 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 6D14060385 for ; Wed, 3 May 2017 10:34:13 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 59CCC284E5 for ; Wed, 3 May 2017 10:34:13 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 4E865285EB; Wed, 3 May 2017 10:34:13 +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 (smtp.nsa.gov [8.44.101.9]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 99E4F284E5 for ; Wed, 3 May 2017 10:34:12 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.38,283,1491264000"; d="scan'208";a="5425539" IronPort-PHdr: =?us-ascii?q?9a23=3AHw6n+hYONfQHnTWRq7diIuX/LSx+4OfEezUN459i?= =?us-ascii?q?sYplN5qZoc64Zx7h7PlgxGXEQZ/co6odzbGH7ea9CCdav96oizMrSNR0TRgLiM?= =?us-ascii?q?EbzUQLIfWuLgnFFsPsdDEwB89YVVVorDmROElRH9viNRWJ+iXhpTEdFQ/iOgVr?= =?us-ascii?q?O+/7BpDdj9it1+C15pbffxhEiCCzbL52LRi6twXcu80ZjYd8K6s61wfErGZPd+?= =?us-ascii?q?lK321jOEidnwz75se+/Z5j9zpftvc8/MNeUqv0Yro1Q6VAADspL2466svrtQLe?= =?us-ascii?q?TQSU/XsTTn8WkhtTDAfb6hzxQ4r8vTH7tup53ymaINH2QLUpUjms86tnVBnlgz?= =?us-ascii?q?oJOD4j9GHcl9J+gqRVrhm8oxBz2pPYbJ2QOPd4Y6jTf84VRXBZU8hRSSJPH42y?= =?us-ascii?q?YYgNAOoPJeZVrZTxqlUQohulHgSgGP/jxyVUinPqwaE2z+IsGhzG0gw6GNIOtW?= =?us-ascii?q?zZos/rO6cOS+C+0a/Gwi/eb/NKwzfy85LHfQwhofqRWr9wac7RxlMyFwPZlFWf?= =?us-ascii?q?spbqMiiP1usTrmeb7/BvVf61h2E7rAFxpyGiy8ExgYfHgYIVz0rL9SR/wIstK9?= =?us-ascii?q?y4Uk97YcK6H5dKqyGaN417Sd4hTWFwoCs217ILtJGhcCUK1Zgr3QDTZvOZf4SS?= =?us-ascii?q?/x7vTPidLSt8iX5/Zb6yiQi+/VK9xuD/WMS4ykhGoylDn9LRrH4CzQbT5dKCSv?= =?us-ascii?q?Zl+0eh3iuA2B7L5+FfJEA0ibLbK5k8wr4sjpYTsVrMHivxmEjukK+ZbF8k+um1?= =?us-ascii?q?6+T8eLnmup+dOJN0igH5KKgunNCwAf8kPQQUWmib+OC82KXi/U3/XrpKkuU7nr?= =?us-ascii?q?TWvZ3VP8gWprO1DxVL3oss9RqzFSqq3MwdnXYdLVJFfByHj5LuO1HLOP34Fumw?= =?us-ascii?q?g1CtkDdt2vDHMaTtDY7KLnjelrfuYahy61VHxQovzdFQ+5JUCrYbLPL1QU/+rs?= =?us-ascii?q?bUDhA+Mwyq2+rnEsly1psCWWKTBa+UKKHSsViO5u01P+mMZJUauDDmJvgn4P7u?= =?us-ascii?q?i3o5lkUGfam1w5QXcmu4Eu5hI0WDbnrmms0BHnsSvgoiUOzqj0WPUTxRZ3moQ6?= =?us-ascii?q?085So7CIWgDYfCWICgm7KB3COmHpxZfW9GF1aMEWv1d4meXPcMci2SKNd7kjMY?= =?us-ascii?q?TbihV5Mh1Ra2uQ70yrpnKu/U9TMCtZ/42th6+fDclRYo9TNuF8SdyWaNT2NqkW?= =?us-ascii?q?wUWz86xqd/oVZyyl2by6h3n+RYFcBP5/NOSgo1KILTz+l9C9D0RgLNY8yESEi4?= =?us-ascii?q?TdW8ADEwT9Uxw9kUb0Z7BdqikgjJ3zC2DL8Ni7yLGJs0/7rB0HjtPcl90W3L27?= =?us-ascii?q?Umj1kjXsRAL3amhrJl+wjVGYHJj12Tl7y2eqQEwC7N6GCDwHKOvUBZVw5wV77I?= =?us-ascii?q?XXUbZkfPrNT54FnOT7m0BrQ9MQtByNCCJbVQZt3vk1pGWO/pOM7CbGKph2ewGR?= =?us-ascii?q?GIy6uXY4XxfGkd2CTdCFMYkwAI53qGLhYxCTu7r2LFEjNuEVPvY0Xx8ehxs360?= =?us-ascii?q?Uk81zxuXb016zba09AQaheCHS/MU2LIIoiAhqy97HFylxdLZF8KApxZ9fKVbed?= =?us-ascii?q?4y/k9H2njDtwx8JZytNLhiiUQEcwR2pEPuzxF3BZ9cnsc0tn8qyxByKa2A2lNb?= =?us-ascii?q?azyYxYzwOqHQKmTq8hCvcbTZ2lfC39aX4acC8/E4q03ivA2wDUoj/W5n38NS03?= =?us-ascii?q?uG6ZXAFBASXo7pUkYr6xh6oKnXYion6IPX0n1sLLK5sjzY1NIqA+sl1wysf9BF?= =?us-ascii?q?MKOLDAXyCdEVB9CyKOw2nFikdggLM/1I9K41IcymbeCL17S3M+Zlhj6min5H4I?= =?us-ascii?q?9l2EKW6yV8UvLI34oCw/yAxQuHWS38jFC6ssDrgo1EfjcSHm2xyCjhHoFRYLd+?= =?us-ascii?q?fYAVBmeyO8e33Mlxh4bxW35E816uH10H19WteRqOcVP9xxZQ2F8JoXO5gyu31C?= =?us-ascii?q?F0kzQzoqqYxizOzPzodAAbNW5TWGlikVDsLJCoj98HQUeobhImlB++6EnmwKhb?= =?us-ascii?q?obhwIHPIQUdUZST2KX9tUreovLqYf8FP8I8osTlQUOmkZ1CaS7r9ox8E3CP4BG?= =?us-ascii?q?ZR3i40dyutupnjmBx6km2dJm5prHXFYcFw2Qvf5NvESP5P3zoJWDV4iT7NBlSm?= =?us-ascii?q?I9ap/dKUl5HMsu2lU2KhV5tTfjPxzYOHrie74ndqARKnlfCphtLnCRQ60TP819?= =?us-ascii?q?RyUSXIrQ38YpXy26ShL+1nekhoBFnh68t1AYx+iZMwhJAW2XgbmpqV5mALkWHt?= =?us-ascii?q?PtVHwaj+dmYCRSYXw97J5wjowFdjLnWNx4L9SHqd2NduZ960Y24NwSI98txFCL?= =?us-ascii?q?yO4LxDhyt1rUKyrRjNbvhlgjcd1fwu5WYCg+4TpQotyj+RDaoIEUZDOizskwiI?= =?us-ascii?q?79e4rKhMYWajbb6w1E1ikty7CrGNvB1cUm7jepg+BS9w8tl/MFXU3X3w9I7kfs?= =?us-ascii?q?LQYMkQthKKlRfAlO5VJ4wtlvYQgipnI239t2U/y+EnlRxuwY26vI+fJmVz+qK2?= =?us-ascii?q?HwVVNiPzZ8wO+jHhl6BekdiK34q3BJVuBi0LXIf0TfKvCD8Sre7oNxuKEDAntn?= =?us-ascii?q?ibGKbfHA+G5EdotX3PFYqnN3aNJHkW1d9iXgWSJFRDgAAIWzU3hoQ5GR23y8H6?= =?us-ascii?q?f0d54z8Q6kT+qhRS1uJiLwP/XXvHpAe0djc0T4CSLAJM4QFf40faL9Se4fh1Hy?= =?us-ascii?q?FE4JKhtheAKnGAZwtWF2EJQVaIB0vkPrmz/9nP7/aXBuS5L/vUbrWBt/ZSV/GW?= =?us-ascii?q?ypKzyoFm5SqDNt2TPnl+CP02wkRDUmp/G8TFnDUPTjcalyzTYMGGoxe84Dd4rt?= =?us-ascii?q?il8PTsWgLg+5eAC6dIPdVo4RC2jr+JN/SMiyZhNTZYypQMyGfNyLcF2F4Sjz9h?= =?us-ascii?q?dyWxEbsaryHAV6TQlbFLDx4Adyx8LtNI4Lwm0glLJ8Hblsv/1qRkgf4tF1dFSV?= =?us-ascii?q?vhl9mzZcAQLWCxLlbHC1yPNLSBJTzG2Nv4br+5SbFKi+VUrRKwsy6BE0D/JjSD?= =?us-ascii?q?iyXpVxe3POFCliGUIgFRuJqnfRZrFWjjS8nmZwahP9BriD0627o0hmnFNWQEKz?= =?us-ascii?q?hzb1tNrqGM7SNfmvh/HXZB4WB9LemcgCuZ4ejYKowNsft3DCR0luRa7248y7RJ?= =?us-ascii?q?7SFLXvh1lDHVrt50rFGsivOPxSZ/UBpStjZLg5qGvV18NqrC6JZAX3fE/A4K7W?= =?us-ascii?q?iLChQFucVqBcP1t6BX0NjPm7r5KC1e/NLM4cscG8/UJdqaP3o6LxXmAjHUDBEf?= =?us-ascii?q?Qj61LmzfnFZSkPKP9n2PtJc2sJzsmIcISrBBTlw5D+8aCkNmHN0CJ5d7RDUknq?= =?us-ascii?q?CHjMQQ/3qxsAHRRNlGvpDATv+SGu/gKCiDgrlLeRQI2qj1LZ8JOY3lwUNiZUd1?= =?us-ascii?q?nJ/QF0rWQ99NvjVrbhUor0VV7Hh+Umoz1lr+ZQOs738TEvi0kwUrhQRgeust9S?= =?us-ascii?q?3j41EtKlrNviswn1E7mc/5jjCJbD7xMKCwUJlMBCr7rUcxLI30Th1ybQ2qg0Nk?= =?us-ascii?q?MjLESKhQj7tkbm9rjwDdtYFIGf5GQq1OeAUQyu2PZ/U0zVRcrT2qxVNA5evAE5?= =?us-ascii?q?dijgwqcJ+yoHJGwA1jdtk1KrLTJKdS0ldQgaeOsTOy2eAq3A8SPUAN/32OeCQQ?= =?us-ascii?q?okwHKqEmJza0/uxr8QGCmDtCeGwSWPcxp/Jq8U09O+qewCL8z75DKkexN+mBIK?= =?us-ascii?q?+DvWjPi9KISEsq1kwUj0lF4aR20cA7fkqSSU8g1r+RGg8KNcrFMgFVc9Bd9H7I?= =?us-ascii?q?fSaNsOXB25R1MJuhFurwV++BqL4Ugl64HAYuB4kM9NoOHoKy307CN8foML4FxA?= =?us-ascii?q?426wTqPlWKEfNJeByTkDcdvc6+zIV73Y9DKTEBGW99Kzm45q7Lpg82h/qORMo5?= =?us-ascii?q?YnAcXosCK305Rsm6my9CsntaEja3yOUZxBKF7z/mqSTaFCP8YMZ7ZPeIeRNsD8?= =?us-ascii?q?m79igl/KioiF7Y747eKnrgOtR4oN/P7u0bp42ZBPxIULl9qUbcm5VYRnCwVW7A?= =?us-ascii?q?D8K1LYDqa4Ywddz0Fmq6UlunhjIxSMfxJsiiLq6JgAHvXotUv4+b3C05Oc+6DD?= =?us-ascii?q?EeFA96p/sf66JkeQ0Df507bAbztwsgM6y/IQGY0sihQmu2NTRWSPxfwvmgaLxM?= =?us-ascii?q?0yogdOm6x2U8Tpsi1em47VYNRI0WjhHZ3fujZJNeUCjpFXxbZwXPpTE0l2dmNu?= =?us-ascii?q?Yq3ugz2hXIvkcAMzqTbuxmdHREv80gBVOVOXh2Fms4R1qbjYrf4g6t36sf8DZc?= =?us-ascii?q?n9dUy+JKq2LyvpnBbzKwQKars4naszI8bdg6pK18KZbsIs+HtJzCgDPQVJzQsw?= =?us-ascii?q?2DUC69EfpVgMNdLzlZQPZSn2EpIMIGuZdb5Uo3SMg+O6RFCLMwqbCydTpkESkS?= =?us-ascii?q?wDcCWIye2jwPmf2z1KbElhiOapQiKwYLsI9Cg9cHVC52eCwerre5V4rKj2+EVn?= =?us-ascii?q?QLIAAL4ARD+QIAl4twfuT774rNV5JD1iBZrOl1UiTREJlk7Vz7SnuZgVLgUvWu?= =?us-ascii?q?j/Sp3R5OzPLrytQbQhh/CUlByOZWkUsoLKp3JbEJsIDXqDGFaUT0sXnxx+uhIV?= =?us-ascii?q?le1dfbd0bkDIbfs2rzTDEc82UORYBT0HHfCYgSkw1hZaYxvlpMOoemdV3l6jw4?= =?us-ascii?q?3YRmBae4Wt6vx1Ykq3YGSCOqE9tOC+FmrFLXVidqY4quqJn/PZVdXHNQ8oWHq1?= =?us-ascii?q?hFiEVtLzK5yZ1EJsBD+DIDQDhPoTSYvNuzUsJD2tR7D54SLdhhpXjxAqREOIKe?= =?us-ascii?q?o3cuoLzg1mfZ+ywgsFe93Di8AbW4T/9f/2EEGQUkPGWeqkguD+sw6Wje6FbNvU?= =?us-ascii?q?5o/+1DHLiAkV1xoCphHpBJHjtJ1HalL0htQ3lCrepaLbrac9BGQ/gyfhKvPAQ+?= =?us-ascii?q?GuAg30yM5050nHP5bDd1tgpV4SzdWBM0VSYNiLf3hTIest2nOSMdS59QYjUhdT?= =?us-ascii?q?3KKwSHmS1MvRZfbE9rW5YFAtZF5b4b3I1U/tbcRka2My0FWgJtNh4g2/pFiUFD?= =?us-ascii?q?qFmYeTzaDQewafbPtRh3cNyNrMK1KfT25x1LioX5v+Ak768DXWGpmRWxQdDCqI?= =?us-ascii?q?/xrt2KuVGUdKjiN+2zfGTMQyXSghConbcrEZ3K8DbJMAZBLJl603Uka4D7CWHX?= =?us-ascii?q?JRRGO74bJ01DWKB4btVJvPtXaNJ6d6YS56BtHA6HSQ3yF4C1qvlJMErTTyzELy?= =?us-ascii?q?qd6uy/vZ7T7bvFROf7aMyD22rLTqBqMpp08jT0B7Dq0YpC9UXswfdt6ll2SV7Y?= =?us-ascii?q?PCCdtN7hPB8E5NG+dkv+uZ0kBSnWD4ltn3rt3E5Aa9EaQymt8JQG1pxV9mr/Se?= =?us-ascii?q?Vl3UftquFS8adr6ZUv6bBz1ci0PbvSKehdsUJ/GhiUHRlq+Y8wD2hjXG1ReegR?= =?us-ascii?q?KOrLfasFk8/urfz3F7YN5x2R4eBZbsHHJ07ZkMmlFj6cUQBEnBsGqTMCMgucze?= =?us-ascii?q?CKlLFpRsu+uOj53l4t40KkIR4YzbBt4oOE9bSUpOPNaBvR17cEULDwRszvtrQs?= =?us-ascii?q?p1+S5fo8mb4MYGN1eQqnEPMZVsEH2Gft1qUqzT8oE8PfHrLv5P9DWGg/njL7gZ?= =?us-ascii?q?x9GE8WGvwMF7qR4Ytehns4m/DeNtAOcKBNgGCPFRC+Er8F1HGk9TCaIHV/jRHI?= =?us-ascii?q?yBHwRnm/7Fnooi9kWSHM1cvsklJJVrmrAkdfRyypOUtjvTOOOgroscD7uaUz7E?= =?us-ascii?q?E4KGzrrsmNlHe7OLNKA8L/OMGcITMqq14Ni50xXNOv05gBGdWhONcR7G1+bvzG?= =?us-ascii?q?5mOtki9Ov6BHh47E7cGO4PnXHH6gj6qBq7WW3z1Yz3c1vF4l5tCnLPHO6MWAQ+?= =?us-ascii?q?602GYJUyd/pwzBUgappbPBq1AbJ1eL0FvLmYwNJdxZxmU31kD46+glXNIz9R9R?= =?us-ascii?q?GpzGZ/wcuTD5ICH0zkqHY9IrSime1CNaHlbuEVl9GKUxw2zws9zUmnfX4V0nXJ?= =?us-ascii?q?Fwd1bghRx1EYo3NV4t5EIQwioZHggHcQqbA62wBUT5MYsEUlAOaRaG3Li/Yao3?= =?us-ascii?q?2FN8w7Ox6+/JbOx8AaUNOuxbjgGQgFhRAogWvrEGQLJgZ19d87bapgnjCof9Rf?= =?us-ascii?q?fpiWE9NearTcBG788Wq2Eu4gGlRxqv8Z1D9aoUiIiUdq5YZpjBpNtz70Z85T8B?= =?us-ascii?q?bCNNghl/jw+hUe8GueDj5sPWv4av6umzSqkiXfgX9wIzB2RklZT8mlcjocvY1+?= =?us-ascii?q?1EUI3alZz/8BxRI36NoIvaywNzKfYSJIKrcrdg8G8HJysHK3IVI9WWb/g84ylw?= =?us-ascii?q?MDTc/FFCGtkDZc8EM8rNlwFUjVfpWLJJ+srYBFCYEYFzeN4s72btzzA165Q8WP?= =?us-ascii?q?766DCqPZDf801NP/RbgSVwjtLNuuwVzuDUCCcJ+nSWdhl1wiyDy5mREfnw5v+D?= =?us-ascii?q?yMvJV18cGC45TZtdLiKY+QO7Xuq1iInpUgSM58/8mp0+blyfRmCxnKketqZMEP?= =?us-ascii?q?JAhTv73jdEC4D1nOiZs9yy52tLrldHCpp87QXZGKVDOZV2IRv4mdetRkhgASv/?= =?us-ascii?q?f8bYdgEwt+qSx+cM5fh+NkTlaI8fPB0E0bL75mBPQgtoVrH2ok6TXfgNa9t+VP?= =?us-ascii?q?PEsndV5Jp8JK8NJleSuIfnoStPqFAyBA8paaE/riZGdkbQgAJVW7z4uLkaigsT?= =?us-ascii?q?SdR5o1NDGXqsOGIi4DrKTaFVjK6XCPwJ/TWcULcDU0BpMixkRRO6xoluerWunf?= =?us-ascii?q?BdsWNGhTlxoP403Dx6XBG8ozHjp7oR2TI8/7G1rDoBtmBeTuWFiivGFFpNwvIL?= =?us-ascii?q?jacaFnbj5kexYHYGbITo5rloO97s9Y4743QweR8jZTEJXfy8CyHsiKOFGo6PsN?= =?us-ascii?q?VchB6LosnBcb+zLSwPNrsgyBPjRn590hPdnBZp62YLXDSg7ME+K4W5JMklxzCk?= =?us-ascii?q?GW7Fe1YQ+qlJqtf+tUYXTOsqblNs2GRj0tadSS0LX8HPH3s1gRUlaWVDa5JP8x?= =?us-ascii?q?gaF7MngjyQpKlJ4hkUYCvIEoSi4oTQn9nH2XczTddu3W/XqLeKhpU03315gd90?= =?us-ascii?q?6DCBuGgKfezCT8BsGmTz1ptYyeHmaPWttucHSYV4x7SlVP8PKdKj+Wyw2JVrRk?= =?us-ascii?q?Cp3LIeEESlMOUb3LfUTz+lSXGEWeSMa2WMnTY5M07q5RmvKl03adtKoFEmP+vH?= =?us-ascii?q?h55cixfhXq1uSiWXv1/bw3QpMfkGeAIupIenZwsKQfYeZ+iBJOgh3fo+BUAQb3?= =?us-ascii?q?/TAyR2DfO2vkSpnIdhPXVv/UT6bv73/gDgLtSSBgEOEZTGoZ5p5fy6WmWBNGd8?= =?us-ascii?q?zB1zOUl57PvfF1Utue9fbZmRmcLch9Jl3u4Zb/1tKzEyusYPmoJ/7omZyMKKcR?= =?us-ascii?q?DSzpbxItHYufqYDOfcz0QtfGFVTLwZbRnz54okIt4zQ6fTEqdBvRQAGag6R4Qs?= =?us-ascii?q?OHzv+6FyMAN+aRXRZLCzgsn2uuKLeIVbqGLM4lI3NifctAUJyuaoQgxjc5Cqm3?= =?us-ascii?q?LyLYgoRjJGq91iEAFmHYVIG8MEoQqqGJuUmKa8i9+q5Ux1p/UKsa3rCvDR1dS5?= =?us-ascii?q?2YpxU4Jd5UyRMzbbHLNrjVh9juSunvfA1YH8Cc38dtMAVeh7WnDKZ6THH4W+Lz?= =?us-ascii?q?KOP9zze1RC87GCyr55VQ+RZC/hVaqcqCKkLOlk4Vk8yoFgcuvT1CYt77DH19Ts?= =?us-ascii?q?fGxboyajrWKTNJRB9lDKAvbeXx1MQ/qf7GllBbEXbZfz9OoWNtwixMaT7hJr7D?= =?us-ascii?q?RGysSFOLShrk7Q1UJnb5LUMlXm1zw/WYYUPBS1KVEsjnPBqnTBHXRcKdCpKc1s?= =?us-ascii?q?gNaTExzs6FB9mWUsZm5aBmroXsycOWkB1MK4Yw2G7gVLD8wMn+SvY043qrWySf?= =?us-ascii?q?V0OpVCgeiqr6sIkdJoKyHJWchbMCbcIrBqPjpREOrPvkYnYgYevLUuWYc6e4KO?= =?us-ascii?q?IEUZP0eE0izy0ATC3Vfzd9y226aDODwW/Wlfz7LZzThMoBG0ufODjcL/ULDZbZ?= =?us-ascii?q?f2XPnJPSo7VzGaQyo9EUKo+VeipvoFs+CUIWAFolAbeiiSEhIcprhzrdjMCW/e?= =?us-ascii?q?ge9jc4cJhPCdQC/9UzB4lKwuBiZLskCMXvUDFQnKb3P7hmpTphCiLOdW/X35d7?= =?us-ascii?q?2Y2rZVW+sOD4tDaPKWWMHYefFAKDcsjTgZJuK8cMfHr7Y4z1LEV20ZHLfU9FeG?= =?us-ascii?q?Vk6ZXuScxy73XYUSp4U0uC8o+tXKni9tEqTIJK2Spzi0/Y69kimYuPfSVm43Y0?= =?us-ascii?q?w6mOgCGnWOwAFcKGEYDNEYoFrtQqCFZ0lQ1X8kivlj2wESdwRpU31v03pWnPCn?= =?us-ascii?q?Fs1fV1EUkDDmfPpTd11zDTUt7WeW8wbyZpoGosmVSGhApZUWTo9IFPQ08sHzMb?= =?us-ascii?q?YM2vwg1zIu9DQ+ujiBFVlUphiI/6rZAOR3wbgUtjpwxO1/QkzaG2CXSWPA0Ifz?= =?us-ascii?q?TpsXyA=3D=3D?= X-IPAS-Result: =?us-ascii?q?A2HlCADQsAlZ/wHyM5BcGwEBAQMBAQEJAQEBFgEBAQMBAQE?= =?us-ascii?q?JAQEBgwEmA2KBDI5zkF+CCwGVaCoDgXeIbVcBAQEBAQEBAQIBAmgogjMigSpbP?= =?us-ascii?q?AYBAnkDCQEBFwgpCAMBORoZBYhRgT4NslYmAop8hl+BXohKhRkBBJAWjUWHG4t?= =?us-ascii?q?sDYICVYRigzInhkyUNFiBCk4hFYU2HIFldIheAQEB?= Received: from unknown (HELO tarius.tycho.ncsc.mil) ([144.51.242.1]) by emsm-gh1-uea11.nsa.gov with ESMTP; 03 May 2017 10:34:11 +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 v43AYBo9030647; Wed, 3 May 2017 06:34:11 -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 v43AUru7015764 for ; Wed, 3 May 2017 06:30:53 -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 v43AUrfI029545 for ; Wed, 3 May 2017 06:30:53 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A1CBAQC6sAlZhxy3hNFcHAEBBAEBCgEBgywmZYEMjnOQX5d9JIYAAoRiVwECAQEBAQECEwEBAQoLCQgohUUDA3kQIDE9GhmIVoE+DbJWinMBAQgohl+BXohKhRkFkBaNRYcbi2wNggJVhGKDMoZzlDSBYU4hFYU2EAyBZT42iF4BAQE X-IPAS-Result: A1CBAQC6sAlZhxy3hNFcHAEBBAEBCgEBgywmZYEMjnOQX5d9JIYAAoRiVwECAQEBAQECEwEBAQoLCQgohUUDA3kQIDE9GhmIVoE+DbJWinMBAQgohl+BXohKhRkFkBaNRYcbi2wNggJVhGKDMoZzlDSBYU4hFYU2EAyBZT42iF4BAQE X-IronPort-AV: E=Sophos;i="5.38,283,1491278400"; d="scan'208";a="6038176" 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; 03 May 2017 06:30:53 -0400 IronPort-PHdr: =?us-ascii?q?9a23=3AgwBRSxBdnlggpD0L5bgVUyQJP3N1i/DPJgcQr6Af?= =?us-ascii?q?oPdwSPv9p8bcNUDSrc9gkEXOFd2CrakV1ayL4uu6ByQp2tWoiDg6aptCVhsI24?= =?us-ascii?q?09vjcLJ4q7M3D9N+PgdCcgHc5PBxdP9nC/NlVJSo6lPwWB6nK94iQPFRrhKAF7?= =?us-ascii?q?Ovr6GpLIj8Swyuu+54Dfbx9GiTe5YL5+NhW7oAHeusUIgIZpN7o8xAbOrnZUYe?= =?us-ascii?q?pd2HlmJUiUnxby58ew+IBs/iFNsP8/9MBOTLv3cb0gQbNXEDopPWY15Nb2tRbY?= =?us-ascii?q?VguA+mEcUmQNnRVWBQXO8Qz3UY3wsiv+sep9xTWaMMjrRr06RTiu86FmQwLzhS?= =?us-ascii?q?wZKzA27n3Yis1ojKJavh2hoQB/w5XJa42RLfZyY7/Rcc8fSWdHQ81fVTFOApmk?= =?us-ascii?q?YoUPEeQPIOhWoYr/qFsAthayGRWgCfnzxjNUmnP6was32PkhHwHc2wwgGsoDvm?= =?us-ascii?q?7Ko9XpLqcZTOa7w7PVzTXfdfNZwi3y55TIchs8pvyMRbZwftDMyUkzDQPKlU+f?= =?us-ascii?q?pJf/PzyLy+sNs3KU7/Z6We2zjG4nrhh8rz6yzckijYnJg5gaylHC9Shhzoc1P9?= =?us-ascii?q?y4SFJlbtK+DJtQtyeXPJZ1TMM6W2xkpjo2x7kctZKmciUG1o4rywPcZvGJaYSE?= =?us-ascii?q?/BHuWeCMKjlinn1lYqiwhxOq/Eig1OL8Us603U5PritKj9XArGoN2ALO5ciHUP?= =?us-ascii?q?R94l2t1iqI1wDW8u1EIEY0mrTHK5M53LI8ip4evV7eEiL4hkn6lrKae0Yq9+Sy?= =?us-ascii?q?9ejqYa3qppqGOI91jgH+PL4umsu6AekgKggOW3KU+fmg1L355kL2Wq5Hjucona?= =?us-ascii?q?bEsJDVP9gbqrSlDA9S14Yv8wy/ACu+0NQEgXkHK0pIeAmZgIjtOlHOJu34DPik?= =?us-ascii?q?jlSwkDZk2/DGPrr7DpXLNXjMiq3tfbl6605Cm0IPyoVE6pZVDKwRCO7iUU/28t?= =?us-ascii?q?rDB1k2NBLn7fzgDYBF258EEUaGH7ODOqrZsRfc/uYmPvWWboY9ojvxK/E5ofXp?= =?us-ascii?q?iClqyhcmYaC10M5POziDFfN8LhDcOCK0jw=3D=3D?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0ECAwDQsAlZhxy3hNFcHAEBBAEBCgEBF?= =?us-ascii?q?wEBBAEBCgEBgwEmZYEMjnOQX4IMlXEkgXeECQKEYlcBAQEBAQEBAQIBAhABAQE?= =?us-ascii?q?KCwkIKC+CMyIBgSlbPAMDeRAgMT0aGYhWgT4NslaKcgEBCCiGX4FeiEqFGQWQF?= =?us-ascii?q?o1FhxuLbA2CAlWEYoMyhnOUNIFiTiEVhTYQDIFlPjaIXgEBAQ?= X-IPAS-Result: =?us-ascii?q?A0ECAwDQsAlZhxy3hNFcHAEBBAEBCgEBFwEBBAEBCgEBgwE?= =?us-ascii?q?mZYEMjnOQX4IMlXEkgXeECQKEYlcBAQEBAQEBAQIBAhABAQEKCwkIKC+CMyIBg?= =?us-ascii?q?SlbPAMDeRAgMT0aGYhWgT4NslaKcgEBCCiGX4FeiEqFGQWQFo1FhxuLbA2CAlW?= =?us-ascii?q?EYoMyhnOUNIFiTiEVhTYQDIFlPjaIXgEBAQ?= X-IronPort-AV: E=Sophos;i="5.38,283,1491264000"; d="scan'208";a="5425427" X-IronPort-Outbreak-Status: No, level 0, Unknown - Unknown Received: from mx1.redhat.com ([209.132.183.28]) by emsm-gh1-uea11.nsa.gov with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 03 May 2017 10:30:52 +0000 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id B7D308124A for ; Wed, 3 May 2017 10:30:51 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com B7D308124A Authentication-Results: ext-mx01.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx01.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=plautrba@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com B7D308124A Received: from hulk.com (unknown [10.40.2.172]) by smtp.corp.redhat.com (Postfix) with ESMTP id CE99B189CB; Wed, 3 May 2017 10:30:50 +0000 (UTC) From: Petr Lautrbach To: selinux@tycho.nsa.gov Subject: [PATCH 03/19] sepolicy: Add manpages for typealiased types Date: Wed, 3 May 2017 12:30:20 +0200 Message-Id: <20170503103036.17514-4-plautrba@redhat.com> In-Reply-To: <20170503103036.17514-1-plautrba@redhat.com> References: <20170503103036.17514-1-plautrba@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.25]); Wed, 03 May 2017 10:30:51 +0000 (UTC) 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 From: Dan Walsh Signed-off-by: Petr Lautrbach --- python/sepolicy/sepolicy/manpage.py | 45 +++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/python/sepolicy/sepolicy/manpage.py b/python/sepolicy/sepolicy/manpage.py index bd5a64ac..b268680a 100755 --- a/python/sepolicy/sepolicy/manpage.py +++ b/python/sepolicy/sepolicy/manpage.py @@ -30,6 +30,13 @@ import sepolicy import os import time +typealias_types = { +"antivirus_t":("amavis_t", "clamd_t", "clamscan_t", "freshclam_t"), +"cluster_t":("rgmanager_t", "corosync_t", "aisexec_t", "pacemaker_t"), +"svirt_t":("qemu_t"), +"httpd_t":("phpfpm_t"), +} + equiv_dict = {"smbd": ["samba"], "httpd": ["apache"], "virtd": ["virt", "libvirt", "svirt", "svirt_tcg", "svirt_lxc_t", "svirt_lxc_net_t"], "named": ["bind"], "fsdaemon": ["smartmon"], "mdadm": ["raid"]} equiv_dirs = ["/var"] @@ -523,6 +530,16 @@ class ManPage: self._get_ptypes() for domain_type in self.ptypes: + try: + if typealias_types[domain_type]: + fd = self.fd + man_page_path = self.man_page_path + for t in typealias_types[domain_type]: + self._typealias_gen_man(t) + self.fd = fd + self.man_page_path = man_page_path + except KeyError: + continue; self.attributes[domain_type] = sepolicy.info(sepolicy.TYPE, ("%s") % domain_type)[0]["attributes"] self._header() @@ -542,6 +559,34 @@ class ManPage: if f.startswith(self.short_name) or f.startswith(self.domainname): self.ptypes.append(f) + def _typealias_gen_man(self, t): + self.man_page_path = "%s/%s_selinux.8" % (self.path, t[:-2]) + self.ports = [] + self.booltext = "" + self.fd = open(self.man_page_path, 'w') + self._typealias(t[:-2]) + self._footer() + self.fd.close() + + def _typealias(self,typealias): + self.fd.write('.TH "%(typealias)s_selinux" "8" "%(date)s" "%(typealias)s" "SELinux Policy %(typealias)s"' + % {'typealias':typealias, 'date': time.strftime("%y-%m-%d")}) + self.fd.write(r""" +.SH "NAME" +%(typealias)s_selinux \- Security Enhanced Linux Policy for the %(typealias)s processes +.SH "DESCRIPTION" + +%(typealias)s_t SELinux domain type is now associated with %(domainname)s domain type (%(domainname)s_t). +""" % {'typealias':typealias, 'domainname':self.domainname}) + + self.fd.write(r""" +Please see + +.B %(domainname)s_selinux + +man page for more details. +""" % {'domainname':self.domainname}) + def _header(self): self.fd.write('.TH "%(domainname)s_selinux" "8" "%(date)s" "%(domainname)s" "SELinux Policy %(domainname)s"' % {'domainname': self.domainname, 'date': time.strftime("%y-%m-%d")})