X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/c596dad1d12bdec9e2c38e7a439612dd4d855a5b..8ef4ffd6987bb566c268d2a353d5fea1cfd9e430:/util.c diff --git a/util.c b/util.c index 9b28cb03..67308cd2 100644 --- a/util.c +++ b/util.c @@ -455,3 +455,30 @@ void strlcpy(char *d, char *s, int maxlen) memcpy(d, s, len); d[len] = 0; } + +/* turn a user name into a uid */ +int name_to_uid(char *name, uid_t *uid) +{ + struct passwd *pass; + if (!name || !*name) return 0; + pass = getpwnam(name); + if (pass) { + *uid = pass->pw_uid; + return 1; + } + return 0; +} + +/* turn a group name into a gid */ +int name_to_gid(char *name, gid_t *gid) +{ + struct group *grp; + if (!name || !*name) return 0; + grp = getgrnam(name); + if (grp) { + *gid = grp->gr_gid; + return 1; + } + return 0; +} +