diff options
author | Gerald Carter <jerry@samba.org> | 2007-01-24 01:48:08 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 12:17:23 -0500 |
commit | b9b26be1744b792a54f0a77af140237b4dc5a870 (patch) | |
tree | 96501a60f415248f226902f790420dec7758a540 /source3/nsswitch/winbindd_cache.c | |
parent | 78f5f4b260d877ce615dbbdc2bccbb0cd251f08a (diff) | |
download | samba-b9b26be1744b792a54f0a77af140237b4dc5a870.tar.gz samba-b9b26be1744b792a54f0a77af140237b4dc5a870.tar.bz2 samba-b9b26be1744b792a54f0a77af140237b4dc5a870.zip |
r20986: Commit the prototype of the nss_info plugin interface.
This allows a provider to supply the homedirectory, etc...
attributes for a user without requiring support in core
winbindd code. The idmap_ad.c module has been modified
to provide the idmap 'ad' library as well as the rfc2307 and sfu
"winbind nss info" support.
The SID/id mapping is working in idmap_ad but the nss_info
still has a few quirks that I'm in the process of resolving.
(This used to be commit aaec0115e2c96935499052d9a637a20c6445986e)
Diffstat (limited to 'source3/nsswitch/winbindd_cache.c')
-rw-r--r-- | source3/nsswitch/winbindd_cache.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/source3/nsswitch/winbindd_cache.c b/source3/nsswitch/winbindd_cache.c index 0587d8b2b3..423e625ced 100644 --- a/source3/nsswitch/winbindd_cache.c +++ b/source3/nsswitch/winbindd_cache.c @@ -827,6 +827,7 @@ static void wcache_save_user(struct winbindd_domain *domain, NTSTATUS status, WI centry_put_string(centry, info->full_name); centry_put_string(centry, info->homedir); centry_put_string(centry, info->shell); + centry_put_uint32(centry, info->primary_gid); centry_put_sid(centry, &info->user_sid); centry_put_sid(centry, &info->group_sid); centry_end(centry, "U/%s", sid_to_string(sid_string, &info->user_sid)); @@ -854,7 +855,7 @@ static void wcache_save_lockout_policy(struct winbindd_domain *domain, NTSTATUS } static void wcache_save_password_policy(struct winbindd_domain *domain, NTSTATUS status, SAM_UNK_INFO_1 *policy) -{ + { struct cache_entry *centry; centry = centry_start(domain, status); @@ -1589,6 +1590,7 @@ static NTSTATUS query_user(struct winbindd_domain *domain, info->full_name = centry_string(centry, mem_ctx); info->homedir = centry_string(centry, mem_ctx); info->shell = centry_string(centry, mem_ctx); + info->primary_gid = centry_uint32(centry); centry_sid(centry, mem_ctx, &info->user_sid); centry_sid(centry, mem_ctx, &info->group_sid); status = centry->status; |