[SCM] Samba Shared Repository - branch master updated

Jeremy Allison jra at samba.org
Mon Nov 9 13:45:40 MST 2009


The branch, master has been updated
       via  5d51618... Fix bug 6880 - cannot list workgroup servers reported by Alban Browaeys <prahal at yahoo.com> with fix. Revert 2e989bab0764c298a2530a2d4c8690258eba210c with extra comments - this broke workgroup enumeration. Jeremy.
      from  d7ce873... s3-netlogon: enable RPC-NETLOGON-ADMIN test against s3.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 5d516181617419b9b078b4f375753afc3b785ced
Author: Jeremy Allison <jra at samba.org>
Date:   Mon Nov 9 12:44:47 2009 -0800

    Fix bug 6880 - cannot list workgroup servers
    reported by Alban Browaeys <prahal at yahoo.com> with fix.
    Revert 2e989bab0764c298a2530a2d4c8690258eba210c
    with extra comments - this broke workgroup enumeration.
    Jeremy.

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

Summary of changes:
 source3/libsmb/libsmb_dir.c |   19 ++++++++++++++-----
 1 files changed, 14 insertions(+), 5 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/libsmb/libsmb_dir.c b/source3/libsmb/libsmb_dir.c
index 436b3e8..6a4613c 100644
--- a/source3/libsmb/libsmb_dir.c
+++ b/source3/libsmb/libsmb_dir.c
@@ -617,7 +617,11 @@ SMBC_opendir_ctx(SMBCCTX *context,
                             !is_ipaddress(server) &&
 			    (resolve_name(server, &rem_ss, 0x1d, false) ||   /* LMB */
                              resolve_name(server, &rem_ss, 0x1b, false) )) { /* DMB */
-
+				/*
+				 * "server" is actually a workgroup name,
+				 * not a server. Make this clear.
+				 */
+				char *wgroup = server;
 				fstring buserver;
 
 				dir->dir_type = SMBC_SERVER;
@@ -625,12 +629,17 @@ SMBC_opendir_ctx(SMBCCTX *context,
 				/*
 				 * Get the backup list ...
 				 */
-				if (!name_status_find(server, 0x20, 0x20,
+				if (!name_status_find(wgroup, 0, 0,
                                                       &rem_ss, buserver)) {
+					char addr[INET6_ADDRSTRLEN];
 
+					print_sockaddr(addr, sizeof(addr), &rem_ss);
                                         DEBUG(0,("Could not get name of "
-                                                 "local/domain master browser "
-                                                 "for server %s\n", server));
+                                                "local/domain master browser "
+                                                "for workgroup %s from "
+						"address %s\n",
+						wgroup,
+						addr));
 					if (dir) {
 						SAFE_FREE(dir->fname);
 						SAFE_FREE(dir);
@@ -663,7 +672,7 @@ SMBC_opendir_ctx(SMBCCTX *context,
 				dir->srv = srv;
 
 				/* Now, list the servers ... */
-				if (!cli_NetServerEnum(srv->cli, server,
+				if (!cli_NetServerEnum(srv->cli, wgroup,
                                                        0x0000FFFE, list_fn,
 						       (void *)dir)) {
 


-- 
Samba Shared Repository


More information about the samba-cvs mailing list