From 76ea4fd03a36985a5e45b5d92b585bfbd3aa53d7 Mon Sep 17 00:00:00 2001 From: Michael Adam Date: Thu, 10 Feb 2011 10:59:18 +0100 Subject: Revert "nsswitch: remove unused code from wbinfo.c" This reverts commit 3bdd2efff8d11448275965b464ac194a2ee0d3ae. Undo the library version bump. --- nsswitch/wbinfo.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'nsswitch/wbinfo.c') diff --git a/nsswitch/wbinfo.c b/nsswitch/wbinfo.c index 1056fb33e9..a4b2a3c998 100644 --- a/nsswitch/wbinfo.c +++ b/nsswitch/wbinfo.c @@ -139,6 +139,31 @@ static bool parse_wbinfo_domain_user(const char *domuser, fstring domain, return true; } +/* Parse string of "uid,sid" or "gid,sid" into separate int and string values. + * Return true if input was valid, false otherwise. */ +static bool parse_mapping_arg(char *arg, int *id, char **sid) +{ + char *tmp, *endptr; + + if (!arg || !*arg) + return false; + + tmp = strtok(arg, ","); + *sid = strtok(NULL, ","); + + if (!tmp || !*tmp || !*sid || !**sid) + return false; + + /* Because atoi() can return 0 on invalid input, which would be a valid + * UID/GID we must use strtoul() and do error checking */ + *id = strtoul(tmp, &endptr, 10); + + if (endptr[0] != '\0') + return false; + + return true; +} + /* pull pwent info for a given user */ static bool wbinfo_get_userinfo(char *user) @@ -1837,8 +1862,10 @@ int main(int argc, char **argv, char **envp) TALLOC_CTX *frame = talloc_stackframe(); poptContext pc; static char *string_arg; + char *string_subarg = NULL; static char *opt_domain_name; static int int_arg; + int int_subarg = -1; int result = 1; bool verbose = false; bool use_ntlmv2 = false; -- cgit