From nobody Sat Sep 21 11:26:26 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4X9n5H1B0hz5VqRh; Sat, 21 Sep 2024 11:26:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4X9n5G6tTmz4p5p; Sat, 21 Sep 2024 11:26:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1726917987; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jvAnHIu15O9F6sw8+KAlXY1vJttEgLKvkJw+7W4V54s=; b=Twg/mOrTOIpvcFJs02d+azgzzzKUSuvj54zWuUVToJiuhun89qX9mEaYh3mP3nBhGU/wjf 3kvGu7a9yts8rNvXzoaDiQwg0Fwxid8Kv/dhBYe1swwlM01wYEX/N/V+LmqtwgiI3CPlda itVjFVVvg0wDasu9GwmXJIxjLfT765psUdt/VBzvPhsU+ruf6zYxd/bmUOB9gyhCTqGLw9 ZWqxbIwF/LPUT5kxIMz6jJD+uOpDAIxvS61bw+NaZZ2Z1f1YMsQzNuVJYooKyJzXOxx6Rb ORSXS5ElH9lGXmTjStJai8lo29CORUAfj/wGhXn8z+sI8eU1FMaqKVsZMWpziw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1726917987; a=rsa-sha256; cv=none; b=sCsZL6kYtgHdl+q/D6wRowBg6/uerdQ3uBD2u6D7NtIerBID4LemdeT9kO6ri7ifyuoQ9y fcoaAf7AD8Y3Lera9tPU5Np6+TJAv80pnG5zikSzMkt9g556wC+qr75BCsbO3M0yxnHSaz dQ3vEkUxCxnlXbNenQbL9peXyqcQCBgslAFyGCFKyvLlic8gevHKI0YC2Pmpjo1GD54XwK 2xGUWlvvALeHroqdB8n0GWf7/OZYtN0XlcLk8BJrhyDPRj5F1JAGesExUh+MVmFglhaIs7 yR0vgSrl2JM/r5xhbXWiVOF9521lUZyq6Xh+UgL15RrCA4yTn2b/l+jxIxSQVA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1726917987; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jvAnHIu15O9F6sw8+KAlXY1vJttEgLKvkJw+7W4V54s=; b=XWjv6T9H30hzrf/mQnpvQ+8WnkrvhvZlOLpq+wgbvM6Rwqcd/SoPIdMFSWe7J2ri4T+wvO wkJdmWWSF9TPJPCx8dgye6OkxVQn79sWJ6XnGRumdFpcMTi1pXTmTZBH/JOca2P+lgVmz5 TD+86aKyX0CzKoF80fobGj56PntZmBSOFLeuNCNRPp1E/mJrq0+y//8Th0e8VZ0oN2C4z1 rfGI/B+xFJ/NgoXA2HCtiEyPnWU6Crwz/kUhTLnXjwSR73hmtzWPKFzEgaHWtPDag4moSf 69k35p1F0P0h63xP8ly0KcvEstV/DKlH7MJ4sdgkkEo7PGxReKXQiwR+QR/28Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4X9n5G65wxzXfG; Sat, 21 Sep 2024 11:26:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 48LBQQQx040430; Sat, 21 Sep 2024 11:26:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48LBQQ4K040427; Sat, 21 Sep 2024 11:26:26 GMT (envelope-from git) Date: Sat, 21 Sep 2024 11:26:26 GMT Message-Id: <202409211126.48LBQQ4K040427@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 6fdb07d5b7e9 - main - loader: provide error message in command_errmsg instead of printing List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6fdb07d5b7e9293a6851a23b7ecb26636cf1ec1e Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=6fdb07d5b7e9293a6851a23b7ecb26636cf1ec1e commit 6fdb07d5b7e9293a6851a23b7ecb26636cf1ec1e Author: Ahmad Khalifa AuthorDate: 2024-08-12 12:11:06 +0000 Commit: Warner Losh CommitDate: 2024-09-21 11:25:16 +0000 loader: provide error message in command_errmsg instead of printing Also provide an error message when argc is too long instead of printing "no error message". Reviewed by: imp, kib Pull Request: https://github.com/freebsd/freebsd-src/pull/1381 --- stand/efi/loader/copy.c | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/stand/efi/loader/copy.c b/stand/efi/loader/copy.c index 3e466e875af8..90a55089ffc4 100644 --- a/stand/efi/loader/copy.c +++ b/stand/efi/loader/copy.c @@ -223,7 +223,7 @@ command_copy_staging(int argc, char *argv[]) int prev; if (argc > 2) { - return (CMD_ERROR); + goto usage; } else if (argc == 2) { prev = copy_staging; if (strcmp(argv[1], "enable") == 0) @@ -232,10 +232,8 @@ command_copy_staging(int argc, char *argv[]) copy_staging = COPY_STAGING_DISABLE; else if (strcmp(argv[1], "auto") == 0) copy_staging = COPY_STAGING_AUTO; - else { - printf("usage: copy_staging enable|disable|auto\n"); - return (CMD_ERROR); - } + else + goto usage; if (prev != copy_staging) { printf("changed copy_staging, unloading kernel\n"); unload(); @@ -246,6 +244,10 @@ command_copy_staging(int argc, char *argv[]) printf("copy staging: %s\n", mode[copy_staging]); } return (CMD_OK); + +usage: + command_errmsg = "usage: copy_staging enable|disable|auto"; + return (CMD_ERROR); } COMMAND_SET(copy_staging, "copy_staging", "copy staging", command_copy_staging); #endif @@ -257,13 +259,11 @@ command_staging_slop(int argc, char *argv[]) u_long new, prev; if (argc > 2) { - return (CMD_ERROR); + goto err; } else if (argc == 2) { new = strtoul(argv[1], &endp, 0); - if (*endp != '\0') { - printf("invalid slop value\n"); - return (CMD_ERROR); - } + if (*endp != '\0') + goto err; if (staging_slop != new) { staging_slop = new; printf("changed slop, unloading kernel\n"); @@ -276,6 +276,10 @@ command_staging_slop(int argc, char *argv[]) printf("staging slop %#lx\n", staging_slop); } return (CMD_OK); + +err: + command_errmsg = "invalid slop value"; + return (CMD_ERROR); } COMMAND_SET(staging_slop, "staging_slop", "set staging slop", command_staging_slop);