Author: jelmer
Date: 2007-12-07 16:04:17 +0000 (Fri, 07 Dec 2007)
New Revision: 26335

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

Log:
Specify name_resolve_order to socket code.
Modified:
   branches/SAMBA_4_0/
   branches/SAMBA_4_0/source/auth/kerberos/krb5_init_context.c
   branches/SAMBA_4_0/source/lib/socket/connect.c
   branches/SAMBA_4_0/source/lib/socket/connect_multi.c
   branches/SAMBA_4_0/source/lib/socket/socket.h
   branches/SAMBA_4_0/source/lib/socket/testsuite.c
   branches/SAMBA_4_0/source/libcli/ldap/ldap_client.c
   branches/SAMBA_4_0/source/libcli/raw/clisocket.c
   branches/SAMBA_4_0/source/libcli/wrepl/winsrepl.c
   branches/SAMBA_4_0/source/librpc/rpc/dcerpc_sock.c
   branches/SAMBA_4_0/source/param/loadparm.c


Changeset:

Property changes on: branches/SAMBA_4_0
___________________________________________________________________
Name: bzr:revision-info
...skipped...
Name: bzr:revision-id:v3-trunk0
...skipped...

Modified: branches/SAMBA_4_0/source/auth/kerberos/krb5_init_context.c
===================================================================
--- branches/SAMBA_4_0/source/auth/kerberos/krb5_init_context.c 2007-12-07 
13:30:31 UTC (rev 26334)
+++ branches/SAMBA_4_0/source/auth/kerberos/krb5_init_context.c 2007-12-07 
16:04:17 UTC (rev 26335)
@@ -276,7 +276,8 @@
                        continue;
                }
 
-               status = socket_connect_ev(smb_krb5->sock, NULL, remote_addr, 
0, ev); 
+               status = socket_connect_ev(smb_krb5->sock, NULL, remote_addr, 
0, 
+                                          
lp_name_resolve_order(global_loadparm), ev); 
                if (!NT_STATUS_IS_OK(status)) {
                        talloc_free(smb_krb5);
                        continue;

Modified: branches/SAMBA_4_0/source/lib/socket/connect.c
===================================================================
--- branches/SAMBA_4_0/source/lib/socket/connect.c      2007-12-07 13:30:31 UTC 
(rev 26334)
+++ branches/SAMBA_4_0/source/lib/socket/connect.c      2007-12-07 16:04:17 UTC 
(rev 26335)
@@ -85,6 +85,7 @@
                                              struct socket_address *my_address,
                                              struct socket_address 
*server_address, 
                                              uint32_t flags,
+                                             const char **name_resolve_order,
                                              struct event_context *event_ctx)
 {
        struct composite_context *result;
@@ -206,10 +207,11 @@
 NTSTATUS socket_connect_ev(struct socket_context *sock,
                           struct socket_address *my_address,
                           struct socket_address *server_address, 
-                          uint32_t flags, struct event_context *ev)
+                          uint32_t flags, const char **name_resolve_order,
+                          struct event_context *ev)
 {
        struct composite_context *ctx;
        ctx = socket_connect_send(sock, my_address, 
-                                 server_address, flags, ev);
+                                 server_address, flags, name_resolve_order, 
ev);
        return socket_connect_recv(ctx);
 }

Modified: branches/SAMBA_4_0/source/lib/socket/connect_multi.c
===================================================================
--- branches/SAMBA_4_0/source/lib/socket/connect_multi.c        2007-12-07 
13:30:31 UTC (rev 26334)
+++ branches/SAMBA_4_0/source/lib/socket/connect_multi.c        2007-12-07 
16:04:17 UTC (rev 26335)
@@ -38,6 +38,8 @@
        int num_ports;
        uint16_t *ports;
 
+       const char **name_resolve_order;
+
        struct socket_context *sock;
        uint16_t result_port;
 
@@ -68,6 +70,7 @@
                                                    const char *server_address,
                                                    int num_server_ports,
                                                    uint16_t *server_ports,
+                                                   const char 
**name_resolve_order,
                                                    struct event_context 
