Author: jerry
Date: 2006-07-07 12:29:10 +0000 (Fri, 07 Jul 2006)
New Revision: 16863

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

Log:
Pull in a few changes from Guenther, Simo, & Volker
Update the release notes


Modified:
   branches/SAMBA_3_0_RELEASE/WHATSNEW.txt
   branches/SAMBA_3_0_RELEASE/source/auth/auth_util.c
   branches/SAMBA_3_0_RELEASE/source/libads/cldap.c
   branches/SAMBA_3_0_RELEASE/source/libads/ldap.c
   branches/SAMBA_3_0_RELEASE/source/nsswitch/winbindd_sid.c
   branches/SAMBA_3_0_RELEASE/source/param/loadparm.c
   branches/SAMBA_3_0_RELEASE/source/rpc_server/srv_dfs_nt.c


Changeset:
Modified: branches/SAMBA_3_0_RELEASE/WHATSNEW.txt
===================================================================
--- branches/SAMBA_3_0_RELEASE/WHATSNEW.txt     2006-07-07 11:59:19 UTC (rev 
16862)
+++ branches/SAMBA_3_0_RELEASE/WHATSNEW.txt     2006-07-07 12:29:10 UTC (rev 
16863)
@@ -184,24 +184,33 @@
       create an NT token for the guest account.
     * BUG 3908: Fix RPC bind authentication failure which broke
       user password changes.
+    * Ensure that "net ads join" reports failure correctly if
+      it cannot set the machine account password.
 
 
 o   Guenther Deschner <[EMAIL PROTECTED]>
     * Fix different extended_dn handling in adssearch.pl
       (Thanks to Frederic Brin at Novell).
     * Fix a memleak in winbindd's credentials cache.
+    * Protect against crashes in CLDAP request processing.
+    * Remove incomplete DfsEnum() info level to avoid an smbd crash.
 
 
 o   Volker Lendecke <[EMAIL PROTECTED]>
     * Fix a memleak in the server registry code for enumeration 
       shares.
     * Fix an invalid munlock() call in winbindd's credentials cache.
+    * Fix compile warnings when passing NULL to snprintf().
 
 
 o   Jason Mader <[EMAIL PROTECTED]>
     * Compiler warning fixes.
 
 
+o   Simo Sorce <[EMAIL PROTECTED]>
+    * Set the correct sid type when looking up a gid.
+
+
 Changes since 3.0.22
 --------------------
 o   Jeremy Allison <[EMAIL PROTECTED]>

Modified: branches/SAMBA_3_0_RELEASE/source/auth/auth_util.c
===================================================================
--- branches/SAMBA_3_0_RELEASE/source/auth/auth_util.c  2006-07-07 11:59:19 UTC 
(rev 16862)
+++ branches/SAMBA_3_0_RELEASE/source/auth/auth_util.c  2006-07-07 12:29:10 UTC 
(rev 16863)
@@ -778,7 +778,7 @@
        }
                        
        /* add root */
-       if ( (ctx = talloc_init(NULL)) == NULL ) {
+       if ( (ctx = talloc_init("create_builtin_administrators")) == NULL ) {
                return NT_STATUS_NO_MEMORY;
        }
        fstr_sprintf( root_name, "%s\\root", get_global_sam_name() );

Modified: branches/SAMBA_3_0_RELEASE/source/libads/cldap.c
===================================================================
--- branches/SAMBA_3_0_RELEASE/source/libads/cldap.c    2006-07-07 11:59:19 UTC 
(rev 16862)
+++ branches/SAMBA_3_0_RELEASE/source/libads/cldap.c    2006-07-07 12:29:10 UTC 
(rev 16863)
@@ -115,10 +115,12 @@
        asn1_write_BOOLEAN2(&data, False);
        asn1_push_tag(&data, ASN1_CONTEXT(0));
 
-       asn1_push_tag(&data, ASN1_CONTEXT(3));
-       asn1_write_OctetString(&data, "DnsDomain", 9);
-       asn1_write_OctetString(&data, domain, strlen(domain));
-       asn1_pop_tag(&data);
+       if (domain) {
+               asn1_push_tag(&data, ASN1_CONTEXT(3));
+               asn1_write_OctetString(&data, "DnsDomain", 9);
+               asn1_write_OctetString(&data, domain, strlen(domain));
+               asn1_pop_tag(&data);
+       }
 
        asn1_push_tag(&data, ASN1_CONTEXT(3));
        asn1_write_OctetString(&data, "Host", 4);

Modified: branches/SAMBA_3_0_RELEASE/source/libads/ldap.c
===================================================================
--- branches/SAMBA_3_0_RELEASE/source/libads/ldap.c     2006-07-07 11:59:19 UTC 
(rev 16862)
+++ branches/SAMBA_3_0_RELEASE/source/libads/ldap.c     2006-07-07 12:29:10 UTC 
(rev 16863)
@@ -122,14 +122,15 @@
                return False;
        }
        
