diff options
Diffstat (limited to 'source3')
-rw-r--r-- | source3/lib/username.c | 28 | ||||
-rw-r--r-- | source3/lib/util_getent.c | 31 |
2 files changed, 31 insertions, 28 deletions
diff --git a/source3/lib/username.c b/source3/lib/username.c index 1973a8c7c6..403a0bc09f 100644 --- a/source3/lib/username.c +++ b/source3/lib/username.c @@ -35,34 +35,6 @@ static BOOL name_is_local(const char *name) return !(strchr_m(name, *lp_winbind_separator())); } -/***************************************************************** - Splits passed user or group name to domain and user/group name parts - Returns True if name was splitted and False otherwise. -*****************************************************************/ - -BOOL split_domain_and_name(const char *name, char *domain, char* username) -{ - char *p = strchr(name,*lp_winbind_separator()); - - - /* Parse a string of the form DOMAIN/user into a domain and a user */ - DEBUG(10,("split_domain_and_name: checking whether name |%s| local or not\n", name)); - - if (p) { - fstrcpy(username, p+1); - fstrcpy(domain, name); - domain[PTR_DIFF(p, name)] = 0; - } else if (lp_winbind_use_default_domain()) { - fstrcpy(username, name); - fstrcpy(domain, lp_workgroup()); - } else { - return False; - } - - DEBUG(10,("split_domain_and_name: all is fine, domain is |%s| and name is |%s|\n", domain, username)); - return True; -} - /**************************************************************************** Get a users home directory. ****************************************************************************/ diff --git a/source3/lib/util_getent.c b/source3/lib/util_getent.c index 475b0da87b..7c045fccb2 100644 --- a/source3/lib/util_getent.c +++ b/source3/lib/util_getent.c @@ -239,6 +239,37 @@ static struct sys_userlist *add_members_to_userlist(struct sys_userlist *list_he return list_head; } +/***************************************************************** + Splits passed user or group name to domain and user/group name parts + Returns True if name was splitted and False otherwise. +*****************************************************************/ + +static BOOL split_domain_and_name(const char *name, char *domain, + char* username) +{ + char *p = strchr(name,*lp_winbind_separator()); + + + /* Parse a string of the form DOMAIN/user into a domain and a user */ + DEBUG(10,("split_domain_and_name: checking whether name |%s| local or " + "not\n", name)); + + if (p) { + fstrcpy(username, p+1); + fstrcpy(domain, name); + domain[PTR_DIFF(p, name)] = 0; + } else if (lp_winbind_use_default_domain()) { + fstrcpy(username, name); + fstrcpy(domain, lp_workgroup()); + } else { + return False; + } + + DEBUG(10,("split_domain_and_name: all is fine, domain is |%s| and " + "name is |%s|\n", domain, username)); + return True; +} + /**************************************************************** Get the list of UNIX users in a group. We have to enumerate the /etc/group file as some UNIX getgrnam() |