Author: gd
Date: 2005-09-24 11:33:55 +0000 (Sat, 24 Sep 2005)
New Revision: 10474

WebSVN: 
http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=10474

Log:
We better ignore builtin SIDs from the Active Directory DC to prevent
that AD's builtin groups mixup with our own builtin groups.

Guenther

Modified:
   branches/SAMBA_3_0/source/nsswitch/winbindd_ads.c
   trunk/source/nsswitch/winbindd_ads.c


Changeset:
Modified: branches/SAMBA_3_0/source/nsswitch/winbindd_ads.c
===================================================================
--- branches/SAMBA_3_0/source/nsswitch/winbindd_ads.c   2005-09-24 10:13:27 UTC 
(rev 10473)
+++ branches/SAMBA_3_0/source/nsswitch/winbindd_ads.c   2005-09-24 11:33:55 UTC 
(rev 10474)
@@ -613,9 +613,16 @@
 
        add_sid_to_array(mem_ctx, &primary_group, user_sids, num_groups);
        
-       for (i=0;i<count;i++)
+       for (i=0;i<count;i++) {
+
+               /* ignore Builtin groups from ADS - Guenther */
+               if (sid_check_is_in_builtin(&sids[i])) {
+                       continue;
+               }
+                              
                add_sid_to_array_unique(mem_ctx, &sids[i],
                                        user_sids, num_groups);
+       }
 
        status = (user_sids != NULL) ? NT_STATUS_OK : NT_STATUS_NO_MEMORY;
 

Modified: trunk/source/nsswitch/winbindd_ads.c
===================================================================
--- trunk/source/nsswitch/winbindd_ads.c        2005-09-24 10:13:27 UTC (rev 
10473)
+++ trunk/source/nsswitch/winbindd_ads.c        2005-09-24 11:33:55 UTC (rev 
10474)
@@ -613,9 +613,16 @@
 
        add_sid_to_array(mem_ctx, &primary_group, user_sids, num_groups);
        
-       for (i=0;i<count;i++)
+       for (i=0;i<count;i++) {
+
+               /* ignore Builtin groups from ADS - Guenther */
+               if (sid_check_is_in_builtin(&sids[i])) {
+                       continue;
+               }
+                              
                add_sid_to_array_unique(mem_ctx, &sids[i],
                                        user_sids, num_groups);
+       }
 
        status = (user_sids != NULL) ? NT_STATUS_OK : NT_STATUS_NO_MEMORY;
 

Reply via email to