--- LinNeighborhood-0.6.5/src/smbbrowse.c.smb3 2002-06-09 09:58:43.000000000 +0200 +++ LinNeighborhood-0.6.5/src/smbbrowse.c 2004-02-11 01:20:13.572021136 +0100 @@ -834,12 +834,10 @@ cArg[argcount++] = "-U"; cArg[argcount++] = wins_name; cArg[argcount++] = "-R"; - cArg[argcount++] = group_type; } else { cArg[argcount++] = "-M"; - cArg[argcount++] = group_name; } cArg[argcount++] = "-S"; cArg[argcount++] = "-d1"; @@ -847,6 +845,15 @@ { cArg[argcount++] = cAddArg[loop]; } + cArg[argcount++] = "--"; + if ( *wins_name ) + { + cArg[argcount++] = group_type; + } + else + { + cArg[argcount++] = group_name; + } cArg[argcount++] = NULL; execvp(pref_get_nmblookup_exe(), cArg); @@ -871,9 +878,9 @@ else { if (*wins_name) - sprintf(logstr,"GetSMBGroups:%s -U %s -R %s -S -d1",pref_get_nmblookup_exe(),wins_name,group_type); + sprintf(logstr,"GetSMBGroups:%s -U %s -R -S -d1 -- %s",pref_get_nmblookup_exe(),wins_name,group_type); else - sprintf(logstr,"GetSMBGroups:%s -M %s -S -d1",pref_get_nmblookup_exe(),group_name); + sprintf(logstr,"GetSMBGroups:%s -M -S -d1 -- %s",pref_get_nmblookup_exe(),group_name); for ( loop = 0; loop < add_argcount; loop++ ) { string_ncat(logstr, " ", MAXLOGSTRLEN); --- LinNeighborhood-0.6.5/src/smbmount.c.smb3 2002-06-09 09:58:43.000000000 +0200 +++ LinNeighborhood-0.6.5/src/smbmount.c 2004-02-11 01:44:38.559309216 +0100 @@ -390,14 +390,19 @@ escape_str(smbuser,&strlist),escape_str(smbpasswd,&strlist)); break; case SMBMOUNT_206: - sprintf(commandstr,"%s %s %s -o username=%s%%%s,fmask=%d,dmask=%d,uid=%d,gid=%d,ip=%s,debug=0%s", + sprintf(commandstr,"%s %s %s -o username=%s%%%s,fmask=%d,dmask=%d,uid=%d,gid=%d,debug=0%s", escape_str(pref_get_smbmount_exe(),&strlist),escape_str(servicename,&strlist),escape_str(mount_point,&strlist), escape_str(smbuser,&strlist),escape_str(smbpasswd,&strlist), - filemode,dirmode,uid,gid,ipaddr,opt_group); + filemode,dirmode,uid,gid,opt_group); if ( (port >= 0) && (port < 65536) ) { sprintf(commandstr, "%s,port=%d", commandstr, port); } + if (strcmp(ipaddr,"")) + { + string_ncat(commandstr, ",ip=", MAXMNTCOMMANDL); + string_ncat(commandstr, ipaddr, MAXMNTCOMMANDL); + } if ( !is_empty_string(pref.v.smbmount_arg) ) { if ( pref.v.smbmount_arg[0] != ',' ) @@ -485,8 +490,8 @@ { argv[++argnr]="-o"; argv[++argnr]=commandstr; - sprintf(commandstr,"username=%s%%%s,fmask=%d,dmask=%d,uid=%d,gid=%d,ip=%s,debug=0", - smbuser,smbpasswd,filemode,dirmode,uid,gid,ipaddr); + sprintf(commandstr,"username=%s%%%s,fmask=%d,dmask=%d,uid=%d,gid=%d,debug=0", + smbuser,smbpasswd,filemode,dirmode,uid,gid); if (*group_name) { strcat(commandstr,",workgroup="); @@ -497,6 +502,11 @@ string_ncat(commandstr, ",port=", MAXMNTCOMMANDL); string_ncat(commandstr, port_str, MAXMNTCOMMANDL); } + if (strcmp(ipaddr,"")) + { + string_ncat(commandstr, ",ip=", MAXMNTCOMMANDL); + string_ncat(commandstr, ipaddr, MAXMNTCOMMANDL); + } if ( !is_empty_string(pref.v.smbmount_arg) ) { if ( pref.v.smbmount_arg[0] != ',' ) @@ -573,14 +583,19 @@ pref_get_smbmount_exe(),servicename,mount_point,ipaddr,opt_group,smbuser,dummysmbpasswd); break; case SMBMOUNT_206: - sprintf(commandstr,"%s %s %s -o username=%s%%%s,fmask=%d,dmask=%d,uid=%d,gid=%d,ip=%s,debug=0%s", + sprintf(commandstr,"%s %s %s -o username=%s%%%s,fmask=%d,dmask=%d,uid=%d,gid=%d,debug=0%s", pref_get_smbmount_exe(),servicename,mount_point,smbuser,dummysmbpasswd, - filemode,dirmode,uid,gid,ipaddr,opt_group); + filemode,dirmode,uid,gid,opt_group); if ( (port >= 0) && (port < 65536) ) { string_ncat(commandstr, ",port=", MAXMNTCOMMANDL); string_ncat(commandstr, port_str, MAXMNTCOMMANDL); } + if (strcmp(ipaddr,"")) + { + string_ncat(commandstr, ",ip=", MAXMNTCOMMANDL); + string_ncat(commandstr, ipaddr, MAXMNTCOMMANDL); + } if ( !is_empty_string(pref.v.smbmount_arg) ) { if ( pref.v.smbmount_arg[0] != ',' ) @@ -621,8 +636,8 @@ sprintf(userpasswd,"-U%s%%%s",smbuser,dummysmbpasswd); else { - sprintf(commandstr,"username=%s%%%s,fmask=%d,dmask=%d,uid=%d,gid=%d,ip=%s,debug=0", - smbuser,dummysmbpasswd,filemode,dirmode,uid,gid,ipaddr); + sprintf(commandstr,"username=%s%%%s,fmask=%d,dmask=%d,uid=%d,gid=%d,debug=0", + smbuser,dummysmbpasswd,filemode,dirmode,uid,gid); if (*group_name){ strcat(commandstr,",workgroup="); strcat(commandstr,group_name); @@ -632,6 +647,11 @@ string_ncat(commandstr, ",port=", MAXMNTCOMMANDL); string_ncat(commandstr, port_str, MAXMNTCOMMANDL); } + if (strcmp(ipaddr,"")) + { + string_ncat(commandstr, ",ip=", MAXMNTCOMMANDL); + string_ncat(commandstr, ipaddr, MAXMNTCOMMANDL); + } if ( !is_empty_string(pref.v.smbmount_arg) ) { if ( pref.v.smbmount_arg[0] != ',' )