-       DEBUG(5,("ads_try_connect: sending CLDAP request to %s\n", server));
+       DEBUG(5,("ads_try_connect: sending CLDAP request to %s (realm: %s)\n", 
+               server, ads->server.realm));
 
        /* this copes with inet_ntoa brokenness */
        
        srv = SMB_STRDUP(server);
 
        ZERO_STRUCT( cldap_reply );
-       
+
        if ( !ads_cldap_netlogon( srv, ads->server.realm, &cldap_reply ) ) {
                DEBUG(3,("ads_try_connect: CLDAP request %s failed.\n", srv));
                return False;
@@ -149,18 +150,20 @@
        SAFE_FREE(ads->config.realm);
        SAFE_FREE(ads->config.bind_path);
        SAFE_FREE(ads->config.ldap_server_name);
+       SAFE_FREE(ads->server.workgroup);
 
        ads->config.ldap_server_name   = SMB_STRDUP(cldap_reply.hostname);
        strupper_m(cldap_reply.domain);
        ads->config.realm              = SMB_STRDUP(cldap_reply.domain);
        ads->config.bind_path          = ads_build_dn(ads->config.realm);
+       ads->server.workgroup          = SMB_STRDUP(cldap_reply.netbios_domain);
 
        ads->ldap_port = LDAP_PORT;
        ads->ldap_ip = *interpret_addr2(srv);
        SAFE_FREE(srv);
        
        /* cache the successful connection */
-       
+
        saf_store( ads->server.workgroup, server );
 
        return True;

Modified: branches/SAMBA_3_0_RELEASE/source/nsswitch/winbindd_sid.c
===================================================================
--- branches/SAMBA_3_0_RELEASE/source/nsswitch/winbindd_sid.c   2006-07-07 
11:59:19 UTC (rev 16862)
+++ branches/SAMBA_3_0_RELEASE/source/nsswitch/winbindd_sid.c   2006-07-07 
12:29:10 UTC (rev 16863)
@@ -416,7 +416,7 @@
 
        if (NT_STATUS_IS_OK(status)) {
                sid_to_string(state->response.data.sid.sid, &sid);
-               state->response.data.sid.type = SID_NAME_USER;
+               state->response.data.sid.type = SID_NAME_DOM_GRP;
                request_ok(state);
                return;
        }

Modified: branches/SAMBA_3_0_RELEASE/source/param/loadparm.c
===================================================================
--- branches/SAMBA_3_0_RELEASE/source/param/loadparm.c  2006-07-07 11:59:19 UTC 
(rev 16862)
+++ branches/SAMBA_3_0_RELEASE/source/param/loadparm.c  2006-07-07 12:29:10 UTC 
(rev 16863)
@@ -1670,7 +1670,7 @@
 TALLOC_CTX *tmp_talloc_ctx(void)
 {
        if (lp_talloc == NULL) {
-               lp_talloc = talloc_init(NULL);
+               lp_talloc = talloc_init("tmp_talloc_ctx");
        }
 
        if (lp_talloc == NULL) {

Modified: branches/SAMBA_3_0_RELEASE/source/rpc_server/srv_dfs_nt.c
===================================================================
--- branches/SAMBA_3_0_RELEASE/source/rpc_server/srv_dfs_nt.c   2006-07-07 
11:59:19 UTC (rev 16862)
+++ branches/SAMBA_3_0_RELEASE/source/rpc_server/srv_dfs_nt.c   2006-07-07 
12:29:10 UTC (rev 16863)
@@ -304,14 +304,6 @@
                r_u->info.e.u.info3.ptr0_s = 1;
                r_u->info.e.u.info3.size_s = num_jn;
                break;
-       case 4:
-               if ((r_u->info.e.u.info4.s = TALLOC_ARRAY(p->mem_ctx, 
NETDFS_DFS_INFO4, num_jn)) == NULL) {
-                       return WERR_NOMEM;
-               }
-               r_u->info.e.u.info4.count = num_jn;
-               r_u->info.e.u.info4.ptr0_s = 1;
-               r_u->info.e.u.info4.size_s = num_jn;
-               break;
        default:
                return WERR_INVALID_PARAM;
        }

Reply via email to