svn commit: samba r2698 - in trunk/source/smbd: .

jmcd at samba.org jmcd at samba.org
Mon Sep 27 17:17:42 GMT 2004


Author: jmcd
Date: 2004-09-27 17:17:42 +0000 (Mon, 27 Sep 2004)
New Revision: 2698

WebSVN: http://websvn.samba.org/websvn/changeset.php?rep=samba&path=/trunk/source/smbd&rev=2698&nolog=1

Log:
Fix for bugzilla #1732, patch by Satoh Fumiyasu, fumiya at samba.gr.jp
 
Limit share names returned by RAP based on windows character width, not unix
character width.


Modified:
   trunk/source/smbd/lanman.c


Changeset:
Modified: trunk/source/smbd/lanman.c
===================================================================
--- trunk/source/smbd/lanman.c	2004-09-27 17:07:28 UTC (rev 2697)
+++ trunk/source/smbd/lanman.c	2004-09-27 17:17:42 UTC (rev 2698)
@@ -1501,10 +1501,12 @@
   if (!check_share_info(uLevel,str2)) return False;
   
   data_len = fixed_len = string_len = 0;
-  for (i=0;i<count;i++)
+  for (i=0;i<count;i++) {
+    fstring servicename_dos;
+    push_ascii_fstring(servicename_dos, lp_servicename(i));
     if( lp_browseable( i )
         && lp_snum_ok( i )
-        && (strlen( lp_servicename( i ) ) < 13) )   /* Maximum name length. */
+        && (strlen(servicename_dos) < 13) )   /* Maximum name length. */
     {
       total++;
       data_len += fill_share_info(conn,i,uLevel,0,&f_len,0,&s_len,0);
@@ -1517,6 +1519,7 @@
       else
         missed = True;
     }
+  }
   *rdata_len = fixed_len + string_len;
   *rdata = REALLOC(*rdata,*rdata_len);
   memset(*rdata,0,*rdata_len);
@@ -1527,9 +1530,11 @@
   s_len = string_len;
   for( i = 0; i < count; i++ )
     {
+    fstring servicename_dos;
+    push_ascii_fstring(servicename_dos, lp_servicename(i));
     if( lp_browseable( i )
         && lp_snum_ok( i )
-        && (strlen( lp_servicename( i ) ) < 13) )
+        && (strlen(servicename_dos) < 13) )
       {
       if( fill_share_info( conn,i,uLevel,&p,&f_len,&p2,&s_len,*rdata ) < 0 )
  	break;



More information about the samba-cvs mailing list