From patchwork Mon Dec 5 10:55:24 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Horst Kronstorfer X-Patchwork-Id: 129273 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from theia.denx.de (theia.denx.de [85.214.87.163]) by ozlabs.org (Postfix) with ESMTP id 01FAD1007D4 for ; Mon, 5 Dec 2011 22:23:34 +1100 (EST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id A514328179; Mon, 5 Dec 2011 12:23:17 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at theia.denx.de Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 2l94r4lkDzmx; Mon, 5 Dec 2011 12:23:17 +0100 (CET) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 9435828156; Mon, 5 Dec 2011 12:23:03 +0100 (CET) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 7988F28148 for ; Mon, 5 Dec 2011 12:23:00 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at theia.denx.de Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 9QrtV4nE+QGF for ; Mon, 5 Dec 2011 12:23:00 +0100 (CET) X-policyd-weight: IN_SBL_XBL_SPAMHAUS=4.35 NOT_IN_SPAMCOP=-1.5 NOT_IN_BL_NJABL=-1.5 (only DNSBL check requested) Received: from m3f4.kronos.net (213-33-18-215.adsl.highway.telekom.at [213.33.18.215]) by theia.denx.de (Postfix) with ESMTPS id 394642812C for ; Mon, 5 Dec 2011 12:22:59 +0100 (CET) Received: from m3f4.kronos.net (m3f4.kronos.net [127.0.0.1]) by m3f4.kronos.net (8.14.5/8.14.5) with ESMTP id pB5AtUPO002169; Mon, 5 Dec 2011 11:55:31 +0100 Received: (from mabuze@localhost) by m3f4.kronos.net (8.14.5/8.14.5/Submit) id pB5AtUsr002168; Mon, 5 Dec 2011 11:55:30 +0100 From: Horst Kronstorfer To: u-boot@lists.denx.de Date: Mon, 5 Dec 2011 11:55:24 +0100 Message-Id: <1323082526-2125-2-git-send-email-hkronsto@frequentis.com> X-Mailer: git-send-email 1.7.7.3 In-Reply-To: <1323082526-2125-1-git-send-email-hkronsto@frequentis.com> References: <1323082526-2125-1-git-send-email-hkronsto@frequentis.com> Subject: [U-Boot] [PATCH 2/4] mkenvimage: Fix getopt() error handling X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.11 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: u-boot-bounces@lists.denx.de Errors-To: u-boot-bounces@lists.denx.de Since the original implementation indicates explicit error handling we turn off getopt()'s internal error messaging to avoid duplicate error messages. Additionally we add ':' (missing option argument) error handling. Signed-off-by: Horst Kronstorfer --- tools/mkenvimage.c | 12 ++++++++++-- 1 files changed, 10 insertions(+), 2 deletions(-) diff --git a/tools/mkenvimage.c b/tools/mkenvimage.c index b7b0e0f..22d1b88 100644 --- a/tools/mkenvimage.c +++ b/tools/mkenvimage.c @@ -80,8 +80,11 @@ int main(int argc, char **argv) int fp, ep; + /* Turn off getopt()'s internal error message */ + opterr = 0; + /* Parse the cmdline */ - while ((option = getopt(argc, argv, "s:o:rbp:h")) != -1) { + while ((option = getopt(argc, argv, ":s:o:rbp:h")) != -1) { switch (option) { case 's': datasize = strtol(optarg, NULL, 0); @@ -106,8 +109,13 @@ int main(int argc, char **argv) case 'h': usage(argv[0]); return EXIT_SUCCESS; + case ':': + fprintf(stderr, "Missing argument for option -%c\n", + optopt); + usage(argv[0]); + return EXIT_FAILURE; default: - fprintf(stderr, "Wrong option -%c\n", option); + fprintf(stderr, "Wrong option -%c\n", optopt); usage(argv[0]); return EXIT_FAILURE; }