From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 109720 invoked by alias); 4 May 2017 09:57:10 -0000 Mailing-List: contact elfutils-devel-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Post: List-Help: List-Subscribe: Sender: elfutils-devel-owner@sourceware.org Received: (qmail 109701 invoked by uid 89); 4 May 2017 09:57:08 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Checked: by ClamAV 0.99.2 on sourceware.org X-Virus-Found: No X-Spam-SWARE-Status: No, score=-25.7 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.2 spammy= X-Spam-Status: No, score=-25.7 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on sourceware.org X-Spam-Level: X-HELO: EUR01-VE1-obe.outbound.protection.outlook.com Received: from mail-ve1eur01on0103.outbound.protection.outlook.com (HELO EUR01-VE1-obe.outbound.protection.outlook.com) (104.47.1.103) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 04 May 2017 09:57:07 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qtcompany.onmicrosoft.com; s=selector1-qt-io; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=hTnlxKTgxvuHHxgkIG0MD6NzclemAORyJhXPlbhr3WE=; b=rpLgahW/UO9Ucy+5bJTGTGfyZm5UWaoSzqYjXLFVnEIljf1NIk95ldnRO6aNutfeMmniUzXN3mflm7Mhp+/0Lk4zCtLnB0fALXUJm1aLzFERg4ycoTYW5jPAH/00H/EAABjEuIPLFqfc3NI5Q6fnZYHb7nrX4QCwPHLWuDOGAi8= Authentication-Results: sourceware.org; dkim=none (message not signed) header.d=none;sourceware.org; dmarc=none action=none header.from=qt.io; Received: from [10.9.78.56] (62.220.2.194) by AMSPR02MB230.eurprd02.prod.outlook.com (2a01:111:e400:8022::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1061.12; Thu, 4 May 2017 09:57:06 +0000 From: Ulf Hermann Subject: [PATCH] Avoid using err() and errx() in tests To: Message-ID: <76de3d97-5521-3f00-554c-b13e11bcc729@qt.io> Date: Thu, 04 May 2017 10:28:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-Originating-IP: [62.220.2.194] X-ClientProxiedBy: VI1P190CA0013.EURP190.PROD.OUTLOOK.COM (2603:10a6:802:2b::26) To AMSPR02MB230.eurprd02.prod.outlook.com (2a01:111:e400:8022::17) X-MS-Office365-Filtering-Correlation-Id: 360e0ad1-dad1-447c-2719-08d492d3ec2b X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(201703131423075)(201703031133081);SRVR:AMSPR02MB230; X-Microsoft-Exchange-Diagnostics: 1;AMSPR02MB230;3:VLx+Cp5cBWXL/+BWbOwKwqzd+uaozcLq33LnpadB7VBe6zUm94cd24lRXePPc9C1rm0ir4r7TiWxT47E2Sl5ALlrmmpDjVgoDTyGaVlRUyz8blmaKbDEtxFrbeDxPdJ/iJg+J/jtGRlWay9yziZZMpxYg0syzI/mrSnPj/Pk1tCHatEKOl8pj0T2xSRjepCdcwIN36ZEnjuCOBzHeTJWRu7ljhMpdCXtisD70byAtmRnC0l7VSDrhDYSpgEZPkC+NJmBlnyZl5isV1V1CYsxQLTHaXEdgWy3mkZ2Ijw+xvUJozUIwZXV689La/XuRlnOIbjlB1LefOQf2qq2UeFLsQ==;25:TXTWSRZ6rKQRlUKvFhrR0RtiB8fa/fhwYNhIludPNqZZtHuFnRfjf/2fZvue7LpQOHswaAGu8nkuW7ER8fNotFmw6Bt73FZiEOLy2vdcjxlNZGUaqz3ISc7jI6nFa8vC2ugRUIDQhD4H/puGlRxjQPiFrWTNd9yQ5X+KVHNsLi+AcVgJ+PXtVHTzHx1AkhHXl+9xqj2nQuiMaGE4DqzmS9ygCxJYVfCE9phkyoBvovpsMDMGOhmTxOw9lHnjTDPdKCfWCvUCEMK5si48Kqn67YfbDv2T/g1EOLSNCRRXEmjLzR7jt7a5bW31Sh2yk3We46DNY8UFavEfAd+3RGXeGTsqV8agStOYI0o/M13WfvNEOoat/WmcrA9NL0tHYOeiUC5mhpei8tsIz46SGqRQtOpO3lsu8wAEsszTmxI3PjRwXDkamCIeAu0xBipBdXjOzYKH0gDwFVk8jPNOLsyH8Q== X-Microsoft-Exchange-Diagnostics: 1;AMSPR02MB230;31:I3OTgGFfOxHu/u6NI9+9KRBE83ufFSUq6c+Kyem9uFBhi2QeC8bx6YjcoihdDCqwc8os7VmMYOyotLyRsyfir4vw12mrTLOfdnHSAKkPy1lGVgm0ZHpFOQkovgJvi/gWEJ/YZ+6vwwzey83+t7xWdvN/QKshsn6m29v5x6w+9ho2siZatPkl354zGFEBezimYCRpH3wWlwBTMIbbZ/H8fJiX4o/f+7AyFFEsz06vftC0j5jGHGSxSLW9jJyqmHZO4EBrtTxqik3A0J355QIwGpGGG3siWK0r36aRXa/XaG0=;20:Jc9lVz0DPaOCnMx5Wp9Hd2/YQdIN07vIEakFGfsQaQ1jCIOYaLZqQolgbzEePi9G/+JlwYmr78kRHk9+xzctwTtOBHRBVy7afQi+JoCKMDpaMM8mX6VPAL8awEGo2F7TBYWV+1Um63GNqJTSLcDMcsRhjBNwhBWwpAjWvuHK/ZFf3e1WZf5HX7AG1fdKVR9PSVicXx+qweaEipw2GzL5zptKWyCWqrPE5V7/hUd4hyFIiJjUu0HNIDXgiGdB3+lc X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040450)(601004)(2401047)(5005006)(8121501046)(93006095)(93001095)(3002001)(10201501046)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(20161123564025)(20161123558100)(20161123560025)(20161123555025)(6072148);SRVR:AMSPR02MB230;BCL:0;PCL:0;RULEID:;SRVR:AMSPR02MB230; X-Microsoft-Exchange-Diagnostics: 1;AMSPR02MB230;4:pehHX5SKDWR6QVb6wa3xlknG2mki8tWXZqu9RMHXiuCsLWVC84f3aB+GYuLJ+Gk5EU7kG6NOABCWkLJfEa3JIYPDJZkEqyYTA7TR4jN/k30bpJxfUgRtka5AkhvJs/So2bw0eiqTe4oMMsERDtz80ddbpMRnxpvEyeCFjFZUy+Gy9CqFjH5VzWz5knxqfgnij8my0SCNF23buYLaPnmDH86R9WSb+lhEVj8aZPDMc6pWmlC5gNn5VzkLYIXRkHDbVxzAZwKxGjl6XV1gfFmXxmMGW7uWuGdVYlpO5gUQS1X34dRhbbdxKFSPxU7rSEKTRx9FhYto+4HIJdaNYywVlCPMlsR4HsDw1U7dH6aFAz6k88q6s9AfMlq5xejCR8+nC1kxT59s8yuXW75WxEljoSMBv7SVEWIPr34BCHxtqvBMJ+opPC2XvQC2T5UUhk5iBGvNubDA1N40HtY2z2f1WQtUOURASN2DxiFXIA6lBWyConfVm8H+aM678JAAnR4pN3qZq/5Zh7EsvICESgOb90sdTAkgZa4ZQizTnwRgwnMfqrsTXkroIsDEtskTapnl9OVljmT+rHkAegDXeh85Clgraq/P1eSVjYxkTDMSdamvsUsqsEB9S7hwaGxBE+ShLYQA7eKXaEsMZUXotVyG5sFfXaWjDRQNBxYvNjQTeoc9rtHl8lT/FbAGIieOzdSrGrxZAL+3QXVw2E87B6PfOUgqCkdXCfA+bRgnriCPOaO7h1q03x3FoMirS12JoJJfAbjmFTK2dxeYyKXNG8eGV4xjFoitMnvH/ODQ5SfN5KA= X-Forefront-PRVS: 02973C87BC X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6049001)(6009001)(39410400002)(39400400002)(39840400002)(39450400003)(377424004)(53936002)(23676002)(5660300001)(65826007)(50466002)(33646002)(74482002)(7736002)(6666003)(6916009)(305945005)(36756003)(31696002)(86362001)(64126003)(83506001)(110136004)(3846002)(25786009)(54356999)(81166006)(50986999)(230700001)(47776003)(478600001)(2906002)(77096006)(6486002)(8676002)(6116002)(66066001)(38730400002)(4001350100001)(189998001)(31686004)(42186005)(2351001);DIR:OUT;SFP:1102;SCL:1;SRVR:AMSPR02MB230;H:[10.9.78.56];FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtBTVNQUjAyTUIyMzA7MjM6NUdUZTBsZDdudGlmVHI5STN3OU1nL05tNkFY?= =?utf-8?B?S3AxbWVydG1oREo3U2l6TVN0Z1NuazZCelYzYXhKQXVoUVpUSnMwdWEvb0tL?= =?utf-8?B?aEhkNTAxRW1jd2xIY092bjJ5a1Q5c09sSk8rbk1DYkZudTVnVWxkU3QwOXpt?= =?utf-8?B?dXI1M29GSTdSVVZJSnBIMXVuNTdDeHVGMzhFemtoWCt1dlJrVElGVm1CMmJX?= =?utf-8?B?eHdCclNsWFYzRy9oS3dKYWdZeEVmc1J5UzFrNm93UFlPcTZ3SlpvN29UK053?= =?utf-8?B?dXcvbVJST2J6bFdQaHpSWjZlREVNeml0a1RTWXdjZno4YnNKVDUxbHl3WVV4?= =?utf-8?B?SXNHU1VvL1cvRk9CRWhUYWRsUGx4Q0ptSEZJNTVGakJ4anRLQUs3dEErTU5o?= =?utf-8?B?Q1FlR2poTHBhSGRuR0ZwVzhXbXA4Z2FGY1U5Z0NEWTJNcE1ockl3cmNkV3NK?= =?utf-8?B?TjZmSEFyZDB1clFKYmxkSGtpVkdIYThLYVYvV2lXMUE3eENiNTJzaEF4R0t6?= =?utf-8?B?THBoUnA0TElJTXh0ejc3V3g1SkhmVnBzWFA1aFpEMlFCbWF1YWJ4Z2VMWitV?= =?utf-8?B?WnA1VFMza3hxK2hNeVJLMER3ZGNUekhsV3BJcjdkV2xybFZQeHZ5OG9LTXd2?= =?utf-8?B?VFMxdjlpQW14M0Z4OFRIa2h6azZxTEx3cXJhNUdaYjFpL2xHT2VyRUtuYXZ5?= =?utf-8?B?MXZ5SHh3M3ZuMzNLUldJdmFCWVJaS3M1TmZ3UGhaVUd1QjhwU0UvSkY1MUJw?= =?utf-8?B?M1FTRXFPcml6Y1lWQzhjZXFJeXd1RjkzTENNSXdPRWVCVVpxc1I5dmdvTnN6?= =?utf-8?B?TUplSitETkpIblJBdElESjdpYUJQVXhSOE01em4wNHNBR0lYZXlYb2JQeVU3?= =?utf-8?B?ODE0K3g0TWdwNHQxUkFpM201VTlBbGpLMUVxMmRyNEl0R2VYK0QzbHdmalB5?= =?utf-8?B?S0NyWkdCZ2VDQmRSNVg0cnhEYmdML1poL0Jxc1RvNElrVkZ4ZEZHVnphQW9I?= =?utf-8?B?ak9nNzZYbDk4czExZVRtQ1N0b1NyZ3FWZ1M2OE5kdlFTSkdLVEpkTG9JL0FC?= =?utf-8?B?SFBCd2RkVWxSZVVwZjdxelVudHZEbGNzc04vdzNmNE5LNzJZMHRHS1NPR3lJ?= =?utf-8?B?Z0JVUjgwUE1IanBIeDFNWEtuRHY5STZXRk9TMERNcU9CY0hNVERIcjBoQ05m?= =?utf-8?B?R1J5Z2E5T0JJUGkzS0tUUGQzb1NoSUZsZEpTWnEzOG5HSFI1RlpzVG5mc2Jk?= =?utf-8?B?QmlBM1JPcmZ6bmVrcGkzbVRKcitaTUxORktjS2duaDRSMHJsZnR0SlRMTzBm?= =?utf-8?B?YWsyYXVnWHlHYkF4NFdkTHhhdVlpRi9lbmJCQWwxczBwNTZhbUxPOUZSYzFC?= =?utf-8?B?MnZWSkRtcC9rTUc1UmszSEdldlNKZjk2Z2hHM0pPbWk5a0tIb3FHdlJYalpV?= =?utf-8?B?UXJXUTMvQlpaNHRseENjUFJ0MHVyTk56R1YycFowSUI1YjJhUi9lK205UzFM?= =?utf-8?Q?i43GKVvY8OzqJVCMX5wGo1nA50VCchkqLuyagduzjqDm6?= X-Microsoft-Exchange-Diagnostics: 1;AMSPR02MB230;6:exEw44dcCdaghRqX1bTXmau3+rFv736trqtSh3S3jpFv66kk59P4iuZPztQzcbMNZlIHuqOAImKaEFhDYiw09ZmvzEsNAs3Mybe2nVvtl6kHc4dZKlQ14GnwYVISIJ9vI2eRhkEitbdVibW0jMLttCIfKxXQf9VlzkJkVhsClLv6IZNqzf9UtdehFtHObS+nuNcT6MNopsT/jYfMzEsflHDVZyWGddSs3SlGWMFgwMkKLJrjpWYvMmNEjO1mTVGhsAM8h6CLsC1aTyQ7nM3YgWeFbmZbuxv1xPmeP8v7JhG9lkIkG/aGGEZA1Mo8HN1thymgZ0bqTdTlNXu5GlvCCZkdvVrzH1rPutOzJelEFvZm/hlMYc+GQcn5rLtSa2xpRsRb7Akf4SJpHPH7AAnU9D+rHOiKQ9LsXmWiC8V2rBy0ne/+HwwKIK6PNe/azrJzJpnIDmBfr8yPOJiXcxZC48mWK5MSGoz8e0ueXki9BRhjG8N/2IH0lA3t01w82/1Ri6ecc6jfCvhuY2lJMNPqoA==;5:Mf3J7Ys07+drTyA05uncBtdim5l91p7Ll3/C7fTetb7MAhuDc4jOZtGraWS2/wy/ULBkk4BNWVQjlNUP9mJ8uhg1eUvYCswECAcgjfoNoApKJgv5SVdsHhsaQHISlC28wDY4lnAkflZ5kJ/MNCzJtg==;24:3iTuTfdFo0I8fLtstI17uJqNuxR2LA+8RKa12ozf5jj/GKbZdt0RKM150AuUG6srlQmCA2h+ZqN/IZ0mCLc2JsIi1ZTg8h6RcL5qtUaku74= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;AMSPR02MB230;7:U43o3M7GtgbpA9kHDzW1+wLwlbzpToRTxqvKxAwvIqj4L6VcTS5QXl99/DcMAj+9XggNSfPR3qLz9R5eiSa7PtcHQwN9ZLLcseFIBdOXlsRrF5BkKU5uUjwV8q3o0ex4XTf9+rwkB2sGApA1/tOEvV40hCbgN1Z1Zj9jDMjdrDccCAouQxImf0eJOz9sFv+kJhrgpYzehOamaysylL1csT3eRB0bhL8ZtCDvg97DjYOk7POriMnTOl00W7SmHrze0J+Df6vR1mjhR8YlGQjEYstlvnYmSx7/udvuOgTHq+Y6RSbydpwFT6tJVAZlxRz4NcXnoHYpQitlPIDmlRgGKA== X-OriginatorOrg: qt.io X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 May 2017 09:57:06.2577 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: AMSPR02MB230 X-IsSubscribed: yes X-SW-Source: 2017-q2/txt/msg00167.txt.bz2 fprintf() and exit() do the same job and are portable. Signed-off-by: Ulf Hermann --- tests/ChangeLog | 6 ++++++ tests/allfcts.c | 46 +++++++++++++++++++++++++++++++--------------- tests/buildid.c | 6 +++--- tests/debugaltlink.c | 6 +++--- 4 files changed, 43 insertions(+), 21 deletions(-) diff --git a/tests/ChangeLog b/tests/ChangeLog index 6dab801..c2619d0 100644 --- a/tests/ChangeLog +++ b/tests/ChangeLog @@ -1,5 +1,11 @@ 2017-05-04 Ulf Hermann + * allfcts.c: Use fprintf and exit rather than err and errx. + * buildid.c: Likewise. + * debugaltlink.c: Likewise. + +2017-05-04 Ulf Hermann + * elfstrmerge.c: Don't fchmod or fchown the output file if fchmod or fchown don't exist. diff --git a/tests/allfcts.c b/tests/allfcts.c index d3c8d26..ad93dce 100644 --- a/tests/allfcts.c +++ b/tests/allfcts.c @@ -18,12 +18,13 @@ # include #endif -#include #include #include ELFUTILS_HEADER(dw) #include ELFUTILS_HEADER(dwelf) #include #include +#include +#include static int @@ -47,16 +48,24 @@ setup_alt (Dwarf *main) ssize_t ret = dwelf_dwarf_gnu_debugaltlink (main, &alt_name, &build_id); if (ret == 0) return NULL; - if (ret == -1) - errx (1, "dwelf_dwarf_gnu_debugaltlink: %s", dwarf_errmsg (-1)); + if (ret == -1) { + fprintf (stderr, "allfcts: dwelf_dwarf_gnu_debugaltlink: %s\n", dwarf_errmsg (-1)); + exit(1); + } int fd = open (alt_name, O_RDONLY); - if (fd < 0) - err (1, "open (%s)", alt_name); + if (fd < 0) { + fprintf (stderr, "allfcts: open (%s): %s\n", alt_name, strerror(errno)); + exit(1); + } Dwarf *dbg_alt = dwarf_begin (fd, DWARF_C_READ); - if (dbg_alt == NULL) - errx (1, "dwarf_begin (%s): %s", alt_name, dwarf_errmsg (-1)); - if (elf_cntl (dwarf_getelf (dbg_alt), ELF_C_FDREAD) != 0) - errx (1, "elf_cntl (%s, ELF_C_FDREAD): %s", alt_name, elf_errmsg (-1)); + if (dbg_alt == NULL) { + fprintf (stderr, "dwarf_begin (%s): %s\n", alt_name, dwarf_errmsg (-1)); + exit(1); + } + if (elf_cntl (dwarf_getelf (dbg_alt), ELF_C_FDREAD) != 0) { + fprintf (stderr, "elf_cntl (%s, ELF_C_FDREAD): %s\n", alt_name, elf_errmsg (-1)); + exit(1); + } close (fd); dwarf_setalt (main, dbg_alt); return dbg_alt; @@ -68,8 +77,10 @@ main (int argc, char *argv[]) for (int i = 1; i < argc; ++i) { int fd = open (argv[i], O_RDONLY); - if (fd < 0) - err (1, "open (%s)", argv[i]); + if (fd < 0) { + fprintf (stderr, "open (%s): %s\n", argv[i], strerror(errno)); + exit(1); + } Dwarf *dbg = dwarf_begin (fd, DWARF_C_READ); if (dbg != NULL) @@ -89,9 +100,11 @@ main (int argc, char *argv[]) do { doff = dwarf_getfuncs (die, cb, NULL, doff); - if (dwarf_errno () != 0) - errx (1, "dwarf_getfuncs (%s): %s", - argv[i], dwarf_errmsg (-1)); + if (dwarf_errno () != 0) { + fprintf (stderr, "dwarf_getfuncs (%s): %s\n", + argv[i], dwarf_errmsg (-1)); + exit(1); + } } while (doff != 0); @@ -102,7 +115,10 @@ main (int argc, char *argv[]) dwarf_end (dbg); } else - errx (1, "dwarf_begin (%s): %s", argv[i], dwarf_errmsg (-1)); + { + fprintf (stderr, "dwarf_begin (%s): %s\n", argv[i], dwarf_errmsg (-1)); + exit(1); + } close (fd); } diff --git a/tests/buildid.c b/tests/buildid.c index 87c1877..2d33402 100644 --- a/tests/buildid.c +++ b/tests/buildid.c @@ -18,7 +18,6 @@ #include #include #include -#include #include #include ELFUTILS_HEADER(elf) #include ELFUTILS_HEADER(dwelf) @@ -62,8 +61,9 @@ main (int argc, char *argv[]) printf ("%s: \n", file); break; case -1: - errx (1, "dwelf_elf_gnu_build_id (%s): %s", - file, elf_errmsg (-1)); + fprintf (stderr, "dwelf_elf_gnu_build_id (%s): %s\n", + file, elf_errmsg (-1)); + return 1; default: printf ("%s: build ID: ", file); const unsigned char *p = build_id; diff --git a/tests/debugaltlink.c b/tests/debugaltlink.c index 6d97d50..b470e31 100644 --- a/tests/debugaltlink.c +++ b/tests/debugaltlink.c @@ -18,7 +18,6 @@ #include #include #include -#include #include #include ELFUTILS_HEADER(dw) #include ELFUTILS_HEADER(dwelf) @@ -64,8 +63,9 @@ main (int argc, char *argv[]) printf ("%s: \n", file); break; case -1: - errx (1, "dwelf_dwarf_gnu_debugaltlink (%s): %s", - file, dwarf_errmsg (-1)); + fprintf (stderr, "dwelf_dwarf_gnu_debugaltlink (%s): %s\n", + file, dwarf_errmsg (-1)); + return 1; default: printf ("%s: %s, build ID: ", file, name); const unsigned char *p = build_id; -- 2.1.4