The branch, v3-4-test has been updated
       via  6be57c3... Fix bug 6880 - cannot list workgroup servers reported by 
Alban Browaeys <[email protected]> with fix. Revert 
2e989bab0764c298a2530a2d4c8690258eba210c with extra comments - this broke 
workgroup enumeration. Jeremy.
      from  c59898d... s3: Fix Bug #6869: Various annoying build warnings.

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


- Log -----------------------------------------------------------------
commit 6be57c378c0dbc4c4ab732fffee0d6a74011fd14
Author: Jeremy Allison <[email protected]>
Date:   Mon Nov 9 10:45:50 2009 -0800

    Fix bug 6880 - cannot list workgroup servers reported by Alban Browaeys 
<[email protected]> 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 44ecfce..143c61c 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) ||   /* LMB */
                              resolve_name(server, &rem_ss, 0x1b) )) { /* 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 fro m"
+                                               "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

Reply via email to