libwbclient: fix wbcLookupDomainController().
authorGünther Deschner <gd@samba.org>
Mon, 19 Oct 2009 14:55:15 +0000 (16:55 +0200)
committerGünther Deschner <gd@samba.org>
Mon, 19 Oct 2009 16:44:51 +0000 (18:44 +0200)
Found by WINBIND-WBCLIENT torture test.

Guenther

nsswitch/libwbclient/wbc_util.c

index 24b5922c590e7e300743474e35856bfdae04fc41..16828ae5df659fc5fc1ccad4a9a0377a419e798e 100644 (file)
@@ -486,7 +486,8 @@ wbcErr wbcLookupDomainController(const char *domain,
        ZERO_STRUCT(request);
        ZERO_STRUCT(response);
 
-       strncpy(request.domain_name, domain, sizeof(request.domain_name)-1);
+       strncpy(request.data.dsgetdcname.domain_name, domain,
+               sizeof(request.data.dsgetdcname.domain_name)-1);
 
        request.flags = flags;
 
@@ -500,7 +501,7 @@ wbcErr wbcLookupDomainController(const char *domain,
                                        &response);
        BAIL_ON_WBC_ERROR(wbc_status);
 
-       dc->dc_name = talloc_strdup(dc, response.data.dc_name);
+       dc->dc_name = talloc_strdup(dc, response.data.dsgetdcname.dc_unc);
        BAIL_ON_PTR_ERROR(dc->dc_name, wbc_status);
 
        *dc_info = dc;