summaryrefslogtreecommitdiffstats
path: root/usr.sbin/chown
diff options
context:
space:
mode:
authorwosch <wosch@FreeBSD.org>1997-09-21 09:13:57 +0000
committerwosch <wosch@FreeBSD.org>1997-09-21 09:13:57 +0000
commit354c4ae8996f9068453afe1a19101c395d1bfd3e (patch)
tree8247c9b2f5bccc5e991ed286e3d39c37d5af3328 /usr.sbin/chown
parent90f6eb3199dd175b77d3c7b38e2f329e874ca817 (diff)
downloadFreeBSD-src-354c4ae8996f9068453afe1a19101c395d1bfd3e.zip
FreeBSD-src-354c4ae8996f9068453afe1a19101c395d1bfd3e.tar.gz
Chown(8) compiled with -DSUPPORT_DOT (backward compatibility) does
first check for a `.' and then for `:' as a delimiter. Usernames with a dot will fail. # chown r.r:bin /tmp/bla chown: r:bin: illegal group name Fix: first check for a `:' and then for a `.'
Diffstat (limited to 'usr.sbin/chown')
-rw-r--r--usr.sbin/chown/chown.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/usr.sbin/chown/chown.c b/usr.sbin/chown/chown.c
index b3b7876..918b8d9 100644
--- a/usr.sbin/chown/chown.c
+++ b/usr.sbin/chown/chown.c
@@ -42,7 +42,7 @@ static const char copyright[] =
static char sccsid[] = "@(#)chown.c 8.8 (Berkeley) 4/4/94";
#else
static const char rcsid[] =
- "$Id: chown.c,v 1.7 1997/08/24 02:10:29 steve Exp $";
+ "$Id: chown.c,v 1.8 1997/09/04 11:55:45 charnier Exp $";
#endif
#endif /* not lint */
@@ -133,16 +133,16 @@ main(argc, argv)
uid = gid = -1;
if (ischown) {
-#ifdef SUPPORT_DOT
- if ((cp = strchr(*argv, '.')) != NULL) {
+ if ((cp = strchr(*argv, ':')) != NULL) {
*cp++ = '\0';
a_gid(cp);
- } else
-#endif
- if ((cp = strchr(*argv, ':')) != NULL) {
+ }
+#ifdef SUPPORT_DOT
+ else if ((cp = strchr(*argv, '.')) != NULL) {
*cp++ = '\0';
a_gid(cp);
}
+#endif
a_uid(*argv);
} else
a_gid(*argv);
OpenPOWER on IntegriCloud