*event_ctx)
 {
        struct composite_context *result;
@@ -87,6 +90,7 @@
        if (composite_nomem(multi->server_address, result)) goto failed;
 
        multi->num_ports = num_server_ports;
+       multi->name_resolve_order = str_list_copy(multi, name_resolve_order);
        multi->ports = talloc_array(multi, uint16_t, multi->num_ports);
        if (composite_nomem(multi->ports, result)) goto failed;
 
@@ -104,7 +108,7 @@
                struct composite_context *creq;
                make_nbt_name_client(&name, server_address);
                creq = resolve_name_send(&name, result->event_ctx,
-                                        
lp_name_resolve_order(global_loadparm));
+                                        name_resolve_order);
                if (composite_nomem(creq, result)) goto failed;
                composite_continue(result, creq, continue_resolve_name, result);
                return result;
@@ -157,7 +161,8 @@
        talloc_steal(state, state->sock);
 
        creq = socket_connect_send(state->sock, NULL, 
-                                  state->addr, 0, result->event_ctx);
+                                  state->addr, 0, multi->name_resolve_order, 
+                                  result->event_ctx);
        if (composite_nomem(creq, result)) return;
        talloc_steal(state, creq);
 
@@ -264,6 +269,7 @@
 NTSTATUS socket_connect_multi(TALLOC_CTX *mem_ctx,
                              const char *server_address,
                              int num_server_ports, uint16_t *server_ports,
+                             const char **name_resolve_order,
                              struct event_context *event_ctx,
                              struct socket_context **result,
                              uint16_t *result_port)
@@ -271,6 +277,7 @@
        struct composite_context *ctx =
                socket_connect_multi_send(mem_ctx, server_address,
                                          num_server_ports, server_ports,
+                                         name_resolve_order,
                                          event_ctx);
        return socket_connect_multi_recv(ctx, mem_ctx, result, result_port);
 }

Modified: branches/SAMBA_4_0/source/lib/socket/socket.h
===================================================================
--- branches/SAMBA_4_0/source/lib/socket/socket.h       2007-12-07 13:30:31 UTC 
(rev 26334)
+++ branches/SAMBA_4_0/source/lib/socket/socket.h       2007-12-07 16:04:17 UTC 
(rev 26335)
@@ -178,17 +178,21 @@
                                              struct socket_address *my_address,
                                              struct socket_address 
*server_address, 
                                              uint32_t flags,
+                                             const char **name_resolve_order,
                                              struct event_context *event_ctx);
 NTSTATUS socket_connect_recv(struct composite_context *ctx);
 NTSTATUS socket_connect_ev(struct socket_context *sock,
                           struct socket_address *my_address,
                           struct socket_address *server_address, 
-                          uint32_t flags, struct event_context *ev);
+                          uint32_t flags, 
+                          const char **name_resolve_order,
+                          struct event_context *ev);
 
 struct composite_context *socket_connect_multi_send(TALLOC_CTX *mem_ctx,
                                                    const char *server_address,
                                                    int num_server_ports,
                                                    uint16_t *server_ports,
+                                                   const char 
**name_resolve_order,
                                                    struct event_context 
*event_ctx);
 NTSTATUS socket_connect_multi_recv(struct composite_context *ctx,
                                   TALLOC_CTX *mem_ctx,
@@ -196,6 +200,7 @@
                                   uint16_t *port);
 NTSTATUS socket_connect_multi(TALLOC_CTX *mem_ctx, const char *server_address,
                              int num_server_ports, uint16_t *server_ports,
+                             const char **name_resolve_order,
                              struct event_context *event_ctx,
                              struct socket_context **result,
                              uint16_t *port);

Modified: branches/SAMBA_4_0/source/lib/socket/testsuite.c
===================================================================
--- branches/SAMBA_4_0/source/lib/socket/testsuite.c    2007-12-07 13:30:31 UTC 
(rev 26334)
+++ branches/SAMBA_4_0/source/lib/socket/testsuite.c    2007-12-07 16:04:17 UTC 
(rev 26335)
@@ -25,6 +25,7 @@
 #include "system/network.h"
 #include "lib/socket/netif.h"
 #include "torture/torture.h"
