From patchwork Mon Feb 6 15:57:19 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Carter X-Patchwork-Id: 9558271 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 B7BAD60413 for ; Mon, 6 Feb 2017 15:59:01 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id A99C520223 for ; Mon, 6 Feb 2017 15:59:01 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 9CDB4205A4; Mon, 6 Feb 2017 15:59:01 +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 (emsm-gh1-uea11.nsa.gov [8.44.101.9]) (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 0F39020223 for ; Mon, 6 Feb 2017 15:58:59 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.33,342,1477958400"; d="scan'208";a="2916500" IronPort-PHdr: =?us-ascii?q?9a23=3AGTTlIReFJbzF4drfgT/mk8+DlGMj4u6mDksu8pMi?= =?us-ascii?q?zoh2WeGdxcq4YhON2/xhgRfzUJnB7Loc0qyN4vymBjNLsczJmUtBWaQEbwUCh8?= =?us-ascii?q?QSkl5oK+++Imq/EsTXaTcnFt9JTl5v8iLzG0FUHMHjew+a+SXqvnYdFRrlKAV6?= =?us-ascii?q?OPn+FJLMgMSrzeCy/IDYbxlViDanb75/KBq7oR/Tu8QUjodvKbg9wQbVr3VVfO?= =?us-ascii?q?hb2XlmLk+JkRbm4cew8p9j8yBOtP8k6sVNT6b0cbkmQLJBFDgpPHw768PttRnY?= =?us-ascii?q?UAuA/WAcXXkMkhpJGAfK8hf3VYrsvyTgt+p93C6aPdDqTb0xRD+v4btnRAPuhS?= =?us-ascii?q?waLDMy7n3ZhdJsg6JauBKhpgJww4jIYIGOKfFyerrRcc4GSWZdW8pcUSJOApm4?= =?us-ascii?q?b4ASEeQPO+hWpJT5q1cXsxeyGQygCeXywTFKm3D2x7U33fk/HwHI3AIgGNEAvn?= =?us-ascii?q?rao9r6NqgSSeK4wLTGwDvMc/xZxyz95ZPUch0ju/yAQa58fMTPxUQpCgjLjk+Q?= =?us-ascii?q?qYvgPz6N0uoCqW2b4PR7VemylWMosRtxoiSxycc2l4LEgYAVy17Y+ipj2oY1Oc?= =?us-ascii?q?O0RVVnYd+kDJRQtyaaO5FwQsM5WW5koik6yroYuZOieiUB1ZcpxwbHZvCafIWF?= =?us-ascii?q?7QjvWeaMLTtimn5od6yziwyv/UWm1+byTNO70ExQoSpAitTMs3cN2AHN5cWfUf?= =?us-ascii?q?t9+1uh2S6I1wDO9uFIOUA0mrTfK54m2rMwioAcsV7CHi/rg0X6lrOWd0U49eio?= =?us-ascii?q?7OTreLPmqYOHN4BokA3+N6UumsinDeQ5NAgBQXSb9Pyh2LDs8kD1WrVHguAsnq?= =?us-ascii?q?XHv53WO94XqrOhDw9QyIkj6hK/Dzm80NQfmHkKNElFdwyDj4joPVHOPf/5Ae6k?= =?us-ascii?q?jFSrjTdrwezJMaP6ApjWMnjCkKvufbZ660JGzgoz1spQ64hbCrEGPvL/QlXxu8?= =?us-ascii?q?DADh8lLwy0xP7qCNd61oMYQ22PHq+ZP7nUsVKT5OIvJO+MZIoPtzbmN/gq+eTu?= =?us-ascii?q?jWQjlV8aZ6mp0oMdaGqkEfR+P0WZfX3sj88DEWcIpAUxUO/qiEaFUT5VZnayQb?= =?us-ascii?q?kx5j8/CIK7AobMXZ2tgLqd3CemBJFWYXpGCl+UG3fya4qEQ+sMaD6VIsJ5ijwL?= =?us-ascii?q?S6OuRJEn1RGvqA/6zKFqLuvK9SIGq53vzt915/fclRsq7zx7E9yd032RT2Fzhm?= =?us-ascii?q?4HWjg23KZ5oUNg1FiD1al4judCGtNN/fNJVR02NZnGz+x1E9ryQB7Ofs+VSFa6?= =?us-ascii?q?RdWrGSw+Ts4rzN8UeEtyB9KijhXf0CWwGL8Vi6aHBJoq/aLAx3LxPdpyy27a1K?= =?us-ascii?q?k9iFkrWspPNWu6hqFh8wjcGYvJnFuFl6awdaURxynN9H+dwmqIuUFXSg9wUaHe?= =?us-ascii?q?UnAYaUrat9P55lnNT7W2E7QoLhNBydKeKqtNctDojVRHRPDlONnFZmKxn368BR?= =?us-ascii?q?eOxr+WaorlYX8d3CbcCEgajQ8f53CGOhYiBi25uWLRECRuFU7zY0Pr6eRxtmu7?= =?us-ascii?q?QVUuzwGLdE1szKK19QQPhfydUPMTxrYEtz09pDpqBlq92MjWC9WYrQp7YKpcec?= =?us-ascii?q?894EtA1W/BuQ19P5igL6V8iV4EaAl3sV3h2AhwCoVai8cqtGkqzA1wKa2GzFxB?= =?us-ascii?q?aymU3ZfqOr3YMmPy5gyga7bK2lHC19ab4qkP6O4ipFXloA6pF1Ei/m5i09lN0n?= =?us-ascii?q?uQ/47KDQQJUZ7rVUY37Rd6ranAYiYh/4PUyWFsMa6svz/Bwd0pB+wlygu7ctdc?= =?us-ascii?q?KqyEFwjyE9AAC8ipMuwqlECjbggYM+BK6K40I8SmeuOc16G2JuZgnSypjX5c7Y?= =?us-ascii?q?9nzk2M8jBwSunS35YK2/uYxBeIVy/gjFe9tcD6gZxLaisWHmWh0ijkGI5QZqpp?= =?us-ascii?q?cIYQFWiuItO4xtNih57sQXFU7lijCE0a2MWxYxqdc0T93RFM1UQQuXGnmTW3zz?= =?us-ascii?q?hwkzEutaef2DHOw/jldBoCIGFHXm5ijU3jIYKsldAVQFCobxQ1lBui/Uv63KZb?= =?us-ascii?q?pL54L2nIXUdFZDP2L2dlUqq+s7qNechP5IkusSpJTOS2eUqaRaLloxsGzyPjGH?= =?us-ascii?q?NTxT4heDGuppX2gQZ6iHmGIXZtsnXZY9p/xQra5NDGQv5RxDUGTjFiiTbLHli8?= =?us-ascii?q?I8Wp/dKMmpffr++xSmOhWYdXcSTw0YyAsy676nFwDh2kg/C/gNvnHhYm0SXjzd?= =?us-ascii?q?llST3IrArgYonsz6m6N+Nnfk1sBFDi8Mp3AZtxnZUqhJEXw3QagY+V/XUfm2fp?= =?us-ascii?q?Ldpbwb7+bGYKRTMT3d7V4RTq2FFkLnKT3Y72SnWdwsxnZ9m1eW4W3iM978ZQB6?= =?us-ascii?q?eO67xIhyx1okC3rQjJe/hygi8dyecy6H4dm+wJvAstzj6BArwLBklXIyjslxWO?= =?us-ascii?q?79Cjo6Raf32vcaCx1Ep4nNCuEKqCrhtaWHnnZpcoBTVw4dlnMFLQzH3z7ZnpeM?= =?us-ascii?q?PXbdIXsh2bjQ3AgPRSKJM/jfcKnjdnNn7mvXE/zO47lxNu14mgvIebM2Vt4L65?= =?us-ascii?q?AhlAOz3tfcwT5zXtgbxEkcqMxI+vGZFhGikMXJvuVv+oFS4etfLgNwmSCjE8rG?= =?us-ascii?q?mUGabHFw+F9Ehmt27PE4ysN3yPJ3kW09NiRAKGKUxcng8UWi46npgnGQC23sDh?= =?us-ascii?q?d1155j8J7F7ithRM0v5oNwX4UmrHvAencCo0SJyBIxpO9A5C4VvVPtKE7u9oAi?= =?us-ascii?q?FY5YOurBaWKmCBfARICnwJWlaYCF/9MLmu4sPA8+eGCeakKfvBf6mOo/REV/iU?= =?us-ascii?q?3ZKvzpdm/zGUO8WROHltEuY22lRFXX9kG8TVgTMPRDILlyjVdc6UuA+8+jFrrs?= =?us-ascii?q?C46PnrQBjg5ZaLC7ZJLdpv+gy2gKeaO+6enil5LyxU1pQWxX/H0LIfxkIdizly?= =?us-ascii?q?dzmxFrQNrS3NTaLUmqBJFBMbbiRzNMVG760iwglNJc7bitTw1rFmlPI1DUlKVU?= =?us-ascii?q?D5kMGzecMKO329NE/ABEuTOrSJPzvLw93wYaO5UrBQgvtbuAC3uTaBCUDjJi6D?= =?us-ascii?q?lz7rVx+xLe5MkDuXPBtEuIGyahxtE3TsTMr6ah2nN996lSA5wbsuiX7RKGEcNy?= =?us-ascii?q?Jzf1lKrr2K4iNSmu9/FHBZ7np5MemEnD6U7/PCJpcYq/drBz57l+Zd4HU60LZa?= =?us-ascii?q?9j1LRPlvlCvVtN5urEmskvOTxTp/TBpOtjFLiZqFvUV4J6rW64JAVmzC/BIR6m?= =?us-ascii?q?WQEA8HqMF5Bd3qoaxQzcLPlK3rIjdY793U5dccB9TTKM+fNnohKwDmGCbMDAYe?= =?us-ascii?q?Qz6rNHvfh1dBkPGc932VqII1qp7wl5oPULBbUEY5FvQACkRqBNYCOot4Xis4kb?= =?us-ascii?q?6Hi84F/WGxowLWSMVev5DHTe6SAe71JDaCk7ZLewEEwajmIoQXN4373VFia1Zh?= =?us-ascii?q?kYvWG0vQR81NojZ7Yg46ukpN7GN+Tmo1207/bQOt+nATH+aunhEqkgt+ffgt9D?= =?us-ascii?q?D07lgsJ1rKqywwkE8qlNr4nz+eaz/xI722XY1MDCr0rUcxOIvhQwlpdQ2ygVBk?= =?us-ascii?q?NDDcSr1LgLtvb35rhxHHtJtIAf5TU6tEYBoKyvGWY/UnylNcqyq9yU9A/+vFBo?= =?us-ascii?q?NolBE2fp60s3JAxwVjYcYpJazXIapF1EJQhqWPvyC20OA+2xUeJ0ET/2ORYyMH?= =?us-ascii?q?pEsINrw6KCWy5exs9RaOmz1dd2gQT/AquO5l9lshO+ScyCLty7hDJV6rOOybNK?= =?us-ascii?q?6ZuG/AldWUQlwq0EMIjEpF/bls3cclbUWUS1glzKGNGBQRKcrCNQZVYtJI9HfN?= =?us-ascii?q?ZiaBr//CwYhpMIW9De3nVu6OtLwJjUKjEgYpB54M4doBH5W21kHXM9vnJqYfyR?= =?us-ascii?q?ox/ATrOEmFDPNRdR2WijgHvcC/w4Js3YRGPD4dG399MSK557bMuAAlnOeDXM03?= =?us-ascii?q?YncGXooILHQ2V9OmmyRBpXRPECG30v4FyAiF9zLzuz/QAyfmYNpsfvebfw1sBc?= =?us-ascii?q?qt+Tol8Ki2lETX/Y/EK2H+KNRivMXA6fkDq5abDPNUTrl8s0DGl4leWXOqT3bF?= =?us-ascii?q?EcSpKJjod4kscdv0B26+Uly4kTI6UcHxPdeqLqWTjgHoQ5tUvJOc3DA5Os+3Di?= =?us-ascii?q?seFAtop+Ef+KJ8YhUOY4Elbh7stgQ+MbG/IQiD39qyRGatLCdZQONEzeWmfbBX?= =?us-ascii?q?yTQjbvOiwns6Up461/W38VIKRJwSkx7R2fOjZ45YUSjvB3BQYBvPqjQjl2hgN+?= =?us-ascii?q?cyxeE/zAnOsVYCLzCBbPZpZ3Bcv9EgGVOSJm17CmkiR16cl4XD5BKs37AJ8itS?= =?us-ascii?q?mNZUyfFKvGL4vpDBfDKmQLarponNsyo8cdgmpLV8MZDiIsuDs5PegjzfTZnLvw?= =?us-ascii?q?KYUS67F+BVlcNKLCJeXvZIhXkvOdYatopZ9UoxSsA+KqRACKk2vL+qbyZkADUT?= =?us-ascii?q?zS8eWYKA2iACguei1LvbkBeQbIotMAYevJVEnNQdTzZ8YjkCq6+7S4XWi2iER3?= =?us-ascii?q?ARLwcX7ARD+BwPmZd1fuHl5orIS5lMxCRNrv1vUyvEDJ9o+0L1SmGLm1T4Tuuu?= =?us-ascii?q?k/Cx1wJI0P3sysUbWAJ4CUVF3OlZiE0oJaptJKYNoI7FrCWIdVjgs2L3yOqqPl?= =?us-ascii?q?5Rydfbd1fgForKqXL8UjEA+X0TXYJP0nffFZUOnAp5b6YroE5MLpi/dEjj/TIp?= =?us-ascii?q?24NnEqKkWsCswlYqsWwJRzy2E9ZbDeFprk7XUiV/Y5+3sJXlJ4lSQmhI9ZKBqV?= =?us-ascii?q?dWilliPjWlxppbL8FN5j8MUyZVoTWBotS9VM1D1dVxD58WLdd1o239F79cOJiN?= =?us-ascii?q?v302vaTiymXD9DAmt1e13y6+G7OiT+1D4W0RBAEpJ2WYqkkgC+ss82jS8lDRsl?= =?us-ascii?q?B65ehbHL2PgV93oDljApBEHixJ2my9L1RvUHlGtP1XKarPf8NAQ/kyZBqvOx0k?= =?us-ascii?q?Gv4lxEGJ/F97kmnnbCBosQta4S/dVREuVSYJmrfthSEeqsa/ND8CTJJIaS8ubz?= =?us-ascii?q?3LKgKcnSBXsg1Sa0RtW5AeGdZK5a0U3ZFT/srZUkasKCcFXBN4OgI/y/pfmlZJ?= =?us-ascii?q?sF+EdiDFEQqoafHPvwVtcseLsc6pKu71/ARch4PmseA49rkDSGa8lQ2rX9/es5?= =?us-ascii?q?f2tseWuUuWaKf4L+q8bGfdTDjLiBC9nqskA4XP/yfIKgZbLYd1yWY8a5j7FWHL?= =?us-ascii?q?JQhGJ74cJ0dDVaB1c89GrfpeZ8B5Y6sG5LFiBgqfRhzxHIygsuNGIkzURTTEIC?= =?us-ascii?q?WL6va/rp7L7bzBVejgYdSBx3TAQ61pJZp19Cf0G6z03o9E5kr5xOpi+ll8SVfY?= =?us-ascii?q?LyCLtM7hKR8T5Mm+akviuYUkEijYAJhsjHbgxFxMesQMTiK295QYzY9W52zrSe?= =?us-ascii?q?JkyETztvNd96V844kt/79p0du0JbvVKflCq09oHAWbBgVw+ZUxG2V/Q2dRYvEP?= =?us-ascii?q?J/vPYasZit3hpP7tG6wR9hKV5/RTacHbKEHZhsm/FjacRARcnAcatT4VNBaT1+?= =?us-ascii?q?Kelq9vTsaluPL51V4z7Fi4Mh4G1qpi5YOe9qqPvu/XYAPbzaIYVajyWsPzsrMs?= =?us-ascii?q?tluO5f0+irEBZHF6bha6EOgZSs4d3H3vzb4rzSIrF8PMAa7g9OREV3IjkTLqg4?= =?us-ascii?q?p9EEkOGvMIAbqL+pxTnmIilOzdMt0ZbLxCmnqVGhG+CbICz2Ck6zeMIGZ5mB7O?= =?us-ascii?q?yw//TXm17FDosS9yWTHMwMv7kkpJSrm3Al9fXyizNk9itzOPJw7ou8Dpuaku6U?= =?us-ascii?q?E2L2jktM6MlGS9ObNYBcv/JMeGLSkzvlIXg4U7Rsaz1oADBdq9PNAR/Wl8bvTE?= =?us-ascii?q?7WOrnTVBo6BaiIXA+cyV5u/YHX+7j62dsbmNwi5XymQgt1El9t+gLu3O58GNQ/?= =?us-ascii?q?mw2GYRUiZ/uw/FXxGrr7zWtE0bNlKQ30fKgoMKOMtV3X4i1kHp/OIjWs489B1C?= =?us-ascii?q?FobcYPMPvTbzOD/vzFaeZdI3UzOS0zpRHlL7C1l3ArM82H7qvMLUiXjQ50AoRp?= =?us-ascii?q?NueED9ghx3FYo4I1o36FcL2ioDDRQNaReDAbGtAkTlK5cEVUcdZhmc2bi6e704?= =?us-ascii?q?3UttzbOz6u7TavZ8B6kWNvpHiA6BgkRbEIoMsaICWLJ8Z0Nd9KnPqwj4FofoQu?= =?us-ascii?q?PrlXU1Nfy6WMxa994Wt2c66AalWxWg8YtD76ociJ2Qcq5Eep3MscBn4kdp+zEA?= =?us-ascii?q?aytNgAJlgBOhS+Aco+Lj7cbHv5q08OquU7wtR+oP/RguG2t+l4fwgEwkodzPzO?= =?us-ascii?q?dTUJPVhp7w8A9TOH6Ho53a3ANiKeUUJIKkYq1g+28BJycAO3IEJcCWZOUk4y9x?= =?us-ascii?q?LDXT4ERPAsENZdMdJ8fNnB5bi033V7FJ98rbHFCYB511d88282r90Co1/ockUu?= =?us-ascii?q?b89D+2IojS71BMPvxZlipjiMnPpPMLzvrOFicY/WOVax9vwiON05ONEer//f2Q?= =?us-ascii?q?yNHIUFMLBjU5U4ZGJDuM4wOnROu1lInxUgyO98/zhIkze16XRnOsgqsKqLtMEf?= =?us-ascii?q?RHiiXhxDdSDIf1h+ias9C08mtYqkVHEJpv7R3CAKhfJo90OQjkmcmrSEl8ATH/?= =?us-ascii?q?eMLNeho1puWWwuYM4+NjN0rxfoIbOggLy67m5npVQApuT6T2vlWDUeISetRmUv?= =?us-ascii?q?XEoW5R6Y56LK8PJledroTwrjhUsFA2HBMpaLgoozxGbEnBgglVVLzyuLEekQYT?= =?us-ascii?q?TN95uUBNGWKsIm0+/CDIVb5IjKWLDvwa7CmTRLQUU0p0KiN+Xw+12JJ2drumh/?= =?us-ascii?q?9HqH1Jnj99oPUx1zxmRQe8tjPsp60XxDIg46u0tDMftnxZVu+eiTvHCU1fzPQW?= =?us-ascii?q?iqcRE3ni5kK6YHkfa4vy575rJd/++okl4nQ/ZwgjfiIdUOSkFS7wlaOJDZaVvN?= =?us-ascii?q?JamhGNpN3EbaWvIigKKrQ91RXjSmBy0gfChxZo63IHTCiv4tEiJYW9P9slxyWz?= =?us-ascii?q?FGjUcVYD+KVJv9XruV4MVus2ZktrwH9/3cifWi0NWMvPFn43jggjaWVEdohP5g?= =?us-ascii?q?MaF6ksnzaHo6hH/gASYDfPEYSl+5LdndnJ2XkjV9hqwn/ZpqyfipMsznJlh8t+?= =?us-ascii?q?7jSSt3QKa+zYT8hsD2Dy1odB0+P+Ye6gsuQaSIR7ybShV+QCPtOk+Wus15VgQl?= =?us-ascii?q?WlyagGH1qlLO8Dwa/WUyW7Rm2WV+SLd3OBnjgjPU70+xaoMkc7aMFUoE8hKuHC?= =?us-ascii?q?nIJTlxX9UbNoQSWdvVDbzGgkMeIUaQ02vIOndhcRTO4WYeicJPQhzOc4CFQSc3?= =?us-ascii?q?/DBTF2BPOusV6xgIh7PG1t4Uf6YeXt6gDmN9+SGhgYEYHEtZNx/P26Rn6bOXB+?= =?us-ascii?q?1hFyO1N09+jHHVQrquBca4qRncTXh9ljze4FdvJtPDYhut4Sho1j6peb0MOQfR?= =?us-ascii?q?HX0JnyOcnfouKEDP3H00QqZmZaX6IcYQP05IU6Pdk5VqbRHbRDvhQcAq46T4In?= =?us-ascii?q?N2vr8qF7Mh9zeBbLZLuomsnquv6LZpxMqnDN8F0wKjvctgYYyvywSgx7c4yqh2?= =?us-ascii?q?vsL58tXD5BqMdtChR+FotVB8wAtxanA4KTmKyjhd++5Ud6u+4SsaXuEf3L1dW5?= =?us-ascii?q?34B0X5dE/0yLOCjeCLNsgkR/geS4mu3A3YXpCcP+ZdMEU/B2Q2Ddar/cH4WwNi?= =?us-ascii?q?yBN9n5e05H776cyqx2Xg+WZCDjUKqMrDekO+l84UUn1ox4e/LezDsp777Fw9by?= =?us-ascii?q?f2VbqT24rX6VNZtQ8EDKBfbAUB1KU/aF9nhqHbEPZ4vu6OgOKcAiwMSb4wRr6D?= =?us-ascii?q?RC0c2FI7Wur0PV3kJ7dInbLFfy2ysiWIkFOhK/MUw2jW/esHTdDmxWLtK4Jsl1?= =?us-ascii?q?nNaVEhvt6lFqmW4zYm5BG2zoRcqeOGQc1My+eA2K+xxRD9kdh+64Y1U1tq6sRu?= =?us-ascii?q?lyPJVKh+Gqu64akdZmMS3PQ9JaPy7IJr9sIjVRFvnPpEQvYhMctrg6QJs6ZZiP?= =?us-ascii?q?IEMBN0eN0j3yzQrE0ULqc9ys1aCJIDsZ83ldyLLFyzdMrRGjufmFms3jTKzZbJ?= =?us-ascii?q?buUf7QKiUlVTaaSi8pHEa0/1ekp/oEvP2FIWcQolAUfjieCAgNqaBztdLQFHPc?= =?us-ascii?q?mfV/fJ0Wg/CXQy/wRzdjm6ooByZEq0SMTuEdFQnSdXDhm2tcuBG4Kv9K433lc6?= =?us-ascii?q?WSxrBJVOwOHotMbvqZTsPaefBbIDcojC8ZOOenf9DHqbY2yFfIQnUYE6XS812e?= =?us-ascii?q?VkGWSOSGxz33RYUVo5Q0ui0w99LLkC93FrjHMrecqjO17I63kjyYuezfV2kqZU?= =?us-ascii?q?w5muQCD3edwBNYMmELF8kVuF3xQq6Hf0tM1nUpieRq2xIXfQR8TGBh0nNRnPan?= =?us-ascii?q?BsJWV0QYjGWwT/0aPxhLC2YW/ESN5gTpKf0HvtvIDztY97ALTYMGavgv75LMEK?= =?us-ascii?q?5M0LAuxj0w5GQhviGcCU5Nph6U+KrXWqRnz/tN4ndr0etxWxStSjbSaSDsw5C6?= =?us-ascii?q?BtgHkSVxqnn+y5D8ovFmNLwcoZpwRlgNH3QldZjm4TldXDSsi0OJtBGhEWHbeW?= =?us-ascii?q?hB7Q=3D=3D?= X-IPAS-Result: =?us-ascii?q?A2G/BACnnJhY/wHyM5BdGgEBAQECAQEBAQgBAQEBFQEBAQE?= =?us-ascii?q?CAQEBAQgBAQEBgyhkJ1+OUo9sAQEBAQEBBoEhlzooiFFXAQEBAQEBAQECAQJfK?= =?us-ascii?q?IIzGwGCGwEFAQI3FCAOAwkBAQoNCx4ICAMBLRURBgEHBQYCAQEBGASJRQ2xPiY?= =?us-ascii?q?Ci0WGCIJJgmqEJAIRAYYBBYErAY8PiykCigeIAoF7iEEXDIYjkwxYdggYBwIRI?= =?us-ascii?q?0thhX9XhlkPF4IWAQEB?= Received: from unknown (HELO tarius.tycho.ncsc.mil) ([144.51.242.1]) by emsm-gh1-uea11.nsa.gov with ESMTP; 06 Feb 2017 15:58: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 v16Fv7w0016893; Mon, 6 Feb 2017 10:57:29 -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 v16Fv4QT129130 for ; Mon, 6 Feb 2017 10:57:04 -0500 Received: from [192.168.25.4] (moss-lions [192.168.25.4]) by tarius.tycho.ncsc.mil (8.14.4/8.14.4) with ESMTP id v16Fv0ZE016653; Mon, 6 Feb 2017 10:57:01 -0500 Subject: Re: [PATCH 3/8] policycoreutils/semodule: hide -Wwrite-strings warnings To: Nicolas Iooss , selinux@tycho.nsa.gov References: <20170205155820.29157-1-nicolas.iooss@m4x.org> <20170205155820.29157-3-nicolas.iooss@m4x.org> From: James Carter Organization: National Security Agency Message-ID: <70479ea3-a2c0-56d8-34f2-e9f25c814753@tycho.nsa.gov> Date: Mon, 6 Feb 2017 10:57:19 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.6.0 MIME-Version: 1.0 In-Reply-To: <20170205155820.29157-3-nicolas.iooss@m4x.org> 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 On 02/05/2017 10:58 AM, Nicolas Iooss wrote: > When building with "clang -Wwrite-strings", the compiler complains about > initializing a char* array (variable genhomedirconargv) with literal > strings (which are in read-only memory). > > However the programs needs to use a non-const char* array in order to > fake arguments of getopt_long() (called by parse_command_line()). Silent > the compiler warnings by introducing casts to char*. > > Signed-off-by: Nicolas Iooss > --- > policycoreutils/semodule/semodule.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/policycoreutils/semodule/semodule.c b/policycoreutils/semodule/semodule.c > index ce048bc061b9..36686d0230a8 100644 > --- a/policycoreutils/semodule/semodule.c > +++ b/policycoreutils/semodule/semodule.c > @@ -341,7 +341,7 @@ int main(int argc, char *argv[]) > int i, commit = 0; > int result; > int status = EXIT_FAILURE; > - char *genhomedirconargv[] = { "genhomedircon", "-B", "-n" }; > + char *genhomedirconargv[] = { (char *)"genhomedircon", (char *)"-B", (char *)"-n" }; > create_signal_handlers(); > if (strcmp(basename(argv[0]), "genhomedircon") == 0) { > argc = 3; > I think that I would prefer the following for this one: diff --git a/policycoreutils/semodule/semodule.c b/policycoreutils/semodule/semodule.c index ce048bc..c63a864 100644 --- a/policycoreutils/semodule/semodule.c +++ b/policycoreutils/semodule/semodule.c @@ -341,11 +341,11 @@ int main(int argc, char *argv[]) int i, commit = 0; int result; int status = EXIT_FAILURE; - char *genhomedirconargv[] = { "genhomedircon", "-B", "-n" }; + const char *genhomedirconargv[] = { "genhomedircon", "-B", "-n" }; create_signal_handlers(); if (strcmp(basename(argv[0]), "genhomedircon") == 0) { argc = 3; - argv=genhomedirconargv; + argv = (char **)genhomedirconargv; } parse_command_line(argc, argv);