nmbd does not start without smbd (fwd)

Andrew Tridgell tridge at samba.org
Sat Dec 5 00:34:56 GMT 1998


> nmbdprocess_logon.c, SAMQUERY.

I presume you mean nmbd_processlogon.c, SAMLOGON ?

in that case I think the solution is very simple. Delete that code!
I did that once before, I wonder why it was put back?

Basically the code looks at the username in the SAMLOGON query and
either returns (ie. doesn't answer the SAMLOGON query) or answers
it. In particular it does this:

    if (!user_exists(user)) {
       ... log a warning ...
       return;
    }

    if (account_disabled(user)) {
       ... log a warning ...
       return;
    }

    send_reply();
    return;


The important point is that the answer doesn't need to know any info
from the password database.

So, we change the code to just skip the two user tests. If we are a
logon server for a domain then we _always_ answer the SAMLOGON
query no matter what username it's for. If the user doesn't exist then
the normal logon processing on port 139 (ie. via smbd) will fail. 

Is there any conceivable situation where this is wrong?

> bit of a bind, really.

not at all. What concerns me is that I remember fixing this months
ago. Why the heck did someone put that code back in?


More information about the samba-technical mailing list