diff options
-rw-r--r-- | docs/docbook/manpages/findsmb.1.sgml | 19 | ||||
-rwxr-xr-x | source3/script/findsmb.in | 21 |
2 files changed, 29 insertions, 11 deletions
diff --git a/docs/docbook/manpages/findsmb.1.sgml b/docs/docbook/manpages/findsmb.1.sgml index fb953b9f25..a246b162b1 100644 --- a/docs/docbook/manpages/findsmb.1.sgml +++ b/docs/docbook/manpages/findsmb.1.sgml @@ -40,6 +40,15 @@ <variablelist> <varlistentry> + <term>-r</term> + <listitem><para>Controls whether <command>findsmb</command> takes + bugs in Windows95 into account when trying to find a Netbios name + registered of the remote machine. This option is disabled by default + because it is specific to Windows 95 and Windows 95 machines only. + If set, <ulink url="nmblookup.1.html"><command>nmblookup</command></ulink> + will be called with <constant>-B<constant> option.</para></listitem> + </varlistentry> + <varlistentry> <term>subnet broadcast address</term> <listitem><para>Without this option, <command>findsmb </command> will probe the subnet of the machine where @@ -66,15 +75,17 @@ not show any information about the operating system or server version.</para> - <para>The command must be run on a system without <ulink + <para>The command with <constant>-r</constant> option + must be run on a system without <ulink url="nmbd.8.html"><command>nmbd</command></ulink> running. If <command>nmbd</command> is running on the system, you will only get the IP address and the DNS name of the machine. To get proper responses from Windows 95 and Windows 98 machines, - the command must be run as root. </para> + the command must be run as root and with <constant>-r</constant> + option on a machine without <command>nmbd</command> running.</para> - <para>For example, running <command>findsmb</command> on a machine - without <command>nmbd</command> running would yield output similar + <para>For example, running <command>findsmb</command> without + <constant>-r</constant> option set would yield output similar to the following</para> <screen><computeroutput> diff --git a/source3/script/findsmb.in b/source3/script/findsmb.in index d2aa94591b..5ca1d8082a 100755 --- a/source3/script/findsmb.in +++ b/source3/script/findsmb.in @@ -5,7 +5,7 @@ # run as root to get correct info from WIN95 clients. # # syntax: -# findsmb [subnet broadcast address] +# findsmb [-d|-D] [-r] [subnet broadcast address] # # with no agrument it will list machines on the current subnet # @@ -13,21 +13,28 @@ # local master browsers for that workgroup. There will be an "*" in front # of the workgroup name for machines that are the domain master browser for # that workgroup. +# +# Options: +# +# -d|-D enable debug +# -r add -r option to nmblookup when finding netbios name # $SAMBABIN = "@prefix@/bin"; -for ($i = 0; $i < 2; $i++) { # test for -d option and broadcast address +for ($i = 0; $i < 2; $i++) { # test for -d and -r options $_ = shift; if (m/-d|-D/) { $DEBUG = 1; - } else { - if ($_) { - $BCAST = "-B $_"; - } + } else (m/-r/) { + $R_OPTION = "-r"; } } +if ($_) { # set broadcast address if it was specified + $BCAST = "-B $_"; +} + sub ipsort # do numeric sort on last field of IP address { @t1 = split(/\./,$a); @@ -56,7 +63,7 @@ foreach $ip (@ipaddrs) # loop through each IP address found # find the netbios names registered by each machine - open(NMBLOOKUP,"$SAMBABIN/nmblookup -r -A $ip|") || + open(NMBLOOKUP,"$SAMBABIN/nmblookup $R_OPTION -A $ip|") || die("Can't get nmb name list.\n"); @nmblookup = <NMBLOOKUP>; close NMBLOOKUP; |