Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 8 Dec 2001 10:15:21 +0000
From:      David Hill <lists@phobia.ms>
To:        freebsd-audit@freebsd.org
Subject:   write.c diff
Message-ID:  <20011208101521.0163ee8c.lists@phobia.ms>

next in thread | raw e-mail | index | archive | help

[-- Attachment #1 --]
Hello -
Here is a small code cleanup patch for write(1).

- David

--- /usr/src/usr.bin/write/write.c.orig Mon Dec  3 17:42:45 2001
+++ /usr/src/usr.bin/write/write.c      Mon Dec  3 17:45:22 2001
@@ -190,8 +190,7 @@
        while (read(ufd, (char *) &u, sizeof(u)) == sizeof(u))
                if (strncmp(user, u.ut_name, sizeof(u.ut_name)) == 0) {
                        ++nloggedttys;
-                       (void)strncpy(atty, u.ut_line, UT_LINESIZE);
-                       atty[UT_LINESIZE] = '\0';
+                       (void)strlcpy(atty, u.ut_line, UT_LINESIZE);
                        if (term_chk(atty, &msgsok, &atime, 0))
                                continue;       /* bad term? skip */
                        if (myuid && !msgsok)
@@ -240,7 +239,7 @@
                        warn("%s", path);
                return(1);
        }
-       *msgsokP = (s.st_mode & (S_IWRITE >> 3)) != 0;  /* group write bit */
+       *msgsokP = (s.st_mode & S_IWGRP) != 0;  /* group write bit */
        *atimeP = s.st_atime;
        return(0);
 }

[-- Attachment #2 --]
--- /usr/src/usr.bin/write/write.c.orig	Mon Dec  3 17:42:45 2001
+++ /usr/src/usr.bin/write/write.c	Mon Dec  3 17:45:22 2001
@@ -190,8 +190,7 @@
 	while (read(ufd, (char *) &u, sizeof(u)) == sizeof(u))
 		if (strncmp(user, u.ut_name, sizeof(u.ut_name)) == 0) {
 			++nloggedttys;
-			(void)strncpy(atty, u.ut_line, UT_LINESIZE);
-			atty[UT_LINESIZE] = '\0';
+			(void)strlcpy(atty, u.ut_line, UT_LINESIZE);
 			if (term_chk(atty, &msgsok, &atime, 0))
 				continue;	/* bad term? skip */
 			if (myuid && !msgsok)
@@ -240,7 +239,7 @@
 			warn("%s", path);
 		return(1);
 	}
-	*msgsokP = (s.st_mode & (S_IWRITE >> 3)) != 0;	/* group write bit */
+	*msgsokP = (s.st_mode & S_IWGRP) != 0;	/* group write bit */
 	*atimeP = s.st_atime;
 	return(0);
 }

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20011208101521.0163ee8c.lists>