]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
s3: libsmb: Change dns_lookup_list_async() and associated functions to return a struc...
authorJeremy Allison <jra@samba.org>
Tue, 28 Jul 2020 23:51:03 +0000 (16:51 -0700)
committerAndreas Schneider <asn@cryptomilk.org>
Fri, 7 Aug 2020 06:34:37 +0000 (06:34 +0000)
This fullfills the promise to Andreas and Metze
of all new code using struct samba_sockaddr.

Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
source3/libsmb/dsgetdcname.c
source3/libsmb/namequery.c
source3/libsmb/namequery.h

index 7dd3b3dc0b08de446af79b8f31dd276ca81f696d..d736271931e9c3d69039b1321067a70b94b9b867 100644 (file)
@@ -513,7 +513,7 @@ static NTSTATUS discover_dc_dns(TALLOC_CTX *mem_ctx,
        size_t num_dns_lookups = 0;
        const char **dns_lookups = NULL;
        size_t num_lookups_ret = 0;
-       struct sockaddr_storage *dns_addrs_ret = NULL;
+       struct samba_sockaddr *dns_addrs_ret = NULL;
        char **dns_lookups_ret = NULL;
 
        if (flags & DS_PDC_REQUIRED) {
@@ -718,7 +718,7 @@ static NTSTATUS discover_dc_dns(TALLOC_CTX *mem_ctx,
        for (i = 0; i < num_lookups_ret; i++) {
                dclist[ret_count].hostname =
                        talloc_move(mem_ctx, &dns_lookups_ret[i]);
-               dclist[ret_count].ss = dns_addrs_ret[i];
+               dclist[ret_count].ss = dns_addrs_ret[i].u.ss;
                /*
                 * Is this a duplicate name return.
                 * Remember we can look up both A and
index 317c5dd02621bce9334f9d3b399c4dbc6af50cae..5551c899df6cc5dfed28f558e70ddbb88aed0672 100644 (file)
@@ -2346,7 +2346,7 @@ NTSTATUS dns_lookup_list_async(TALLOC_CTX *ctx,
                              size_t num_dns_names,
                              const char **dns_lookup_names,
                              size_t *p_num_addrs,
-                             struct sockaddr_storage **pp_addrs,
+                             struct samba_sockaddr **pp_addrs,
                              char ***pp_dns_names)
 {
        struct dns_lookup_list_async_state *state = NULL;
@@ -2357,7 +2357,7 @@ NTSTATUS dns_lookup_list_async(TALLOC_CTX *ctx,
        size_t queries_size = num_dns_names;
        size_t i;
        size_t num_addrs = 0;
-       struct sockaddr_storage *addr_out = NULL;
+       struct samba_sockaddr *addr_out = NULL;
        char **dns_names_ret = NULL;
        NTSTATUS status = NT_STATUS_NO_MEMORY;
 
@@ -2481,7 +2481,7 @@ NTSTATUS dns_lookup_list_async(TALLOC_CTX *ctx,
        }
 
        addr_out = talloc_zero_array(ctx,
-                                    struct sockaddr_storage,
+                                    struct samba_sockaddr,
                                     num_addrs);
        if (addr_out == NULL) {
                goto fail;
@@ -2529,7 +2529,7 @@ NTSTATUS dns_lookup_list_async(TALLOC_CTX *ctx,
                }
 
                for (j = 0; j < query->num_addrs; j++) {
-                       addr_out[num_addrs] = query->addrs[j].u.ss;
+                       addr_out[num_addrs] = query->addrs[j];
                }
                num_addrs += query->num_addrs;
        }
@@ -2688,7 +2688,6 @@ static void dns_lookup_list_aaaa_done(struct tevent_req *req)
                        print_sockaddr(addr,
                                sizeof(addr),
                                &addrs[i].u.ss));
-
                state->addrs[i] = addrs[i];
        }
        state->num_addrs = num_addrs;
@@ -2805,7 +2804,7 @@ static NTSTATUS resolve_ads(TALLOC_CTX *ctx,
        size_t num_srv_addrs = 0;
        struct sockaddr_storage *srv_addrs = NULL;
        size_t num_dns_addrs = 0;
-       struct sockaddr_storage *dns_addrs = NULL;
+       struct samba_sockaddr *dns_addrs = NULL;
        size_t num_dns_names = 0;
        const char **dns_lookup_names = NULL;
        struct sockaddr_storage *ret_addrs = NULL;
@@ -3031,7 +3030,7 @@ static NTSTATUS resolve_ads(TALLOC_CTX *ctx,
                ret_addrs[i] = srv_addrs[i];
        }
        for (i = 0; i < num_dns_addrs; i++) {
-               ret_addrs[num_srv_addrs+i] = dns_addrs[i];
+               ret_addrs[num_srv_addrs+i] = dns_addrs[i].u.ss;
        }
 
        TALLOC_FREE(dcs);
index b1b138b1f3e5424bb26d977ca911b6c258e306c2..81aeb6406e36e9452d528e0dc7937ba20c8fbc0e 100644 (file)
@@ -90,7 +90,7 @@ NTSTATUS dns_lookup_list_async(TALLOC_CTX *ctx,
                               size_t num_dns_names,
                               const char **dns_lookup_names,
                               size_t *p_num_addrs,
-                              struct sockaddr_storage **pp_addrs,
+                              struct samba_sockaddr **pp_addrs,
                               char ***pp_dns_names);
 NTSTATUS internal_resolve_name(const char *name,
                                int name_type,