From patchwork Mon Jun 19 19:58:03 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stephen Smalley X-Patchwork-Id: 9797725 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 8529760381 for ; Mon, 19 Jun 2017 19:56:32 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 6A19F26B39 for ; Mon, 19 Jun 2017 19:56:32 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 5E53828451; Mon, 19 Jun 2017 19:56:32 +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 D781626B39 for ; Mon, 19 Jun 2017 19:56:30 +0000 (UTC) IronPort-PHdr: =?us-ascii?q?9a23=3AYio/wBaTk2ihVb1R2e4qlBr/LSx+4OfEezUN459i?= =?us-ascii?q?sYplN5qZocy5bR7h7PlgxGXEQZ/co6odzbGH7OawBCdZvcrJmUtBWaQEbwUCh8?= =?us-ascii?q?QSkl5oK+++Imq/EsTXaTcnFt9JTl5v8iLzG0FUHMHjew+a+SXqvnYdFRrlKAV6?= =?us-ascii?q?OPn+FJLMgMSrzeCy/IDYbxlViDanb75/KBe7oR/Su8QWjoduN6k8xxTUqXZUZu?= =?us-ascii?q?pawn9lK0iOlBjm/Mew+5Bj8yVUu/0/8sNLTLv3caclQ7FGFToqK2866tHluhnF?= =?us-ascii?q?VguP+2ATUn4KnRpSAgjK9w/1U5HsuSbnrOV92S2aPcrrTbAoXDmp8qlmRAP0hC?= =?us-ascii?q?oBKjU2/nvXishth6xFphyvqQF0z4rNbI2LKPZye6XQds4YS2VcRMZcTyxPDJ2h?= =?us-ascii?q?YYUBDOQPOv5Yoovgq1YAsxS+HhKhCP/zxjJSmnP7x7E23/gnHArb3AIgBdUOsH?= =?us-ascii?q?HModvoKKcdT/i1zKnWwjXFcvhYxDL955LMchAlv/6NXa97fM3KyUYyDAPIlUmQ?= =?us-ascii?q?qIz5MDOV0eQBqW6b7/F6Wu61hG4nrB9xryGpy8wxiYfJnpoYxk3L+Ch22oo4Jc?= =?us-ascii?q?C0RFRlbdOrDpdcrTyWOo1rSc04WW5oojw1yrgetJ6+eygF1YooygbEa/yCb4iI?= =?us-ascii?q?+hXjVPuNITtghHJqZra/hxGq/Ei80OL8TMi00EtRriZfjtnNtmwC1xzU6sSdTP?= =?us-ascii?q?ty4lyh1iqV2wDW6+FEJVg4lavdK5E/3r49jocfvEvMEyPsmEj6kbWaelsr9+S2?= =?us-ascii?q?8ejrf63qppqGOI91jgH+PL4umsu6AekgKQgBQWyb+eW61L3+8kz1Wa5Fjvorkq?= =?us-ascii?q?nfrJ/VO98bq7WlAw5Vzokj6xG/Ay2g0NQDh3YLNl1FeBWZj4TxIVHBPOj4Deuj?= =?us-ascii?q?g1SriDprxffGPrv7DZXRLnjMirHhcK1/605bzgozyMpQ54lICr4fOvLzQVX9tN?= =?us-ascii?q?vCDh82Kwa02froCM1h1oMCXmKCGq2ZMKHIvlCU5eIvOO6MZIkUuDbjMPUl6fru?= =?us-ascii?q?jWI2mFAGYKmp24cXaG2iEvRhOUWZbmLmgs0dHmcSogo+UOvqhUWMUD5SY3ayWr?= =?us-ascii?q?wz5isgBYKoE4jMW4etgKab0yejBJ1WYWJGBU6QHnf0bYmEXO0MaC2KKM97jjME?= =?us-ascii?q?TaShS5Mm1Ry2qQD1179nLu3S+i0EqJ7uz8Z16PPJlREz9D10CMKd33uLT25qgm?= =?us-ascii?q?MCXyU207xnoUxh1leD1rB1jOFEFdNJ/fNESRs1NZnZz+NmEd/yQR7Bcs2PSFm4?= =?us-ascii?q?XtWsGSsxQc4pw98Sf0Z9HM2vjxDC3iqtBb8YjLmLBJgt/qLd2Xj9PcB9xGzc1K?= =?us-ascii?q?kijlkmXNVAOXeghqFh6wjZH5TJnFmBl6a2aaQc2zbA+3mbzWWUpkFYURVwXL7d?= =?us-ascii?q?XX8FfEvWrM/55lvGT7C0FbsoLBFNycmYKqtFctfpl0lJRO//ONTCZGK8g2mwBQ?= =?us-ascii?q?ySybOKcIXqen4d0T7YCEgckgAf5G2GNAYlBiu7pGLeFjNuH0r1Y0zw6el+tG+7?= =?us-ascii?q?TkgswgGJdUJh1L21+gMOiPyfUfwT3bUEuDo7pzVzBla90MrcC8CcqAp5YKVcfd?= =?us-ascii?q?Q97U9d2m3ErQx9P4KvL7p5i1EEbwt3ulni1xJtCoVPicIqtm8lzBJuKaKE11NM?= =?us-ascii?q?bymY0o3tNbDMJWny+R+uZ7TQ2l7AzNac4r0P5+ggq1X/oAGpEVIv825p09lP1H?= =?us-ascii?q?uc/YnKAREJUZL3VUY2+R16qKvcYiUn4YPby2FsO7GusjDew9IpGPclyhG4ctZR?= =?us-ascii?q?KqyEEBPyHNMAB8i1M+EqhUambggfM+BP8a44JcSmd+GJ2KSzJuZvgCqmjXhb4I?= =?us-ascii?q?B6yk+M6zdzRfPJ35kfx/GVxReIVzD5jFi9qM/3gpxEaSsUHmWh1SjuHJRRabFq?= =?us-ascii?q?fYYXFWeuJNW6xtN/h57pX35X6kWjCkgc18C3YxqSaEbx3QpK1UQYuXangze3zy?= =?us-ascii?q?RokzE1qaqSxDLOw+X+exobPW5LXnNugkvsIYizidAaU1OlbwwolBuj/0n63a9b?= =?us-ascii?q?qL54L2nJTkdCZzL2IH16UqusqrqCZNZC6JcpsSVMTOSweEuaRaD5oxsb1SPjAm?= =?us-ascii?q?RfySsgdzGyu5X5mR16h36GLHppqnrWZ91wzw/F5NPAXf5RwiYGRC5ghDnNAVi8?= =?us-ascii?q?O92p8suOl5jfteC/WXmsVoZOcSb31oOMriy75XdlARenhfC8hsXnERQm0S/8z9?= =?us-ascii?q?RqTT/HrAv4YoXxzau2K/lofk5sBF/g7Mp6HJpzko4siJEW3ngVmo+Z/XwZnmfv?= =?us-ascii?q?Kd9bw77xbGIRRT4XxN7Y+Avl11NlLnKS3I/5VWuSws16Z9m8fGwWxjgx78dQCK?= =?us-ascii?q?eb9LZEhzd6okKkrQLNZvhwhi8dxuEz6H4ene4JoBAiziOBAr8MB0lVJjHslw+W?= =?us-ascii?q?4NCkt6Vbfn2vcb+t1Epkgd+uEr+CogZGWHb2ZJguBylw4dtjMFjUyn389pnkeM?= =?us-ascii?q?XMbdIUrhCUjRHAgPVOJZIvkPoFmCpnNXj7vXI71+4xlQZu0o2ivIibN2Vt+7q0?= =?us-ascii?q?AgZCOT3oY8Me4S3ijadCnseWxoyvEI9uGjMRUJvvV/KoHyoYte77OAaWDD08tn?= =?us-ascii?q?CbFKLRHQCF7kdms3XPE5WwOnGZOnYW0NJiRAOHK0xHmgAUWzc6kYAlGQC23sDh?= =?us-ascii?q?d1155j8J7F7ithRM0v5oNwX4UmrHoQencDM0SJyBIxpK8gFN/V3aPNeY7u1tAy?= =?us-ascii?q?FY5YGuoxaVKmOFfQhIC38GWlCcDVD5Irau/cXA8/SfBuemNfvCe7uPpfZbV/iS?= =?us-ascii?q?wZKv1Ytn8i2WOcqTO3luFfo72lBMXXphAcTWhy0PSzALlyLKd8Obqg289TNqoc?= =?us-ascii?q?Ck6vvrXh7v5YyUC7ZJK9pg5xW2jb2EN+6KiyZzMSxY2Y8UxX/U1Lgf20Yfiyd0?= =?us-ascii?q?dza3CbQArTXATKzRmq9NFB4bdy1zNMpO760m2AlCJc/bhcnx1rJiif41EVhFX0?= =?us-ascii?q?T7ms61fcwKP329NFTfCUaTKruJPiPEw8f2YaOgTr1dl+RUuAOutjmFCUPjOS6D?= =?us-ascii?q?lzbxXRC1Le5MlD2bPABZuIylbxltEnbsQ8jpah2hKtB3kyY7waYuiXPJKG4cKy?= =?us-ascii?q?Jzf1lJrr2N6yNXmO9/F3Vd7npiLumFmyGZ4/PeKpkIrfthGj50mP5C4HQm17tV?= =?us-ascii?q?6zlJROdvlyvMtNFurE+pkvKUxzp8ShVOtCxEhI2VskV5I6nZ8IdPWWrc9hIX8W?= =?us-ascii?q?qQEwgKp8diCtD3oK9Qy9fPlKX1KDpZ7t3b49ATB8nOJ8KBKnYhNgDpGDHMBgsf?= =?us-ascii?q?UTGrLX3fh1BakPyK7HKVoYI1qobyl5cVTb9bTEI6FvUfCkt/HdwCJIx4XjQrkL?= =?us-ascii?q?KBi84I/3W+pgHLRMpGppDHSu6SAfL3JTaFirlEYgEEwan/LYUSKIL73VdtakN9?= =?us-ascii?q?nIvUGErdRsxCoipkbgAoukpN62R+Qnc12037dgOn+GUTGuKsnh4qlgt+Zvwg9D?= =?us-ascii?q?Ts4lczOFXHvy4wkE4/mdXrnz+RbCLxLKe3XYFTFSX4rU4xPY3nQwxtdw29gVRk?= =?us-ascii?q?NCvYR7JWl7Zgc35khxXYuZZUGv5cSrZEYAMKyvGRfPUo0lVcpj+hxUBZ+evPEY?= =?us-ascii?q?FimxcycZ6ws3JA3BpubMQrKqzLOqVG1EJQib6OviKzze8xwRUeKFsK8GOcYC4I?= =?us-ascii?q?olIHN7k8Kyqu4ONs9RSImyFfd2gUS/oqvvVq+1sgNOSHySLg1aNMJV61N+yeNK?= =?us-ascii?q?6WoXbPldSPQl8q0UMIjUZF96Bs0cg/a0qUS1wvzLyJGhsUL8XCNwBVYNdJ9HXI?= =?us-ascii?q?ZymOq//NwZV7PoWmCO/nUfKOtLwVgkK4HAclBYIM4dodHpO0ykHXMd/nLKIZyR?= =?us-ascii?q?Uq/AnrIFKFDO5XdxKNkTYHpNqyzJBx3YlAPD0dBn99MSqv7LbNugAqmOaDXMsx?= =?us-ascii?q?YnoCRYsLKHY2WMy8my5EsHVNFyW40uUcyAee9TD8vTjQACP6b9V9ePeefQlsB8?= =?us-ascii?q?2u+TUj76i2jkba8pbEJ2D6L9tivMPP6eMBqpaIDPNUVaVyv13am4ZGW3ygS3TP?= =?us-ascii?q?HsKtJ5jsd4ksasT5Cmq7Uly6jDI1U8fxPda2I6eVgAHpRZxbv5KB0DAlK8C9Ci?= =?us-ascii?q?kUGw1sqOEb+KJ8eQoDboIhbh7stgQxK7KwLx+d0tSuRWatLj1WQONEwOqhZrxY?= =?us-ascii?q?1SwsYva0yHs9VJ06yfe48VIVTpEQkh7e3eqjZ5VZUSXrAXNSZQPPqDEjmGd8KO?= =?us-ascii?q?Y93P0/wAjSvlkGMzGHbutpaHZLv9skH1OdPW12CnYkR1+blYfD7ROs37EW/ytZ?= =?us-ascii?q?gdlU1PZIv2XgsZDEYTKjQqqrpY/Ssyo6Ytgsu7dxPpD7IsuaqJPemSTSTIPWsg?= =?us-ascii?q?2ETCG6F/1amtxLICxAWfdGhHsrNNABt4da9UUxUcI+KKBVB6k3urCmczxkAjAO?= =?us-ascii?q?zSUBTYOPwCQCgvug27vdjhqQao4tMAYDsJpZmdYdTzR2bTkApKC9U4XWlmmESm?= =?us-ascii?q?cPIAcS4gRM5B4AloFqceD/5YrEVplMxCBKo/hsSCvECoFo90fnSmGRmVX5Ru+t?= =?us-ascii?q?nPCp3QJTyfLs08MUWB1kBEhc2elZiFUnJKtwK6kKsY7AqiWIel/ivGLx1OumI0?= =?us-ascii?q?FcxtfOd13lCorJr2n8XzYd+X0VRI9P1GrQGY4UkwVndKYhvE9ML5y+ekbi+zwk?= =?us-ascii?q?wJxkH7i+VcC32VklqWgJRyK0HNpdEeFnsEnaWDp9Y5+1rpXlPo9dQm5U+JKGrF?= =?us-ascii?q?dYn19hMymjyZpTM8tN+CIDXCBToTWBu9u/UMJD2dVsAJ8KPtdyoHb9GKRKOZiX?= =?us-ascii?q?v302uqLgyn7f+zAgrli63i+/G6mmQOJF52ceABkmJ3yCqkkzCOsh6nvS8lfIsl?= =?us-ascii?q?1v4+dXGr2Pgl5rrDZ7AJ9OGi5D1Wq5IFRrUHlGr+JaJbzVc8NGWfk9fxuvNAEl?= =?us-ascii?q?GPE7wUOJ5Vl0kmn9YyNsrAtW4SfdXxM7VSMNmLfihSUeqt27OT8dU59IbzIhYD?= =?us-ascii?q?neJg2Ghy9XpwhQa1t2W58HH9lJ4bcb0pVI/sDaU0ajNTkFXAB+NgI/yfdQjkBD?= =?us-ascii?q?v1mEdS3fEAale+3CvQFwfceUsMGmNu/5/BtdhoPhru84670JR2e6lg21XdDes4?= =?us-ascii?q?j8u8WQtkSQaaj4M/ezYWPaQTjIihCwm6krA4fW8CjULQVUNYN2yXw6bpj9EWTL?= =?us-ascii?q?JwhJJ7oHJ0pHUqB3cc1GovtGZ8B+ZakJ5bRgBgmARhPyAoygsOdJLlDPRTTENS?= =?us-ascii?q?qB9vazoYXJ7bzSUeLgfNCDx27bQ6JrOZd38SX7G6303oBA50X7wept9kdmSVjc?= =?us-ascii?q?KS+BstXhJgQP5Ma8akvupJopHSnZAJ1oinri2llAd9YLQy2t6JkYyolW6Gz3Se?= =?us-ascii?q?Jj1kj8qvNS+qJh6Ykq57Bp1ca0KrvTKftAt09nGQKYBgJw9pUiGGJ/XXxeYvcN?= =?us-ascii?q?KPfNeqQUlcLupPrxF6wZ8h2V/PFWZsXcKkHdgMa/DCqcSRtekAcHtzEaMhOW1+?= =?us-ascii?q?SZlK9sVcalue/511or41i6NRMGzbZt5YKe9qqJou/XYQHRwqIfWqj2XMPzs6gj?= =?us-ascii?q?u1+P5f0+irECYGt1YxeoEOIFTM4S2n/gzbw2zSIrC87MA6jv+PpdWHIigjLhm5?= =?us-ascii?q?d9Ek4NGvwIHLqE44Jenns5m+PDLNEWdL5NmnqXHx6+DrAC0WKr6zeQIGR9hhHO?= =?us-ascii?q?yBTwTGOo4V/4syB3XCzMz835nUpNTLm3AkVSUDS1Nk9kqj+POxDotNXvs6Qv8E?= =?us-ascii?q?42KnDktM6KlGa5OrNXHsj/KceZISYqpFMYkocxRt2p2YAUA9a9Jske8G1mZPvE?= =?us-ascii?q?92yrizNBo7tAh4fG48GU++/YEmO8gKCBsLWC2ixYxWYksl0l7dCgLP7O7cWQQ/?= =?us-ascii?q?u0z2YRUzt/uwzZUhGuq7zbtF4VNlaJ0EfKhIwKJstW3WQ81kz9+OcjR888+xtE?= =?us-ascii?q?GYbdffMCoirzNyHuzVaYedI3WTGU0yFLEVLtDVl4BK881XrovM3TiXff510oR4?= =?us-ascii?q?d3d0z9hhx7Fp44Jlwp6FgWxCoDDAcMZAuDDL6yGUTqMYsEVEYEaRSd37i2YKQ3?= =?us-ascii?q?0lNpwrOp+uDTafZwB60XNvZSlgSOhkRUGooKsa0CR7JxY0Nd9LTJqQjmEYfnWe?= =?us-ascii?q?bpmGEtOv20TcBa8NwZuGE54gmlXRqg9I1P77AFh5CUbqREe4TDvNhg70d74j4C?= =?us-ascii?q?biNNjwJljxynTeAcpPvu4tzasJq09OmuVLwiR/gM9xQuAWRxkYfwikg5od7Lz+?= =?us-ascii?q?dcVpHViYPn/QBCPXGKvpra0x57KeYJMIKkYrJg93QBJygDKHMDJt6WZOcm4y5t?= =?us-ascii?q?Kjrf/VpCDd0QZdkAJsrChRhUilH1WLFU7sfUBl2YBJ1veM0z82X3zzQ18Z89Uu?= =?us-ascii?q?n+8j+2OY7Q4E1NP/9ZiyVsjt3CrvAPwfXOECgX/WWZax9tzyOHzJmNDerw/eqS?= =?us-ascii?q?x9zPUlMGHzQ5U4FDKzqe9w2nQfC1lJbyUg+O7M/8no4+flqKRnOthKQFrrpMEe?= =?us-ascii?q?lYhyX0wjdeDZv1i+uIvdSj7mVXt1tHEJt87BDeF6VfO490ORLmmcWxQUh8HCT/?= =?us-ascii?q?ctnOdhUyoOqW2vsM4+JmOkv8Yo8bIhQEx6jm5npVSgtuVaP5v1eYXeIXf9tmS/?= =?us-ascii?q?LEo2tL6YJhNa8AJlydq4HrrjtSrlA5HhMpYqcqrjNGbknOgBFVW6Hstb4BlAsT?= =?us-ascii?q?S9h5tFRIGWKtJW0+5j3HVb9PgKmWEvwV/S2ZTrYSXEVwLiN+XxS11Y1se7S3k/?= =?us-ascii?q?BHvGdGkzhzofcw1TxpWge8tTfqp60TxTIq4Ku4uykZuXxZUuWelD/FCVpHzPQN?= =?us-ascii?q?g6YTFXLi6VinbXkYa4vy5rhnKtj6+Ykn/Xs/fQ0pfzcaUuS4FyHwk6SID5SNsN?= =?us-ascii?q?JchB+NoMLObbuyLSgOKLsw0hfjR3lh0gjEghlk6mwLQi+v7NU8PoWyJd4lxja0?= =?us-ascii?q?GWjcbFsM/qJJsM7quF4XTes5dVBhz3tn0sSdQC0CWtDPEX4vjgc4cWVEbI5D6R?= =?us-ascii?q?gCGqktgzaIvapG/gYPbTfWCIul+Y7QncHW1nk7V9tqwHzZprGdjJMwzHJlg890?= =?us-ascii?q?7jKJuHkKbOPXTclsAmTo24dEzez+YOmtsvwZSIR41butSvgCMtOs+WGuwpVlRl?= =?us-ascii?q?elxqgCH1q+KOID3rDbUyO/Rm2CV+WLdGyMnzgiP0734hmoKUY3Z9lWoE8nNevC?= =?us-ascii?q?nYVclwznUbN7XCmQokXbzGM7O+MAaw02oJunexANTOMJaeiTO+wuwPwmCFQSdH?= =?us-ascii?q?LIHCp2C+qzsVGzhoh7P2tv7V/9YeT3/QDsKMGSFQUcEY7Gsp5x/uS3R2yZOX96?= =?us-ascii?q?zR19IFd7+vzaF1Qwqu9caYiekcLXh9Rh3u4Pb+1tPjElut4PhoJj7pGZ0MCOcR?= =?us-ascii?q?7P1ZvyPdXVreKDA/3DzkQlZn1aUqAHbgzr/Yk6OMA2W6HLF7tDoRscHbQ6QIAm?= =?us-ascii?q?N2rp8KF0LQVzchPeZbithsnqp/mLZodPp3LN71I/NiHcuxoZxvyzVwx7YIigh2?= =?us-ascii?q?/uL5AoWjJBs9ptBwN9HIRRH8MArgynA4Obma28hNGx50N6tPEQsaXuEvDFzs+0?= =?us-ascii?q?34ZvUJhA40yEIjLRC7J2gkRqlOiyhe3A0pbpA8P4ZdwETPR7QnLCarLeG4WwMC?= =?us-ascii?q?6BOsL9e05A9L6Ry6x5UhSXZC/nW6qGtSukNOhr4EkhzYx4ZuXTxiQ3777HwNvy?= =?us-ascii?q?e31bpiC7oH6LLpRf71vKCvfFUhJJT/qF7GZlHaoKbYv79OcOLcYuwN6C7Alv9D?= =?us-ascii?q?5CyteKI7C9rk/Q3UJ2bYnUI1Du1yY9WIkKOwi/MVA2jW/CtHvSHW5QLtO6Jslp?= =?us-ascii?q?gdaVCAHt5kZqlG4xZm9BAHfoRcyLNWkVwc2+eBaK9AVND9oZmO63Y0E4vLWoSe?= =?us-ascii?q?Z0IpVFhfmqtLIfnNZmMS7AX9JaPyDOI79yJTdREOHPq0IzYh4Frrg5QIE1aoaS?= =?us-ascii?q?IEkfKkeP1TvyzRfe0U3zb9Gs1qOJICEM8nVdzrLFyiNBpw+jtvacnMLjUarVbJ?= =?us-ascii?q?bsXP7dKCAlTC2VRSwuEUa1/lepo+EEvPSdIWgDo10ZYTmfCBANqaB1rNjRD2jT?= =?us-ascii?q?met5cJ0Mmv+aR3O4dCotj6c2ByBWpWiQUvEDEk/QdHanj21C6yK4IfoZxm7od7?= =?us-ascii?q?2VwOJuXuUSBoZdOqmCT8DwZeFVJzBukC4Qfum7YYuP/P4CzlvUQD5BQOHz/1qE?= =?us-ascii?q?QRvTGKSR?= X-IPAS-Result: =?us-ascii?q?A2HOAgBSK0hZ/wHyM5BcGgEBAQECAQEBAQgBAQEBFQEBAQE?= =?us-ascii?q?CAQEBAQgBAQEBgwIrYnsSjneRfIEaAZV2JQeBc4ZkVwEBAQEBAQEBAgECaCiCM?= =?us-ascii?q?ySBK1tDAnYDAwkCFzEIAwFsBYgGT4FFDbAFJQKLYohDgm6HcgyDEgWQQY4dhzC?= =?us-ascii?q?MIg2CXohThloClQlYgQonCQIfCCEPh3RaiU8BAQE?= Received: from unknown (HELO tarius.tycho.ncsc.mil) ([144.51.242.1]) by emsm-gh1-uea10.nsa.gov with ESMTP; 19 Jun 2017 19:56:27 +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 v5JJtAPv023774; Mon, 19 Jun 2017 15:55:14 -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 v5JJt9R4151904 for ; Mon, 19 Jun 2017 15:55:09 -0400 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 v5JJrmKV022505; Mon, 19 Jun 2017 15:53:48 -0400 From: Stephen Smalley To: selinux@tycho.nsa.gov Subject: [RFC][PATCH] Make BINDIR/SBINDIR/USRSBINDIR definition and usage consistent. Date: Mon, 19 Jun 2017 15:58:03 -0400 Message-Id: <20170619195803.8485-1-sds@tycho.nsa.gov> 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: Cc: Stephen Smalley Errors-To: selinux-bounces@tycho.nsa.gov Sender: "Selinux" X-Virus-Scanned: ClamAV using ClamSMTP As reported by Nicolas Iooss, there are still some inconsistencies in Makefile variables related to bin and sbin directories. Fix them. Before: $ find . -name Makefile -exec cat {} + |grep '^[A-Z_]*BINDIR' |sort -u BINDIR=$(PREFIX)/bin BINDIR ?= $(PREFIX)/bin BINDIR ?= $(PREFIX)/sbin SBINDIR ?= $(DESTDIR)/sbin SBINDIR ?= $(PREFIX)/sbin USRSBINDIR ?= $(PREFIX)/sbin After: $ find . -name Makefile -exec cat {} + | grep '^[A-Z_]*BINDIR' | sort -u BINDIR ?= $(PREFIX)/bin SBINDIR ?= $(PREFIX)/sbin For systems without usrmerge, this changes the default install location for fixfiles, setfiles, restorecon, restorecon_xattr, and mcstransd from /sbin to /usr/sbin, and drops the symbolic link from /usr/sbin/load_policy to /sbin/load_policy. It also updates fixfiles with the new paths for setfiles and restorecon, and drops the absolute path for make relabel targets, just relying on PATH to be set appropriately. Reported-by: Nicolas Iooss Signed-off-by: Stephen Smalley --- checkpolicy/Makefile | 4 ++-- checkpolicy/test/Makefile | 2 +- libselinux/src/Makefile | 2 +- libselinux/utils/Makefile | 6 +++--- libsemanage/src/Makefile | 2 +- libsepol/src/Makefile | 2 +- mcstrans/src/Makefile | 2 +- mcstrans/utils/Makefile | 6 +++--- policycoreutils/load_policy/Makefile | 7 ++----- policycoreutils/newrole/Makefile | 2 +- policycoreutils/run_init/Makefile | 2 +- policycoreutils/scripts/Makefile | 3 +-- policycoreutils/scripts/fixfiles | 4 ++-- policycoreutils/secon/Makefile | 2 +- policycoreutils/setfiles/Makefile | 2 +- python/chcat/Makefile | 3 +-- python/sepolicy/sepolicy/templates/script.py | 2 +- restorecond/Makefile | 2 +- 18 files changed, 25 insertions(+), 30 deletions(-) diff --git a/checkpolicy/Makefile b/checkpolicy/Makefile index 68e11f2..658b02a 100644 --- a/checkpolicy/Makefile +++ b/checkpolicy/Makefile @@ -53,8 +53,8 @@ install: all install -m 644 checkmodule.8 $(MANDIR)/man8 relabel: install - /sbin/restorecon $(BINDIR)/checkpolicy - /sbin/restorecon $(BINDIR)/checkmodule + restorecon $(BINDIR)/checkpolicy + restorecon $(BINDIR)/checkmodule clean: -rm -f $(TARGETS) $(CHECKPOLOBJS) $(CHECKMODOBJS) y.tab.c y.tab.h lex.yy.c diff --git a/checkpolicy/test/Makefile b/checkpolicy/test/Makefile index 0a31c5e..59fa446 100644 --- a/checkpolicy/test/Makefile +++ b/checkpolicy/test/Makefile @@ -2,7 +2,7 @@ # Makefile for building the dispol program # PREFIX ?= $(DESTDIR)/usr -BINDIR=$(PREFIX)/bin +BINDIR ?= $(PREFIX)/bin LIBDIR ?= $(PREFIX)/lib INCLUDEDIR ?= $(PREFIX)/include LIBSEPOLA ?= $(LIBDIR)/libsepol.a diff --git a/libselinux/src/Makefile b/libselinux/src/Makefile index 4306dd0..bb91465 100644 --- a/libselinux/src/Makefile +++ b/libselinux/src/Makefile @@ -196,7 +196,7 @@ install-rubywrap: rubywrap install -m 755 $(SWIGRUBYSO) $(RUBYINSTALL)/selinux.so relabel: - /sbin/restorecon $(SHLIBDIR)/$(LIBSO) + restorecon $(SHLIBDIR)/$(LIBSO) clean-pywrap: -rm -f $(SWIGLOBJ) $(SWIGSO) $(AUDIT2WHYLOBJ) $(AUDIT2WHYSO) diff --git a/libselinux/utils/Makefile b/libselinux/utils/Makefile index 474ee95..843b0e7 100644 --- a/libselinux/utils/Makefile +++ b/libselinux/utils/Makefile @@ -1,7 +1,7 @@ # Installation directories. PREFIX ?= $(DESTDIR)/usr LIBDIR ?= $(PREFIX)/lib -USRSBINDIR ?= $(PREFIX)/sbin +SBINDIR ?= $(PREFIX)/sbin INCLUDEDIR ?= $(PREFIX)/include OS ?= $(shell uname) @@ -63,8 +63,8 @@ sefcontext_compile: sefcontext_compile.o ../src/regex.o all: $(TARGETS) install: all - -mkdir -p $(USRSBINDIR) - install -m 755 $(TARGETS) $(USRSBINDIR) + -mkdir -p $(SBINDIR) + install -m 755 $(TARGETS) $(SBINDIR) clean: rm -f $(TARGETS) *.o *~ diff --git a/libsemanage/src/Makefile b/libsemanage/src/Makefile index f01385c..4ed95f7 100644 --- a/libsemanage/src/Makefile +++ b/libsemanage/src/Makefile @@ -155,7 +155,7 @@ install-rubywrap: rubywrap install -m 755 $(SWIGRUBYSO) $(RUBYINSTALL)/semanage.so relabel: - /sbin/restorecon $(LIBDIR)/$(LIBSO) + restorecon $(LIBDIR)/$(LIBSO) clean: -rm -f $(LIBPC) $(OBJS) $(LOBJS) $(LIBA) $(LIBSO) $(SWIGLOBJ) $(SWIGSO) $(SWIGRUBYSO) $(TARGET) conf-parse.c conf-parse.h conf-scan.c *.o *.lo *~ diff --git a/libsepol/src/Makefile b/libsepol/src/Makefile index 819d261..e39244d 100644 --- a/libsepol/src/Makefile +++ b/libsepol/src/Makefile @@ -89,7 +89,7 @@ install: all $(LN) -sf --relative $(SHLIBDIR)/$(LIBSO) $(LIBDIR)/$(TARGET) relabel: - /sbin/restorecon $(SHLIBDIR)/$(LIBSO) + restorecon $(SHLIBDIR)/$(LIBSO) clean: -rm -f $(LIBPC) $(LIBMAP) $(OBJS) $(LOBJS) $(LIBA) $(LIBSO) $(TARGET) $(CIL_GENERATED) diff --git a/mcstrans/src/Makefile b/mcstrans/src/Makefile index 709e1e0..611bd9b 100644 --- a/mcstrans/src/Makefile +++ b/mcstrans/src/Makefile @@ -1,7 +1,7 @@ # Installation directories. PREFIX ?= $(DESTDIR)/usr LIBDIR ?= $(PREFIX)/lib -SBINDIR ?= $(DESTDIR)/sbin +SBINDIR ?= $(PREFIX)/sbin INITDIR ?= $(DESTDIR)/etc/rc.d/init.d SYSTEMDDIR ?= $(DESTDIR)/usr/lib/systemd diff --git a/mcstrans/utils/Makefile b/mcstrans/utils/Makefile index 7e59641..83ac343 100644 --- a/mcstrans/utils/Makefile +++ b/mcstrans/utils/Makefile @@ -1,7 +1,7 @@ # Installation directories. PREFIX ?= $(DESTDIR)/usr LIBDIR ?= $(PREFIX)/lib -BINDIR ?= $(PREFIX)/sbin +SBINDIR ?= $(PREFIX)/sbin LIBSEPOLA ?= $(LIBDIR)/libsepol.a CFLAGS ?= -Wall @@ -15,8 +15,8 @@ all: $(TARGETS) $(TARGETS): ../src/mcstrans.o ../src/mls_level.o $(LIBSEPOLA) install: all - -mkdir -p $(BINDIR) - install -m 755 $(TARGETS) $(BINDIR) + -mkdir -p $(SBINDIR) + install -m 755 $(TARGETS) $(SBINDIR) test: ./mlstrans-test-runner.py ../test/*.test diff --git a/policycoreutils/load_policy/Makefile b/policycoreutils/load_policy/Makefile index 256d95a..7541b82 100644 --- a/policycoreutils/load_policy/Makefile +++ b/policycoreutils/load_policy/Makefile @@ -1,7 +1,6 @@ # Installation directories. PREFIX ?= $(DESTDIR)/usr -SBINDIR ?= $(DESTDIR)/sbin -USRSBINDIR ?= $(PREFIX)/sbin +SBINDIR ?= $(PREFIX)/sbin MANDIR ?= $(PREFIX)/share/man LOCALEDIR ?= /usr/share/locale @@ -18,8 +17,6 @@ install: all install -m 755 $(TARGETS) $(SBINDIR) test -d $(MANDIR)/man8 || install -m 755 -d $(MANDIR)/man8 install -m 644 load_policy.8 $(MANDIR)/man8/ - -mkdir -p $(USRSBINDIR) - -ln -sf $(SBINDIR)/load_policy $(USRSBINDIR)/load_policy clean: -rm -f $(TARGETS) *.o @@ -28,4 +25,4 @@ indent: ../../scripts/Lindent $(wildcard *.[ch]) relabel: - /sbin/restorecon $(SBINDIR)/load_policy + restorecon $(SBINDIR)/load_policy diff --git a/policycoreutils/newrole/Makefile b/policycoreutils/newrole/Makefile index bdefbb8..0f15c43 100644 --- a/policycoreutils/newrole/Makefile +++ b/policycoreutils/newrole/Makefile @@ -82,4 +82,4 @@ indent: ../../scripts/Lindent $(wildcard *.[ch]) relabel: install - /sbin/restorecon $(BINDIR)/newrole + restorecon $(BINDIR)/newrole diff --git a/policycoreutils/run_init/Makefile b/policycoreutils/run_init/Makefile index 7b25952..256b853 100644 --- a/policycoreutils/run_init/Makefile +++ b/policycoreutils/run_init/Makefile @@ -49,4 +49,4 @@ indent: ../../scripts/Lindent $(wildcard *.[ch]) relabel: install - /sbin/restorecon $(SBINDIR)/run_init $(SBINDIR)/open_init_pty + restorecon $(SBINDIR)/run_init $(SBINDIR)/open_init_pty diff --git a/policycoreutils/scripts/Makefile b/policycoreutils/scripts/Makefile index 969e5c0..ebdec98 100644 --- a/policycoreutils/scripts/Makefile +++ b/policycoreutils/scripts/Makefile @@ -1,8 +1,7 @@ # Installation directories. PREFIX ?= $(DESTDIR)/usr BINDIR ?= $(PREFIX)/bin -USRSBINDIR ?= $(PREFIX)/sbin -SBINDIR ?= $(DESTDIR)/sbin +SBINDIR ?= $(PREFIX)/sbin MANDIR ?= $(PREFIX)/share/man LOCALEDIR ?= $(PREFIX)/share/locale diff --git a/policycoreutils/scripts/fixfiles b/policycoreutils/scripts/fixfiles index 1aa330f..a988744 100755 --- a/policycoreutils/scripts/fixfiles +++ b/policycoreutils/scripts/fixfiles @@ -112,8 +112,8 @@ FORCEFLAG="" RPMFILES="" PREFC="" RESTORE_MODE="DEFAULT" -SETFILES=/sbin/setfiles -RESTORECON=/sbin/restorecon +SETFILES=/usr/sbin/setfiles +RESTORECON=/usr/sbin/restorecon FILESYSTEMSRW=`get_rw_labeled_mounts` FILESYSTEMSRO=`get_ro_labeled_mounts` SELINUXTYPE="targeted" diff --git a/policycoreutils/secon/Makefile b/policycoreutils/secon/Makefile index 1f074ff..01adbc0 100644 --- a/policycoreutils/secon/Makefile +++ b/policycoreutils/secon/Makefile @@ -24,7 +24,7 @@ install: all install -m 644 secon.1 $(MANDIR)/man1 relabel: - /sbin/restorecon $(BINDIR)/secon + restorecon $(BINDIR)/secon clean: rm -f *.o core* secon *~ *.bak diff --git a/policycoreutils/setfiles/Makefile b/policycoreutils/setfiles/Makefile index 4b8cd81..60120e2 100644 --- a/policycoreutils/setfiles/Makefile +++ b/policycoreutils/setfiles/Makefile @@ -1,6 +1,6 @@ # Installation directories. PREFIX ?= $(DESTDIR)/usr -SBINDIR ?= $(DESTDIR)/sbin +SBINDIR ?= $(PREFIX)/sbin MANDIR = $(PREFIX)/share/man LIBDIR ?= $(PREFIX)/lib AUDITH ?= $(shell test -f /usr/include/libaudit.h && echo y) diff --git a/python/chcat/Makefile b/python/chcat/Makefile index 0a52e8f..dbaf9e6 100644 --- a/python/chcat/Makefile +++ b/python/chcat/Makefile @@ -1,8 +1,7 @@ # Installation directories. PREFIX ?= $(DESTDIR)/usr BINDIR ?= $(PREFIX)/bin -USRSBINDIR ?= $(PREFIX)/sbin -SBINDIR ?= $(DESTDIR)/sbin +SBINDIR ?= $(PREFIX)/sbin MANDIR ?= $(PREFIX)/share/man LOCALEDIR ?= $(PREFIX)/share/locale diff --git a/python/sepolicy/sepolicy/templates/script.py b/python/sepolicy/sepolicy/templates/script.py index c79738b..e8cfd6f 100644 --- a/python/sepolicy/sepolicy/templates/script.py +++ b/python/sepolicy/sepolicy/templates/script.py @@ -81,7 +81,7 @@ sepolicy manpage -p . -d DOMAINTYPE_t restorecon="""\ # Fixing the file context on FILENAME -/sbin/restorecon -F -R -v FILENAME +/usr/sbin/restorecon -F -R -v FILENAME """ tcp_ports="""\ diff --git a/restorecond/Makefile b/restorecond/Makefile index b1df89f..fac2766 100644 --- a/restorecond/Makefile +++ b/restorecond/Makefile @@ -55,7 +55,7 @@ install: all -mkdir -p $(SYSTEMDDIR)/system install -m 644 restorecond.service $(SYSTEMDDIR)/system/ relabel: install - /sbin/restorecon $(SBINDIR)/restorecond + restorecon $(SBINDIR)/restorecond clean: -rm -f restorecond *.o *~