[jcifs] RE: Can't grab browse list using 0.7.3.

Allen, Michael B (RSCH) Michael_B_Allen at ml.com
Thu Apr 3 09:53:06 EST 2003

Do you have OMEGA in your hosts file? Where is it getting that? What
example/arguments are you using?


> -----Original Message-----
> From:	Christopher R. Hertel [SMTP:crh at ubiqx.mn.org]
> Sent:	Tuesday, April 01, 2003 1:35 AM
> To:	Allen, Michael B (RSCH)
> Cc:	jcifs at samba.org
> Subject:	Can't grab browse list using 0.7.3.
> Mike,
> I've run across a little problem with 0.7.4.
> I'm trying to grab the browse list (NetServeEnum2) using jCIFS.  The LMB
> is currently a W98 box (OMEGA) and the workgroup name is UBIQX.
> JCIFS succeeds in finding the W98 box (Omega) and tries to connect with
> it.
> - It tries the workgroup name as a server service name first
>   (UBIQX#20--not sure why it does this but, of course, it fails).
> - It tries *SMBSERVER#20 second (which won't work on a W9x box, because
>   they don't support the *SMBSERVER name).
> - Then it tries the workgroup name as a server name again (UBIQX#20).
> It never tries connecting to OMEGA#20, so it always gets a CALLED NAME NOT
> PRESENT error, which throws an exception:
> Exception in thread "main" jcifs.smb.SmbException: Failed to establish 
> session with UBIQX<1D>/
> 	at jcifs.smb.SmbTransport.send(SmbTransport.java:476)
> 	at jcifs.smb.SmbTransport.negotiate(SmbTransport.java:664)
> 	at jcifs.smb.SmbTree.treeConnect(SmbTree.java:116)
> 	at jcifs.smb.SmbFile.connect(SmbFile.java:514)
> 	at jcifs.smb.SmbFile.connect0(SmbFile.java:484)
> 	at jcifs.smb.SmbFile.list(SmbFile.java:1082)
> 	at List.main(List.java:13)
> I've attached a quick capture (which will probably be filtered out by the 
> mailing list software so I'm sending directly in parallel).
> Packets 1 through 23 show Samba's smbclient doing its thing.  Note that it
> connects to OMEGA#20, which works (but then the way smbclient works you 
> have to give it the correct CALLED NAME).  That part is just there to show 
> that the browse system is working correctly.
> Packets 24..49 show the following:
> - jCIFS queries for UBIQX#1D and UBIQX#20.
> - There's a positive response for UBIQX#1D.  No response for UBIQX#20, but 
>   only one query is sent.  There really should be three queries sent when 
>   resolving a name, since UDP is considered unreliable.
> - We try to create a session with UBIQX#20.  If the name didn't 
>   resolve, why do this?
> - We try again using *SMBSERVER#20.  Windows9x doesn't like that name so 
>   that fails too.
> - An Node Status query is sent.  The results list OMEGA#20 as the only 
>   type 20 name.
> - We try UBIQX#20 again.
> Ouch.
> Annoyingly, this will all work against a Samba server, WindowsNT, or W2K.
> Samba doesn't pay any attention to the CALLED NAME, and the NT family will 
> accept *SMBSERVER#20.
> There are two problems that I am seeing here.  The first is that we're
> using the <workgroup>#20 name even though there wasn't a positive name
> response for that name.  The second is that <workgroup>#20 is still being
> used after the the Node Status query returns.  In both cases, it looks as
> though something is stuck.
> I'm also debating in my mind whether it makes sense to stop querying for
> one name (eg. UBIQX#20) when the other name (UBIQX#1D) gets a response.  
> In general, once you've gotten *any* response for this kind of query, you
> have *the* response you wanted.  The only time it's a problem is in the 
> case of the misconfigured network.  In that case, given that UDP is 
> considered unreliable, you *could* get different results each time you 
> try to resolve a URL like: smb://<name>/
> I hate misconfigured networks.  Note, however, that WindowsXP doesn't 
> register the <workgroup>#00 name, which makes this kind of 
> misconfiguration easier to set up.
> Chris -)-----
> -- 
> Samba Team -- http://www.samba.org/     -)-----   Christopher R. Hertel
> jCIFS Team -- http://jcifs.samba.org/   -)-----   ubiqx development, uninq.
> ubiqx Team -- http://www.ubiqx.org/     -)-----   crh at ubiqx.mn.org
> OnLineBook -- http://ubiqx.org/cifs/    -)-----   crh at ubiqx.org << File: jcifs-gets-browselist.cap >> 

More information about the jcifs mailing list