diff options
author | Jeremy Allison <jra@samba.org> | 2001-06-25 21:29:33 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2001-06-25 21:29:33 +0000 |
commit | 9f447adbec3b4fa97be70add22e57a17fb8a53b2 (patch) | |
tree | 4401eeb0287ad38ab265bbfc803c93c47c017677 /source3 | |
parent | b0be9cd7683ae2b8d53aac3d98f1cb5a7d77f3f3 (diff) | |
download | samba-9f447adbec3b4fa97be70add22e57a17fb8a53b2.tar.gz samba-9f447adbec3b4fa97be70add22e57a17fb8a53b2.tar.bz2 samba-9f447adbec3b4fa97be70add22e57a17fb8a53b2.zip |
Ensure numeric group or user names don't get misinterpreted.
Jeremy.
(This used to be commit e88da9dcc79801028127bcbe328af001b58e653a)
Diffstat (limited to 'source3')
-rw-r--r-- | source3/lib/util.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/source3/lib/util.c b/source3/lib/util.c index 37bb1693d8..2e2c887b93 100644 --- a/source3/lib/util.c +++ b/source3/lib/util.c @@ -1053,13 +1053,15 @@ uid_t nametouid(char *name) uid_t u; u = (uid_t)strtol(name, &p, 0); - if (p != name) return u; + if ((p != name) && (*p == '\0')) + return u; if (winbind_nametouid(&u, name)) return u; pass = sys_getpwnam(name); - if (pass) return(pass->pw_uid); + if (pass) + return(pass->pw_uid); return (uid_t)-1; } @@ -1075,13 +1077,15 @@ gid_t nametogid(char *name) gid_t g; g = (gid_t)strtol(name, &p, 0); - if (p != name) return g; + if ((p != name) && (*p == '\0')) + return g; if (winbind_nametogid(&g, name)) return g; grp = getgrnam(name); - if (grp) return(grp->gr_gid); + if (grp) + return(grp->gr_gid); return (gid_t)-1; } |