From nobody Wed Mar 4 14:46:25 2026 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 4fQwTt66Slz6TbhV for ; Wed, 04 Mar 2026 14:46: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 4fQwTs62v0z3ddq for ; Wed, 04 Mar 2026 14:46:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1772635586; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WrTU8gb5svdiJy0ZKo1BNlrLlnKeH77hljCWJ7wRFyI=; b=Edk5SZmIg5XK+CE7qOwPrhvsDDKDCH/k588LCxiACHOLg6pXDcV0ogzP5rfrf8OvjHymw3 PqUolnsU3ks1LT+Mp2dN+QP/O6pbFXEEro+GWzqVfqYy/71tJqEutXVkg/ubTA3FE/3hBF Fn0kVtD36DvPAp1jUbQFm0iPdwfT/QEOhRFOL9nZEr8z115WePM3jDv0nqyBTyZ9DRMf7k n4JL0x8A3ZmqDGu0Ai9ATBc7Y1wJVL1XhFTyP3+3NHvvOEo35no1i40HTxM0/5a4Uc4HyH 8566dD8JnAOWCU/zTRxK8bSiqAswoyMuwD9TnEfrgoiOiOABd3yV0z4c+PeL4g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1772635586; a=rsa-sha256; cv=none; b=NKZDgiy80q33URllpQdwIXUPwZ2IHOBOFHGbpyNj9r4o4Fspe6hVOFhrRoOH2uEwrDSXOy pwUov9E9iDgC0Yq+fLEn3ZJocuuyIxxr4JWiKcjRakiHNPFKw7Of8Up92Zxz1lcn6cpf2e lERM0m3PSwTrtsi4acDUHur6d9T6PGG+GS+PevoaQHMeivDpJYp+InFrU7dw0rdmEI5ndl LroC6ADOXBSus4/N+mGRPgEqX6ZlZeD397aklZWdi2MU8MP/sfM7gAGp/zX2Oj9i5IHZFo /PHac2r8Q6Ur1XjLk6ocrmESt6PXg4LuklyaRyZ3wDWT9/KYDJkcNBWQ0LIwbA== 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=1772635586; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WrTU8gb5svdiJy0ZKo1BNlrLlnKeH77hljCWJ7wRFyI=; b=YL/yyKGuMr2GVC6ZgGQ9sa30BznLgenkvAcYpeAZ3muX/+kKnWdYWBBamOKnHR7P9wszUM X3jhHgW60/hf2+lmUC8SSJiJaE6mey1j0n4cRHtemdNEVGdbZl5d9iLCcEXr5DbnRKuG2Y E7ctZYzxmzFLO5dCB1EhbxXMcDsW8zCBj7fGpp+FLcoUNzis+6+55tQ4P/fYlfSWsxNfhC WAEeYx47InVcTwg7rkbzuMAG5Na+bmeTJfauTpddUyzqrUI3oRsBdFug6L2anvmeUkadVv mXwr7p4S4OgAEt9bLR6F5rgrRDrYqB0zFQ18XIo12qIzzpZo1ETpj9v6i0X+fw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4fQwTs4W8szw4P for ; Wed, 04 Mar 2026 14:46:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 26999 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 04 Mar 2026 14:46:25 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Chris Rees From: Dag-Erling=?utf-8?Q? Sm=C3=B8rg?=rav Subject: git: c7460134fb26 - stable/13 - lpd: Add -F flag to prevent daemonizing 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: des X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: c7460134fb26bd41ed8da0f666b445d705e4cff2 Auto-Submitted: auto-generated Date: Wed, 04 Mar 2026 14:46:25 +0000 Message-Id: <69a845c1.26999.7802cbd5@gitrepo.freebsd.org> The branch stable/13 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=c7460134fb26bd41ed8da0f666b445d705e4cff2 commit c7460134fb26bd41ed8da0f666b445d705e4cff2 Author: Chris Rees AuthorDate: 2021-04-03 17:51:56 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2026-03-04 14:46:05 +0000 lpd: Add -F flag to prevent daemonizing This is necessary for use with supervision, e.g. runit. I chose -F simply because that is what the folks at LPRng use. Approved by: pfg, gad, ngie Differential Revision: https://reviews.freebsd.org/D29566 (cherry picked from commit 3c6366067036d4573528309a0a4d3b52e2a76ae7) --- usr.sbin/lpr/lpd/lpd.8 | 11 +++++++++++ usr.sbin/lpr/lpd/lpd.c | 22 +++++++++++++++------- 2 files changed, 26 insertions(+), 7 deletions(-) diff --git a/usr.sbin/lpr/lpd/lpd.8 b/usr.sbin/lpr/lpd/lpd.8 index dbd8ee9b797c..aaab2923fd48 100644 --- a/usr.sbin/lpr/lpd/lpd.8 +++ b/usr.sbin/lpr/lpd/lpd.8 @@ -107,6 +107,17 @@ This means that will not accept any connections from any remote hosts, although it will still accept print requests from all local users. +.It Fl F +By default, +.Nm +will daemonize into the background. +The +.Fl F +flag causes +.Nm +to remain in the foreground. +Logging is still performed with +.Xr syslog 3 . .It Fl W By default, the .Nm diff --git a/usr.sbin/lpr/lpd/lpd.c b/usr.sbin/lpr/lpd/lpd.c index 21e8997bd87d..19456c9406df 100644 --- a/usr.sbin/lpr/lpd/lpd.c +++ b/usr.sbin/lpr/lpd/lpd.c @@ -102,6 +102,7 @@ static char sccsid[] = "@(#)lpd.c 8.7 (Berkeley) 5/10/95"; int lflag; /* log requests flag */ int sflag; /* no incoming port flag */ +int Fflag; /* run in foreground flag */ int from_remote; /* from remote socket */ int main(int argc, char **_argv); @@ -150,7 +151,7 @@ main(int argc, char **argv) errx(EX_NOPERM,"must run as root"); errs = 0; - while ((i = getopt(argc, argv, "cdlpswW46")) != -1) + while ((i = getopt(argc, argv, "cdlpswFW46")) != -1) switch (i) { case 'c': /* log all kinds of connection-errors to syslog */ @@ -182,6 +183,9 @@ main(int argc, char **argv) syslog(LOG_WARNING, "NOTE: please change your lpd config to use -W"); /* FALLTHROUGH */ + case 'F': + Fflag++; + break; case 'W': /* allow connections coming from a non-reserved port */ /* (done by some lpr-implementations for MS-Windows) */ @@ -262,12 +266,16 @@ main(int argc, char **argv) WEXITSTATUS(status)); } -#ifndef DEBUG +#ifdef DEBUG + Fflag++; +#endif /* - * Set up standard environment by detaching from the parent. + * Set up standard environment by detaching from the parent + * if -F not specified */ - daemon(0, 0); -#endif + if (Fflag == 0) { + daemon(0, 0); + } openlog("lpd", LOG_PID, LOG_LPR); syslog(LOG_INFO, "lpd startup: logging=%d%s%s", lflag, @@ -930,9 +938,9 @@ static void usage(void) { #ifdef INET6 - fprintf(stderr, "usage: lpd [-cdlsW46] [port#]\n"); + fprintf(stderr, "usage: lpd [-cdlsFW46] [port#]\n"); #else - fprintf(stderr, "usage: lpd [-cdlsW] [port#]\n"); + fprintf(stderr, "usage: lpd [-cdlsFW] [port#]\n"); #endif exit(EX_USAGE); }