SCCS-vsn: usr.bin/lastcomm/lastcomm.c 4.8
SCCS-vsn: usr.sbin/quot/quot.c 4.8
SCCS-vsn: bin/ls/ls.c 4.19
SCCS-vsn: usr.bin/who/who.c 4.6
-static char *sccsid = "@(#)ls.c 4.18 (Berkeley) %G%";
+static char *sccsid = "@(#)ls.c 4.19 (Berkeley) %G%";
#include <utmp.h>
struct utmp utmp;
#include <utmp.h>
struct utmp utmp;
+#define NMAX (sizeof (utmp.ut_name))
+#define SCPYN(a, b) strncpy(a, b, NMAX)
#define NUID 2048
#define NGID 300
#define NUID 2048
#define NGID 300
-#define NMAX (sizeof (utmp.ut_name))
char names[NUID][NMAX+1];
char outrangename[NMAX+1];
char names[NUID][NMAX+1];
char outrangename[NMAX+1];
if (pw->pw_uid != uid)
continue;
outrangeuid = pw->pw_uid;
if (pw->pw_uid != uid)
continue;
outrangeuid = pw->pw_uid;
- strncpy(outrangename, pw->pw_name, NUID);
+ SCPYN(outrangename, pw->pw_name);
endpwent();
return (outrangename);
}
endpwent();
return (outrangename);
}
if (pw->pw_uid < 0 || pw->pw_uid >= NUID) {
if (pw->pw_uid == uid) {
outrangeuid = pw->pw_uid;
if (pw->pw_uid < 0 || pw->pw_uid >= NUID) {
if (pw->pw_uid == uid) {
outrangeuid = pw->pw_uid;
- strncpy(outrangename, pw->pw_name, NUID);
+ SCPYN(outrangename, pw->pw_name);
return (outrangename);
}
continue;
}
if (names[pw->pw_uid][0])
continue;
return (outrangename);
}
continue;
}
if (names[pw->pw_uid][0])
continue;
- strncpy(names[pw->pw_uid], pw->pw_name, NMAX);
+ SCPYN(names[pw->pw_uid], pw->pw_name);
if (pw->pw_uid == uid) {
return (&names[uid][0]);
}
if (pw->pw_uid == uid) {
return (&names[uid][0]);
}
if (gr->gr_gid != gid)
continue;
outrangegid = gr->gr_gid;
if (gr->gr_gid != gid)
continue;
outrangegid = gr->gr_gid;
- strncpy(outrangegroup, gr->gr_name, NGID);
+ SCPYN(outrangegroup, gr->gr_name);
endgrent();
return (outrangegroup);
}
endgrent();
return (outrangegroup);
}
if (gr->gr_gid < 0 || gr->gr_gid >= NGID) {
if (gr->gr_gid == gid) {
outrangegid = gr->gr_gid;
if (gr->gr_gid < 0 || gr->gr_gid >= NGID) {
if (gr->gr_gid == gid) {
outrangegid = gr->gr_gid;
- strncpy(outrangegroup, gr->gr_name, NGID);
+ SCPYN(outrangegroup, gr->gr_name);
return (outrangegroup);
}
continue;
}
if (groups[gr->gr_gid][0])
continue;
return (outrangegroup);
}
continue;
}
if (groups[gr->gr_gid][0])
continue;
- strncpy(groups[gr->gr_gid], gr->gr_name, NMAX);
+ SCPYN(groups[gr->gr_gid], gr->gr_name);
if (gr->gr_gid == gid) {
return (&groups[gid][0]);
}
if (gr->gr_gid == gid) {
return (&groups[gid][0]);
}
-static char *sccsid = "@(#)lastcomm.c 4.7 (Berkeley) %G%";
+static char *sccsid = "@(#)lastcomm.c 4.8 (Berkeley) %G%";
if (pw->pw_uid != uid)
continue;
outrangeuid = pw->pw_uid;
if (pw->pw_uid != uid)
continue;
outrangeuid = pw->pw_uid;
- strncpy(outrangename, pw->pw_name, NUID);
+ strncpy(outrangename, pw->pw_name, NMAX);
endpwent();
return (outrangename);
}
endpwent();
return (outrangename);
}
if (pw->pw_uid < 0 || pw->pw_uid >= NUID) {
if (pw->pw_uid == uid) {
outrangeuid = pw->pw_uid;
if (pw->pw_uid < 0 || pw->pw_uid >= NUID) {
if (pw->pw_uid == uid) {
outrangeuid = pw->pw_uid;
- strncpy(outrangename, pw->pw_name, NUID);
+ strncpy(outrangename, pw->pw_name, NMAX);
return (outrangename);
}
continue;
return (outrangename);
}
continue;
-static char *sccsid = "@(#)who.c 4.5 (Berkeley) %G%";
+static char *sccsid = "@(#)who.c 4.6 (Berkeley) %G%";
tp = rindex(tp, '/') + 1;
else { /* no tty - use best guess from passwd file */
pw = getpwuid(getuid());
tp = rindex(tp, '/') + 1;
else { /* no tty - use best guess from passwd file */
pw = getpwuid(getuid());
- strcpy(utmp.ut_name, pw?pw->pw_name: "?");
+ strncpy(utmp.ut_name, pw ? pw->pw_name : "?", NMAX);
strcpy(utmp.ut_line, "tty??");
time(&utmp.ut_time);
putline();
strcpy(utmp.ut_line, "tty??");
time(&utmp.ut_time);
putline();
-static char *sccsid = "@(#)quot.c 4.7 (Berkeley) 83/08/16";
+static char *sccsid = "@(#)quot.c 4.8 (Berkeley) 83/08/19";
if (pw->pw_uid != uid)
continue;
outrangeuid = pw->pw_uid;
if (pw->pw_uid != uid)
continue;
outrangeuid = pw->pw_uid;
- strncpy(outrangename, pw->pw_name, NUID);
+ strncpy(outrangename, pw->pw_name, NMAX);
endpwent();
return (outrangename);
}
endpwent();
return (outrangename);
}
if (pw->pw_uid < 0 || pw->pw_uid >= NUID) {
if (pw->pw_uid == uid) {
outrangeuid = pw->pw_uid;
if (pw->pw_uid < 0 || pw->pw_uid >= NUID) {
if (pw->pw_uid == uid) {
outrangeuid = pw->pw_uid;
- strncpy(outrangename, pw->pw_name, NUID);
+ strncpy(outrangename, pw->pw_name, NMAX);
return (outrangename);
}
continue;
return (outrangename);
}
continue;