summaryrefslogtreecommitdiffstats
path: root/chpass/pw_copy.c
diff options
context:
space:
mode:
authorSheldon Hearn <sheldonh@FreeBSD.org>1999-07-29 16:30:35 +0000
committerSheldon Hearn <sheldonh@FreeBSD.org>1999-07-29 16:30:35 +0000
commit44b5cc40c0a4b5cd60c930467ef855be1c15d479 (patch)
tree597047158e2154f7b8933c1bebd5c925fd5b820e /chpass/pw_copy.c
parent75e207ee656a8a6dd36a966aa03a0b5fc38a79dd (diff)
downloadpw-darwin-44b5cc40c0a4b5cd60c930467ef855be1c15d479.tar.gz
pw-darwin-44b5cc40c0a4b5cd60c930467ef855be1c15d479.tar.zst
pw-darwin-44b5cc40c0a4b5cd60c930467ef855be1c15d479.zip
Allow comments and blank lines as advertised in passwd(5).
PR: 12828 Submitted by: Yasuhiro Fukuma <yasuf@big.or.jp>
Diffstat (limited to 'chpass/pw_copy.c')
-rw-r--r--chpass/pw_copy.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/chpass/pw_copy.c b/chpass/pw_copy.c
index f584ba3..9018e4b 100644
--- a/chpass/pw_copy.c
+++ b/chpass/pw_copy.c
@@ -85,6 +85,17 @@ pw_copy(ffd, tfd, pw)
goto err;
continue;
}
+#ifdef PASSWD_IGNORE_COMMENTS
+ for (p = buf; *p != '\n'; p++)
+ if (*p != ' ' && *p != '\t')
+ break;
+ if (*p == '#' || *p == '\n') {
+ (void)fprintf(to, "%s", buf);
+ if (ferror(to))
+ goto err;
+ continue;
+ }
+#endif
if (!(p = strchr(buf, ':'))) {
warnx("%s: corrupted entry", _PATH_MASTERPASSWD);
pw_error(NULL, 0, 1);