svn commit: r305269 - in head/usr.sbin/cron: cron crontab
Ed Maste
emaste at FreeBSD.org
Fri Sep 2 03:15:55 UTC 2016
Author: emaste
Date: Fri Sep 2 03:15:54 2016
New Revision: 305269
URL: https://svnweb.freebsd.org/changeset/base/305269
Log:
cron: use existing maximum username constant MAXLOGNAME
Previously cron had its own maximum username length limit, which was
smaller than the system's MAXLOGNAME. This could lead to crontab -u
updating the wrong user's crontab (if the name was truncated, and
matched another user).
PR: 212305
Reported by: Andrii Kuzik
Reviewed by: allanjude, jilles
MFC after: 3 days
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D7747
Modified:
head/usr.sbin/cron/cron/cron.h
head/usr.sbin/cron/crontab/crontab.c
Modified: head/usr.sbin/cron/cron/cron.h
==============================================================================
--- head/usr.sbin/cron/cron/cron.h Fri Sep 2 03:10:30 2016 (r305268)
+++ head/usr.sbin/cron/cron/cron.h Fri Sep 2 03:15:54 2016 (r305269)
@@ -73,7 +73,6 @@
#define MAX_COMMAND 1000 /* max length of internally generated cmd */
#define MAX_ENVSTR 1000 /* max length of envvar=value\0 strings */
#define MAX_TEMPSTR 100 /* obvious */
-#define MAX_UNAME 20 /* max length of username, should be overkill */
#define ROOT_UID 0 /* don't change this, it really must be root */
#define ROOT_USER "root" /* ditto */
#define SYS_NAME "*system*" /* magic owner name for system crontab */
Modified: head/usr.sbin/cron/crontab/crontab.c
==============================================================================
--- head/usr.sbin/cron/crontab/crontab.c Fri Sep 2 03:10:30 2016 (r305268)
+++ head/usr.sbin/cron/crontab/crontab.c Fri Sep 2 03:15:54 2016 (r305269)
@@ -28,6 +28,7 @@ static const char rcsid[] =
#define MAIN_PROGRAM
+#include <sys/param.h>
#include "cron.h"
#include <errno.h>
#include <fcntl.h>
@@ -57,7 +58,7 @@ static char *Options[] = { "???", "list"
static PID_T Pid;
-static char User[MAX_UNAME], RealUser[MAX_UNAME];
+static char User[MAXLOGNAME], RealUser[MAXLOGNAME];
static char Filename[MAX_FNAME];
static FILE *NewCrontab;
static int CheckErrorCount;
More information about the svn-src-all
mailing list