Prepending "\" to user name w/Win98 Domain Login
Jeff Mandel
jeff.mandel at probes.com
Sun Aug 11 11:02:00 GMT 2002
Using samba as a PDC, logins from win98 don't seem to send a domain name
with the user name when using a domain login. As a result, there's some
kind of null domain which causes a leading slash to be prepended to the
user name. I believe this is the separator character of <domain>\<user>
syntax.
If the domain is somhow blank, as shown in Domain=[], I would expect the
user name to just be <user> not <\user>, which fails login every time
:) Works OK on win2K.
[2002/08/11 12:21:44, 3] smbd/sec_ctx.c:set_sec_ctx(314)
setting sec ctx (0, 0) - sec_ctx_stack_ndx = 0
[2002/08/11 12:21:44, 3] smbd/reply.c:reply_sesssetup_and_X(858)
Domain=[] NativeOS=[Windows 4.0] NativeLanMan=[Windows 4.0]
[2002/08/11 12:21:44, 3] smbd/reply.c:reply_sesssetup_and_X(868)
sesssetupX:name=[JEFF]
[2002/08/11 12:21:44, 3] smbd/reply.c:reply_sesssetup_and_X(929)
Using unix username \JEFF
[2002/08/11 12:21:44, 2] smbd/reply.c:reply_sesssetup_and_X(982)
Defaulting to Lanman password for \jeff
[2002/08/11 12:21:44, 1] smbd/password.c:pass_check_smb(545)
Couldn't find user '\jeff' in passdb.
[2002/08/11 12:21:44, 1] smbd/reply.c:reply_sesssetup_and_X(998)
Rejecting user '\jeff': authentication failed
[2002/08/11 12:21:44, 3] smbd/error.c:error_packet(91)
error string = No such file or directory
[2002/08/11 12:21:44, 3] smbd/error.c:error_packet(126)
error packet at smbd/reply.c(1000) cmd=115 (SMBsesssetupX) eclass=2
ecode=2
[2002/08/11 12:21:44, 3] smbd/process.c:timeout_processing(1102)
end of file from client
[2002/08/11 12:21:44, 3] smbd/sec_ctx.c:set_sec_ctx(314)
setting sec ctx (0, 0) - sec_ctx_stack_ndx = 0
[2002/08/11 12:21:44, 2] smbd/server.c:exit_server(461)
Closing connections
[2002/08/11 12:21:44, 3] smbd/connection.c:yield_connection(48)
Yielding connection to
[2002/08/11 12:21:44, 3] smbd/server.c:exit_server(495)
Server exit (normal exit)
I made a change to reply.c in 2.2.2, but the funcion has been changed
and no longer take two args.
root at mp5# diff reply.c reply.c.orig
737,739c737
< DEBUG(3,("Not PROTOCOL_NT1 user=[%s]\n", user));
< pstrcpy(user,dos_to_unix(user,False));
< DEBUG(3,("Not PROTOCOL_NT1 dos_to_unix user=[%s]\n", user));
---
> pstrcpy(user,dos_to_unix(user,False));
744,746d741
<
<
<
927d921
< DEBUG(3,("Using username %s\n", user));
930d923
< DEBUG(3,("Using dom_user %s\n", dom_user));
932c925
< if (sys_getpwnam(dom_user) != NULL && strlen(domain) > 0 ) {
---
> if (sys_getpwnam(dom_user) != NULL) {
Ideas?
Thanks,
Jeff
More information about the samba-technical
mailing list