From nobody Tue Feb 11 09:55:55 2025 X-Original-To: dev-commits-src-main@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 4YscJq2g1Jz5nKBF; Tue, 11 Feb 2025 09:55:55 +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 4YscJq27S3z3gwd; Tue, 11 Feb 2025 09:55:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1739267755; 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=nHRoEHt+wIvr69pxPB73HHMNlvKf4W+IwcZp1YFbKkw=; b=tW8fv+UVPh7V7bM0M+4kOZ1aNFZ+yjO/fMjR6wIdScm3gGZyyU+JN4QO1qck6vs0L7fF5J A/BTFAp1+sd5jON9nX+IQBdrAPK6Hteg1acKZhsHtpJtSOQZu+RR5rTUWD6XzkC81hDkFZ F5BmfSDy/528k+lU5ojWy+GDenTecps2nhNSHRh4Ram19VbOaiIOnpdYj7By4rMtC2Eo8w u9/o8JiUVry/0sVZGQGcqH8Zxiqzro1dOCSVijoGMKoMWXMn5jr+0/6wtHusYkTrfdYPa8 V1bJiSCV/aXf8igN3F7XWcmWx/rPqxTeq9gDBCG/pChGaV1FBeMwFjVNuruP+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1739267755; 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=nHRoEHt+wIvr69pxPB73HHMNlvKf4W+IwcZp1YFbKkw=; b=D5DSwX5sPPUDaScHyqgsbigU0KjKd8JlVd6jaU8qv1RmVD+qpTgshw1Ce2ru6Hc8OO6jdp NaWAGxO5Cpw1nTu2+cX0dvhQEzACsXjWuWwECJHcLLPUwg3VrchBdo4LRK2jCyXRTMmZYB KMXhMXQNmS+o5t3NAwXIc3yt66Bc8RuEq4lEcvM7sp74/Opj+Y26yhhhJs/vWSPkBoFhMs Klo48itdhedEer1JJSQXcWjENfOsj6leOKrNXb1S8lNgYnCnAjtJjKN9kWV5uGXo7TpGZz DgyKKTwoDFVflP2gCrDbag2+JL4bpRDMtr6TFZo6nvKmTwGFxMYVyOplznajbg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1739267755; a=rsa-sha256; cv=none; b=RRixOcQzaWZL6Ux/CX6TDnl9okdLovPZqSTtSFmhrkW+nbpi4mzasw5aRJtqfVAuwiNTzr TzR0lrpRTqTergOgNekesMyFypwTT8tKVI8OSlEXV3kyzP6WiI0iYuugwGRmhNUtkPbsz8 XuvIYz98kz6bP65hl/PmnwL9VP8rvusYQRmU+lzbaRVkhaJuuo1p6TyG4K8YnBBtQGO+cC I+bfhiI8+pJrRLPe5PRIEnSeFZXIEoUkjo8yEsSQaX1Yy/DXQauCtnl7B8YiPLpwG4rQVF KJuRoMPoIq9JdqkB9bZjsxReheGZGuxowU7TRWbhZBP14AP0kFna6de6YgJgRA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4YscJq1l1pz16cn; Tue, 11 Feb 2025 09:55:55 +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 51B9ttDg068431; Tue, 11 Feb 2025 09:55:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 51B9ttj8068428; Tue, 11 Feb 2025 09:55:55 GMT (envelope-from git) Date: Tue, 11 Feb 2025 09:55:55 GMT Message-Id: <202502110955.51B9ttj8068428@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Andrey V. Elsukov" Subject: git: 706a03f61bbb - main - ipfw: make 'ipfw show' output compatible with 'ipfw add' command List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ae X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 706a03f61bbb6e0cf10e6c3727966495b30d763e Auto-Submitted: auto-generated The branch main has been updated by ae: URL: https://cgit.FreeBSD.org/src/commit/?id=706a03f61bbb6e0cf10e6c3727966495b30d763e commit 706a03f61bbb6e0cf10e6c3727966495b30d763e Author: Andrey V. Elsukov AuthorDate: 2025-02-11 09:48:17 +0000 Commit: Andrey V. Elsukov CommitDate: 2025-02-11 09:48:17 +0000 ipfw: make 'ipfw show' output compatible with 'ipfw add' command If rule was added in compact form and rule body is empty, print 'proto ip' opcode to be compatible with ipfw(8) syntax parser. Before: $ ipfw add allow proto ip 000700 allow After: $ ipfw add allow proto ip 000700 allow proto ip MFC after: 1 week --- sbin/ipfw/ipfw2.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sbin/ipfw/ipfw2.c b/sbin/ipfw/ipfw2.c index 51eae7e8e246..cc0970207749 100644 --- a/sbin/ipfw/ipfw2.c +++ b/sbin/ipfw/ipfw2.c @@ -2380,6 +2380,13 @@ show_static_rule(struct cmdline_opts *co, struct format_opts *fo, if (rule->flags & IPFW_RULE_JUSTOPTS) { state.flags |= HAVE_PROTO | HAVE_SRCIP | HAVE_DSTIP; + /* + * Print `proto ip` if all opcodes has been already printed. + */ + if (memchr(state.printed, 0, rule->act_ofs) == NULL) { + bprintf(bp, " proto ip"); + goto end; + } goto justopts; }