From nobody Wed Apr 29 04:06:48 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 4g53f61PM9z6cXw7 for ; Wed, 29 Apr 2026 04:06:54 +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 "R13" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4g53f55ktnz482n for ; Wed, 29 Apr 2026 04:06:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1777435613; 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=34vdu2CpYocG0I4F3+5kvUJMNG0SbIC18vuMd8/jVNk=; b=vDuVLnPqYmhEenPMBvD0WZj0EhB9V1hVFzPRpRpuyXmeZiI1WTruhS3Yv2CbM+wliDL1VW AN9Vwsf7Bq+lE3Ey/fwT8W7G+9z9E5JLo+QL0DQHwnn/tz0HthMnri+NDtrD6nSKhaVvQX /DLKVCTKHnE0xK9Ei1VzWIhSpRbEL7z03vASJh7dr6teleodx/c8wiq4B8T+bYykyDJS/8 MyOCo5hehVBwPNbveduK2uvLnnUIlEvAkmJw5myRdcGzgFfBj2Qy4frNBO4bYYNImapVPp zykAs4ayorHTFsccim73mE50ymXurp2Hv87NriDtGKgZE4ITmcH5YqTGNo0qtw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1777435613; a=rsa-sha256; cv=none; b=L1aexRXF452ylC16fdLVMdMcOVsGsTQKT6aNbiC64aGhiHPnHf2bYK2xoKhzgA1+OmFNLM PwFHuIXPIx2U4Gbn4FCbywhfn2UnAdCJ+UEVCCMYNvA5eywSJwxTpHGpEKjsD4vySnvGyx S0NW30WaWRtjIql8JciXlNs7qsUzZdfjkdf1XGi2/eYb5HOF2PFfehs/M6Kad3RZkWmXQ3 vCi/CYL0F8Q2zOQe0GGRD80b34KtOV3q1lzw9fkGSyJu6VNCGO1YbOASIyYhYRqrBgKArC L3j3A7T0VgKXo1BK5Wow8OtLn6fAa6PpIsCmunXYAUvrQTX+DiEKDbsZuyPjKQ== 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=1777435613; 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=34vdu2CpYocG0I4F3+5kvUJMNG0SbIC18vuMd8/jVNk=; b=bcO4VbUCjZeurpltpJfLIniD65sQmpdAYjN5ODXeMxbNQ67wvCuLKq8uqNDdV1xi9eRywi M0XJC7YB6MhTVByEKRrJHzIycDPDZZMGjWQOGYQH6JOZm6IciiSHYiB80kp7N65Mw94/PX zCgJO/W7z410ovb2JM1Tdx1jPjxLXq7EaZciqeF/plizP7oIdVXnXZjgzPZtH1acWaDvuM MRgHYOHAl+zxVaMnISIhL8k12+bY64A+aqnlM5kn39/NLrnGnLhCOSNmVVOfSpjmUgIDC6 OQe/ZgJPgw9QfC6ttVg6y5J9m0FGNrZemib/MSPIUfBl0jXvCg2a9qOs3X2/7w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4g53f54k1hz8Cl for ; Wed, 29 Apr 2026 04:06:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 18567 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 29 Apr 2026 04:06:48 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Cc: Chris Longros From: Kyle Evans Subject: git: 91bfba010bcd - main - cron: log when a crontab path is too long 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: kevans X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 91bfba010bcda665cc24a76af631cc85fcb0c688 Auto-Submitted: auto-generated Date: Wed, 29 Apr 2026 04:06:48 +0000 Message-Id: <69f183d8.18567.b59b7db@gitrepo.freebsd.org> The branch main has been updated by kevans: URL: https://cgit.FreeBSD.org/src/commit/?id=91bfba010bcda665cc24a76af631cc85fcb0c688 commit 91bfba010bcda665cc24a76af631cc85fcb0c688 Author: Chris Longros AuthorDate: 2026-04-29 04:06:29 +0000 Commit: Kyle Evans CommitDate: 2026-04-29 04:06:29 +0000 cron: log when a crontab path is too long Log via syslog when snprintf truncates the crontab path, instead of silently skipping the entry. Signed-off-by: Christos Longros Reviewed by: bcr, kevans Differential Revision: https://reviews.freebsd.org/D56235 --- usr.sbin/cron/cron/cron.8 | 11 +++++++++-- usr.sbin/cron/cron/database.c | 6 ++++-- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/usr.sbin/cron/cron/cron.8 b/usr.sbin/cron/cron/cron.8 index 23a295393df5..f1a6a30d4cb5 100644 --- a/usr.sbin/cron/cron/cron.8 +++ b/usr.sbin/cron/cron/cron.8 @@ -19,7 +19,7 @@ .\" .\" $Id: cron.8,v 1.2 1998/08/14 00:32:36 vixie Exp $ .\" -.Dd January 20, 2026 +.Dd April 29, 2026 .Dt CRON 8 .Os .Sh NAME @@ -227,7 +227,14 @@ configuration file for .It Pa /usr/local/etc/cron.d Directory for third-party package provided crontab files. .It Pa /var/cron/tabs -Directory for personal crontab files +Directory for personal crontab files. +Internally the daemon constructs the relative path +.Pa tabs/ Ns Ar filename , +which must fit within +.Dv MAXNAMLEN +bytes; in practice this allows filenames up to 250 bytes. +Longer entries are skipped and a diagnostic is logged via +.Xr syslog 3 . .El .Sh SEE ALSO .Xr crontab 1 , diff --git a/usr.sbin/cron/cron/database.c b/usr.sbin/cron/cron/database.c index 35e5fad3524d..234b5ef7fdd6 100644 --- a/usr.sbin/cron/cron/database.c +++ b/usr.sbin/cron/cron/database.c @@ -166,8 +166,10 @@ load_database(cron_db *old_db) fname[sizeof(fname)-1] = '\0'; if (snprintf(tabname, sizeof tabname, CRON_TAB(fname)) - >= sizeof(tabname)) - continue; /* XXX log? */ + >= (int)sizeof(tabname)) { + log_it("CRON", getpid(), "TABNAME TOO LONG", fname); + continue; + } process_crontab(fname, fname, tabname, &statbuf, &new_db, old_db);