[SCM] Samba Shared Repository - branch v3-2-test updated - initial-v3-2-unstable-117-gf982774

Jeremy Allison jra at samba.org
Fri Oct 26 01:12:11 GMT 2007


The branch, v3-2-test has been updated
       via  f982774c8d95c48355bbd821c8224fadb8bb303e (commit)
      from  a13e8bd39de978d69666b8aeb884d943885a3605 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-2-test


- Log -----------------------------------------------------------------
commit f982774c8d95c48355bbd821c8224fadb8bb303e
Author: Jeremy Allison <jra at samba.org>
Date:   Thu Oct 25 18:11:29 2007 -0700

    Fixed missing in_addr -> sockaddr_storage conversion (how did
    I miss this...).
    Jeremy.

-----------------------------------------------------------------------

Summary of changes:
 source/utils/smbtree.c |   24 ++++++++++++++----------
 1 files changed, 14 insertions(+), 10 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/utils/smbtree.c b/source/utils/smbtree.c
index 0974039..0e0c993 100644
--- a/source/utils/smbtree.c
+++ b/source/utils/smbtree.c
@@ -70,7 +70,7 @@ static void add_name(const char *machine_name, uint32 server_type,
 static bool get_workgroups(struct user_auth_info *user_info)
 {
         struct cli_state *cli;
-        struct in_addr server_ip;
+        struct sockaddr_storage server_ss;
 	pstring master_workgroup;
 
         /* Try to connect to a #1d name of our current workgroup.  If that
@@ -79,22 +79,24 @@ static bool get_workgroups(struct user_auth_info *user_info)
 
 	pstrcpy(master_workgroup, lp_workgroup());
 
-        if (!use_bcast && !find_master_ip(lp_workgroup(), &server_ip)) {
+        if (!use_bcast && !find_master_ip(lp_workgroup(), &server_ss)) {
                 DEBUG(4, ("Unable to find master browser for workgroup %s, falling back to broadcast\n", 
 			  master_workgroup));
 				use_bcast = True;
 		} else if(!use_bcast) {
-        	if (!(cli = get_ipc_connect(inet_ntoa(server_ip), &server_ip, user_info)))
+			char addr[INET6_ADDRSTRLEN];
+			print_sockaddr(addr, sizeof(addr), &server_ss);
+			if (!(cli = get_ipc_connect(addr, &server_ss, user_info)))
 				return False;
 		}
-		
+
 		if (!(cli = get_ipc_connect_master_ip_bcast(master_workgroup, user_info))) {
 			DEBUG(4, ("Unable to find master browser by "
 				  "broadcast\n"));
 			return False;
         }
 
-        if (!cli_NetServerEnum(cli, master_workgroup, 
+        if (!cli_NetServerEnum(cli, master_workgroup,
                                SV_TYPE_DOMAIN_ENUM, add_name, &workgroups))
                 return False;
 
@@ -106,27 +108,29 @@ static bool get_workgroups(struct user_auth_info *user_info)
 static bool get_servers(char *workgroup, struct user_auth_info *user_info)
 {
         struct cli_state *cli;
-        struct in_addr server_ip;
+        struct sockaddr_storage server_ss;
+	char addr[INET6_ADDRSTRLEN];
 
         /* Open an IPC$ connection to the master browser for the workgroup */
 
-        if (!find_master_ip(workgroup, &server_ip)) {
+        if (!find_master_ip(workgroup, &server_ss)) {
                 DEBUG(4, ("Cannot find master browser for workgroup %s\n",
                           workgroup));
                 return False;
         }
 
-        if (!(cli = get_ipc_connect(inet_ntoa(server_ip), &server_ip, user_info)))
+	print_sockaddr(addr, sizeof(addr), &server_ss);
+        if (!(cli = get_ipc_connect(addr, &server_ss, user_info)))
                 return False;
 
-        if (!cli_NetServerEnum(cli, workgroup, SV_TYPE_ALL, add_name, 
+        if (!cli_NetServerEnum(cli, workgroup, SV_TYPE_ALL, add_name,
                                &servers))
                 return False;
 
         return True;
 }
 
-static bool get_rpc_shares(struct cli_state *cli, 
+static bool get_rpc_shares(struct cli_state *cli,
 			   void (*fn)(const char *, uint32, const char *, void *),
 			   void *state)
 {


-- 
Samba Shared Repository


More information about the samba-cvs mailing list