From nobody Fri Apr 10 17:45:25 2026 X-Original-To: dev-commits-doc-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 4fskjL2MR9z6Y5MC for ; Fri, 10 Apr 2026 17:45:26 +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 "R12" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4fskjK735hz3tg3 for ; Fri, 10 Apr 2026 17:45:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1775843126; 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=62BjkBZisuycWwxGruZtK4LHLdRF/ZvjTAxuE3GeAgM=; b=xUDVK8mzxGYBaA6Am390eFgeibscRjPiOJuCjJhVUuU3jxup9C0b4MrFwXFeE808+fo/Bu cAreTY4oTKJgiYq6JU3M2Trzeh0fJ+GRqZ9029XV1SquzM9rL+e2KfaLozoTarjEyORiwE mh0Z16w9a5Igf7hfT/zv/ohxBO7zJmniuoeTe3mcdM6f6dNCn78DKDSVTGIuIBDIwdDaTZ pT38ijs4U8gWnCMxIjpSmp7vut/iP3XmpbnvSusFtH2CeQ14DxLE7QOSICO7Y68TqiIObZ jcWfdPBs31pVzzAZWWDc6AwLRTXlNTRAKTKGzqNKgOCEyW4RHwiEx1Vcq52OBQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1775843126; a=rsa-sha256; cv=none; b=UijNIK71gzGG/tERRjBkAgA3NpP8hb7W3bLOJWrVytTDJl6wh4PfaejTLxlPlpElcrOI3K OcHcGem5d1wm5SchcOE045J/JvVQJkGMHYZV9yeTGPNlbnuI+AWFEirVWzZz1/u8A90MGK QGkmGznrTIzOD0nMcm2Yn+AlI40jghFiDYXZadHFKkk7t+9zldvl+D+l0QFv1N+tCXCnoO uxtJrnDoXQQfuwALU97LezL1hs2oT8M3WyBheG58cFPqN7IofxaCZNeIP/kmjSgOnD9+0X KKbbh7lqcsjEiVHp+4218nSzF/sU/QdBZie0OEfqok1XBdLz+tifpJfsdRvneg== 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=1775843126; 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=62BjkBZisuycWwxGruZtK4LHLdRF/ZvjTAxuE3GeAgM=; b=Zw3vOmqkL5zGil02qoEjSCwCz688KaQwyu1VjFZ419N3lxjgC46osz3F7XyYJFJzW9R1SN EULI5FhWQkgiewdKWaCJGqKbS8JdUdwj+7OFcKhX4mI9+8yTVwYXrvNyUNugLKBM5NhaOM s86lqGIEdUYLQlxSc1qCy5DaNLckKFPFAdWm/4eT5v0xpkXjsEzFYZ1OhU0WC4mbX7GUXW h3E+1SN/4kjr/SCSa0CFkzQlcZql7Ede6yWnp0fEaUHj+myP0Ui5Rs2eapxX1zk9Bu/3Tj Av5VKk/JAS1PFi/lZubpAoAoHvbRcQPWoTBWqHhV1DjGV/vNFKxit62JRqihDg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4fskjK6S2jztxY for ; Fri, 10 Apr 2026 17:45:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3255e by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 10 Apr 2026 17:45:25 +0000 To: doc-committers@FreeBSD.org, dev-commits-doc-all@FreeBSD.org From: Konstantin Belousov Subject: git: e267cce5a5 - main - Report aboud pdwait(2) and pdrfork(2) List-Id: Commit messages for all branches of the doc repository List-Archive: https://lists.freebsd.org/archives/dev-commits-doc-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-doc-all@freebsd.org Sender: owner-dev-commits-doc-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: doc X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e267cce5a5b5c2f7f56c558e9ac1e757aa605521 Auto-Submitted: auto-generated Date: Fri, 10 Apr 2026 17:45:25 +0000 Message-Id: <69d93735.3255e.58fb178c@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/doc/commit/?id=e267cce5a5b5c2f7f56c558e9ac1e757aa605521 commit e267cce5a5b5c2f7f56c558e9ac1e757aa605521 Author: Konstantin Belousov AuthorDate: 2026-04-02 05:38:20 +0000 Commit: Konstantin Belousov CommitDate: 2026-04-10 15:13:11 +0000 Report aboud pdwait(2) and pdrfork(2) Reviewed by: salvadore Sponsored by: The FreeBSD Foundation Differential revision: https://reviews.freebsd.org/D56221 --- .../en/status/report-2026-01-2026-03/pdwait.adoc | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/website/content/en/status/report-2026-01-2026-03/pdwait.adoc b/website/content/en/status/report-2026-01-2026-03/pdwait.adoc new file mode 100644 index 0000000000..c4bd211ac3 --- /dev/null +++ b/website/content/en/status/report-2026-01-2026-03/pdwait.adoc @@ -0,0 +1,19 @@ +=== Process Descriptor API completion + +Contact: Konstantin Belousov + +FreeBSD offered the Process Descriptors facility for long time. +Its main use is in the Capsicum sandboxes where the handle is required to operate on an object, and process descriptor provided such handle. +Other operating systems provide similar facility under the same name. +The offered API was not complete, main lacking part being the man:pdwait[2] system call, the analog of man:wait[2] family, which operates on the process descriptor instead of the process id. + +The described project added man:pdwait[2] call. +Another important addition was the man:pdrfork[2] call, which provides the same fine-grained support for process copy construction as man:rfork[2], but also returns the process descriptor as the handle, like man:pdfork[2]. + +After pdwait and pdrfork addition, the natural extensions for the man:posix_spawn[3] facilities were possible. +Now the man:posix_spawnattr_setprocdescp_np[3] attribute requests that man:posix_spawn[3] returned process descriptor. +Another natural addition was man:posix_spawnattr_setexecfd_np[3] which specifies the executable image by file descriptor instead of the name. + +Together, the newly added features make the process descriptor complete and allow the use of posix_spawn in the sandboxes. + +Sponsor: The FreeBSD Foundation