+#include "param/param.h"
 
 /*
   basic testing of udp routines
@@ -145,7 +146,7 @@
 
        torture_comment(tctx, "server port is %d\n", srv_addr->port);
 
-       status = socket_connect_ev(sock2, NULL, srv_addr, 0, ev);
+       status = socket_connect_ev(sock2, NULL, srv_addr, 0, 
lp_name_resolve_order(tctx->lp_ctx), ev);
        torture_assert_ntstatus_ok(tctx, status, "connect() on socket 2");
 
        status = socket_accept(sock1, &sock3);

Modified: branches/SAMBA_4_0/source/libcli/ldap/ldap_client.c
===================================================================
--- branches/SAMBA_4_0/source/libcli/ldap/ldap_client.c 2007-12-07 13:30:31 UTC 
(rev 26334)
+++ branches/SAMBA_4_0/source/libcli/ldap/ldap_client.c 2007-12-07 16:04:17 UTC 
(rev 26335)
@@ -352,7 +352,7 @@
                }
 
                ctx = socket_connect_send(conn->sock, NULL, unix_addr, 
-                                         0, conn->event.event_ctx);
+                                         0, 
lp_name_resolve_order(global_loadparm), conn->event.event_ctx);
                ctx->async.fn = ldap_connect_recv_unix_conn;
                ctx->async.private_data = state;
                return result;
@@ -365,7 +365,7 @@
                }
                
                ctx = socket_connect_multi_send(state, conn->host, 1, 
&conn->port,
-                                               conn->event.event_ctx);
+                                               
lp_name_resolve_order(global_loadparm), conn->event.event_ctx);
                if (ctx == NULL) goto failed;
 
                ctx->async.fn = ldap_connect_recv_tcp_conn;

Modified: branches/SAMBA_4_0/source/libcli/raw/clisocket.c
===================================================================
--- branches/SAMBA_4_0/source/libcli/raw/clisocket.c    2007-12-07 13:30:31 UTC 
(rev 26334)
+++ branches/SAMBA_4_0/source/libcli/raw/clisocket.c    2007-12-07 16:04:17 UTC 
(rev 26335)
@@ -96,6 +96,7 @@
 
        ctx = socket_connect_multi_send(state, host_addr,
                                        state->num_ports, state->ports,
+                                       lp_name_resolve_order(global_loadparm),
                                        state->ctx->event_ctx);
        if (ctx == NULL) goto failed;
        ctx->async.fn = smbcli_sock_connect_recv_conn;

Modified: branches/SAMBA_4_0/source/libcli/wrepl/winsrepl.c
===================================================================
--- branches/SAMBA_4_0/source/libcli/wrepl/winsrepl.c   2007-12-07 13:30:31 UTC 
(rev 26334)
+++ branches/SAMBA_4_0/source/libcli/wrepl/winsrepl.c   2007-12-07 16:04:17 UTC 
(rev 26335)
@@ -343,7 +343,8 @@
        if (composite_nomem(peer, result)) return result;
 
        state->creq = socket_connect_send(wrepl_socket->sock, us, peer,
-                                         0, wrepl_socket->event.ctx);
+                                         0, 
lp_name_resolve_order(global_loadparm), 
+                                         wrepl_socket->event.ctx);
        composite_continue(result, state->creq, wrepl_connect_handler, state);
        return result;
 }

Modified: branches/SAMBA_4_0/source/librpc/rpc/dcerpc_sock.c
===================================================================
--- branches/SAMBA_4_0/source/librpc/rpc/dcerpc_sock.c  2007-12-07 13:30:31 UTC 
(rev 26334)
+++ branches/SAMBA_4_0/source/librpc/rpc/dcerpc_sock.c  2007-12-07 16:04:17 UTC 
(rev 26335)
@@ -332,7 +332,8 @@
 
        talloc_steal(s->sock, s->socket_ctx);
 
-       conn_req = socket_connect_send(s->socket_ctx, NULL, s->server, 0, 
c->event_ctx);
+       conn_req = socket_connect_send(s->socket_ctx, NULL, s->server, 0, 
lp_name_resolve_order(global_loadparm), 
+                                      c->event_ctx);
        composite_continue(c, conn_req, continue_socket_connect, c);
        return c;
 }

Modified: branches/SAMBA_4_0/source/param/loadparm.c
===================================================================
--- branches/SAMBA_4_0/source/param/loadparm.c  2007-12-07 13:30:31 UTC (rev 
26334)
+++ branches/SAMBA_4_0/source/param/loadparm.c  2007-12-07 16:04:17 UTC (rev 
26335)
@@ -71,7 +71,7 @@
 static bool do_parameter(const char *, const char *, void *);
 static bool defaults_saved = false;
 
-/* 
+/**
  * This structure describes global (ie., server-wide) parameters.
  */
 struct loadparm_global
@@ -180,7 +180,7 @@
 };
 
 
-/* 
+/**
  * This structure describes a single service. 
  */
 struct loadparm_service

Reply via email to