Hi Derrell, smbclient (svn version 19167) does not request all optimal smb dialects during negprot - here "LANMAN2.1" is not offered for negotiation (OS/2 related) Steve French dropped me a note about this - and I must agree. smbclient is using "DOS LANMAN2.1" only - but not "LANMAN2.1" - as a protocol string. As already discussed on irc, both might have valid historical backgrounds... - but in the OS/2 case the older "LM1.2X002" dialect is choosen sub-optimal. I'll send 2 sniffs - smbclient_warpserver50_negprot_not-optimal-dialect.cap - smbclient_warpserver50_negprot_OK_smbclient-source-modified.cap In the first case dialect index 4 is used, in the 2nd one index 5! In the 2nd case I modified cliconnect.c: (replaced "DOS LANMAN2.1" with "LANMAN2.1") static const struct { int prot; const char *name; } prots[] = { {PROTOCOL_CORE,"PC NETWORK PROGRAM 1.0"}, {PROTOCOL_COREPLUS,"MICROSOFT NETWORKS 1.03"}, {PROTOCOL_LANMAN1,"MICROSOFT NETWORKS 3.0"}, {PROTOCOL_LANMAN1,"LANMAN1.0"}, {PROTOCOL_LANMAN2,"LM1.2X002"}, {PROTOCOL_LANMAN2,"LANMAN2.1"}, {PROTOCOL_LANMAN2,"Samba"}, {PROTOCOL_NT1,"NT LANMAN 1.0"}, {PROTOCOL_NT1,"NT LM 0.12"}, {-1,NULL} }; As already discussed on irc, both variants might be valid. Cheers, Guenter btw - I dropped the sniffs against win98SE - it is using "NT LM 0.12".
Created attachment 2179 [details] dialect index 4 had to be used here
Created attachment 2180 [details] smbclient source modified - OK now. Dialect index 5 is used now.
Jeremy, please check this. On the assumption that we're not absolutely sure that "DOS LANMAN2.1" is never seen in the wild, I opted to add a new protocol option string rather than "fixing" the existing one. Do you see any problem with this approach? Derrell Index: libsmb/cliconnect.c =================================================================== --- libsmb/cliconnect.c (revision 19230) +++ libsmb/cliconnect.c (working copy) @@ -33,6 +33,7 @@ {PROTOCOL_LANMAN1,"LANMAN1.0"}, {PROTOCOL_LANMAN2,"LM1.2X002"}, {PROTOCOL_LANMAN2,"DOS LANMAN2.1"}, + {PROTOCOL_LANMAN2,"LANMAN2.1"}, {PROTOCOL_LANMAN2,"Samba"}, {PROTOCOL_NT1,"NT LANMAN 1.0"}, {PROTOCOL_NT1,"NT LM 0.12"},
No this looks correct to me. Please commit. Jeremy.
Should be fixed by check-in 19250. Derrell
(In reply to comment #5) > Should be fixed by check-in 19250. And is not in SAMBA_3_0_23.