summaryrefslogtreecommitdiff
path: root/source3/winbindd/idmap_nss.c
diff options
context:
space:
mode:
authorVolker Lendecke <vl@samba.org>2007-12-19 15:02:59 +0100
committerVolker Lendecke <vl@samba.org>2007-12-19 21:09:10 +0100
commite518e19bc0000019f131354f55e9f5b55f6a2c5e (patch)
tree5c8723a1510ebb17ff4bd21068aa67159ad3a68d /source3/winbindd/idmap_nss.c
parent042201bcc1b7ffc88cdc22b64c70c653b2433703 (diff)
downloadsamba-e518e19bc0000019f131354f55e9f5b55f6a2c5e.tar.gz
samba-e518e19bc0000019f131354f55e9f5b55f6a2c5e.tar.bz2
samba-e518e19bc0000019f131354f55e9f5b55f6a2c5e.zip
Remove Get_Pwnam and its associated static variable
All callers are replaced by Get_Pwnam_alloc (This used to be commit 735f59315497113aebadcf9ad387e3dbfffa284a)
Diffstat (limited to 'source3/winbindd/idmap_nss.c')
-rw-r--r--source3/winbindd/idmap_nss.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/source3/winbindd/idmap_nss.c b/source3/winbindd/idmap_nss.c
index fa9f2c9681..46c24d7fcb 100644
--- a/source3/winbindd/idmap_nss.c
+++ b/source3/winbindd/idmap_nss.c
@@ -145,7 +145,6 @@ static NTSTATUS idmap_nss_sids_to_unixids(struct idmap_domain *dom, struct id_ma
}
for (i = 0; ids[i]; i++) {
- struct passwd *pw;
struct group *gr;
enum lsa_SidType type;
const char *dom_name = NULL;
@@ -166,17 +165,20 @@ static NTSTATUS idmap_nss_sids_to_unixids(struct idmap_domain *dom, struct id_ma
}
switch (type) {
- case SID_NAME_USER:
+ case SID_NAME_USER: {
+ struct passwd *pw;
/* this will find also all lower case name and use username level */
-
- pw = Get_Pwnam(name);
+
+ pw = Get_Pwnam_alloc(talloc_tos(), name);
if (pw) {
ids[i]->xid.id = pw->pw_uid;
ids[i]->xid.type = ID_TYPE_UID;
ids[i]->status = ID_MAPPED;
}
+ TALLOC_FREE(pw);
break;
+ }
case SID_NAME_DOM_GRP:
case SID_NAME_ALIAS: