From nobody Sat Sep 09 11:51:15 2023 X-Original-To: dev-commits-src-branches@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 4RjWXM4bHkz4sGTJ; Sat, 9 Sep 2023 11:51:15 +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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4RjWXM49Vtz4PMN; Sat, 9 Sep 2023 11:51:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1694260275; 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=cLu+TO+CFFgJa4zEKzhpL9CNC27HFdm6A01BVi0JV8o=; b=bywWe9f457+IjNvPFJQ+RaMFpwTQAEBUGpL7mNWOFfYZaQaykO4Q6nDxY7I/x2TWMGjVMg 3ARwFPfVu4uDArhS+8YjpPIh17i3HnDBIWYzMNU+0yVSiP3OWWLcnwZj0h9Nf3QhFx9mdc y4OKWCi74PbyqZ7n54NIhY+XEvfuYduCB/3dfKVtYtbXSJgRqDL2DqnDrMZcNO1WAHuMCM qZHTtdQqVR0+Ga6RvTU0+dAg5Ai0ULoaBhIY5henUsF6OSOMvwNI67Dt94WOUZMibGBDk6 PKYPlChRbRGOYIb9mnovagZO8PbXBg2KmWUst6EyCjDIoKz4lliCNXAJCMfF+Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1694260275; a=rsa-sha256; cv=none; b=BdVzcIB7svdOyZy3FAVgxTo09bj4Va/WTTTdgMIwmVmqdKztb1UWqPMOnLBTFyPTsedQ3w SwjNa6qci5lYUgIx2/P6kQQY7eb7hBhzw8+AHXsB4hspa3104CF/dzS5qaP524JzH7Q+jB IFtUigTBLeY8awg6SwYd37mIbjAWjFPE+o5YHrE2E5vON5tj2ex8nUVwFc/ecvzLrbhKxS gEOAt2DprbAhHct8lZiYbkOKGwO1Se8gz/XdsQvxX+2+AL/c6tUsWWCbBVkd7y2zRxf2Sv bcmIXCt+BEz3pwm2G2M6vBLDrZpVe1zg4PQiThG1u8XSXjfOlVLby/cQDWe3ZA== 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=1694260275; 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=cLu+TO+CFFgJa4zEKzhpL9CNC27HFdm6A01BVi0JV8o=; b=CTR2g/jWsfZXjVR1tfUDR6UdWeQlp/PabQLisxdeF3DN8FErLrl4EMyN6X8+6lnF5y/MJE FROoFFgPOO6nPbeiD++/ebcjwAWymmS3qX+mKUZIM8gZ08Vt1fbVuj6u+EG4PG2h1hSBk6 JOm5mKvtnHRs8DF21W5RxyQcvaKM8nlyuLr7z6tzWotZ8EPqau9UweXPWZrzq4ByinRSiX 6KNA9pBbzqMmG4too6XqpiWtXXdZrSaiy7qEGQzV7McYZH1Q8tLwWr9L2io2Cb7QVIyARY S8r830X/7VnFAzecTqS3s5Q/uawaZ547t+QtvHJTRE3rZ2DlNwEt7OrtUZ3fmg== 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 4RjWXM3FL6z8Gk; Sat, 9 Sep 2023 11:51:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 389BpFRx099693; Sat, 9 Sep 2023 11:51:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 389BpFbK099690; Sat, 9 Sep 2023 11:51:15 GMT (envelope-from git) Date: Sat, 9 Sep 2023 11:51:15 GMT Message-Id: <202309091151.389BpFbK099690@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: 50eccf98b27d - stable/14 - pf (t)ftp-proxy: use libpfctl instead of DIOCGETSTATUS List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 50eccf98b27dcf027f2afb7f8838ca750a076f05 Auto-Submitted: auto-generated The branch stable/14 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=50eccf98b27dcf027f2afb7f8838ca750a076f05 commit 50eccf98b27dcf027f2afb7f8838ca750a076f05 Author: Kristof Provost AuthorDate: 2023-08-29 15:00:44 +0000 Commit: Kristof Provost CommitDate: 2023-09-09 09:05:50 +0000 pf (t)ftp-proxy: use libpfctl instead of DIOCGETSTATUS Prefer libpfctl functions over direct access to the ioctl whenever possible. This will allow subsequent removal of DIOCGETSTATUS (in 15) as there already is an nvlist-based alternative. MFC after: 1 week Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D41647 (cherry picked from commit ddd08375c85576b49fb9a34968ba2c2f4f8d56cf) --- contrib/pf/ftp-proxy/filter.c | 9 ++++++--- contrib/pf/tftp-proxy/filter.c | 9 ++++++--- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/contrib/pf/ftp-proxy/filter.c b/contrib/pf/ftp-proxy/filter.c index e4787985e99f..4277e079f3be 100644 --- a/contrib/pf/ftp-proxy/filter.c +++ b/contrib/pf/ftp-proxy/filter.c @@ -169,7 +169,7 @@ do_rollback(void) void init_filter(const char *opt_qname, const char *opt_tagname, int opt_verbose) { - struct pf_status status; + struct pfctl_status *status; qname = opt_qname; tagname = opt_tagname; @@ -182,10 +182,13 @@ init_filter(const char *opt_qname, const char *opt_tagname, int opt_verbose) dev = open("/dev/pf", O_RDWR); if (dev == -1) err(1, "open /dev/pf"); - if (ioctl(dev, DIOCGETSTATUS, &status) == -1) + status = pfctl_get_status(dev); + if (status == NULL) err(1, "DIOCGETSTATUS"); - if (!status.running) + if (!status->running) errx(1, "pf is disabled"); + + pfctl_free_status(status); } int diff --git a/contrib/pf/tftp-proxy/filter.c b/contrib/pf/tftp-proxy/filter.c index 1689d3465fd3..966628464d28 100644 --- a/contrib/pf/tftp-proxy/filter.c +++ b/contrib/pf/tftp-proxy/filter.c @@ -173,7 +173,7 @@ do_rollback(void) void init_filter(char *opt_qname, int opt_verbose) { - struct pf_status status; + struct pfctl_status *status; qname = opt_qname; @@ -187,14 +187,17 @@ init_filter(char *opt_qname, int opt_verbose) syslog(LOG_ERR, "can't open /dev/pf"); exit(1); } - if (ioctl(dev, DIOCGETSTATUS, &status) == -1) { + status = pfctl_get_status(dev); + if (status == NULL) { syslog(LOG_ERR, "DIOCGETSTATUS"); exit(1); } - if (!status.running) { + if (!status->running) { syslog(LOG_ERR, "pf is disabled"); exit(1); } + + pfctl_free_status(status); } int