]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
I got sick of the debate with luke about the SID and nmbd so I just
authorAndrew Tridgell <tridge@samba.org>
Wed, 9 Dec 1998 06:21:59 +0000 (06:21 +0000)
committerAndrew Tridgell <tridge@samba.org>
Wed, 9 Dec 1998 06:21:59 +0000 (06:21 +0000)
went ahead and removed the offending code from nmbd_processlogon().
If luke ever goes back to that dark alley and manages to find the nmbd
packet type which needs a SID in the reply then we can reconsider.

This also means we don't need the password database code linked into
nmbd, which is a blessing, and nmbd will startup without smbd.

while I'm looking at this, why do RPCTORTURE_OBJ and RPCCLIENT_OBJ
include the password database code? Maybe Luke just likes that code a
lot and wants it in as many binaries as possible :)

source/Makefile.in
source/nmbd/nmbd.c
source/nmbd/nmbd_processlogon.c

index 6dd30e568fd71d37b0345192fd5a1028fe6ce191..ded8da71359da244b5543f4d3f045a1a344b2ad5 100644 (file)
@@ -169,7 +169,7 @@ NMBD_OBJ1 = nmbd/asyncdns.o nmbd/nmbd.o nmbd/nmbd_become_dmb.o \
             nmbd/nmbd_workgroupdb.o nmbd/nmbd_synclists.o
 
 NMBD_OBJ = $(NMBD_OBJ1) $(PARAM_OBJ) $(LIBSMB_OBJ) $(UBIQX_OBJ) \
-           $(PASSDB_OBJ) $(LIB_OBJ)
+           $(LIB_OBJ)
 
 SWAT_OBJ = web/cgi.o web/diagnose.o web/startstop.o web/statuspage.o \
            web/swat.o $(LIBSMB_OBJ) $(LOCKING_OBJ) \
index d7ce42dae2422fc10555632f6249c960f2fe5184..33c4a5882c4277e255f0841cbb9b3fa82fdf6694 100644 (file)
@@ -567,9 +567,6 @@ static void usage(char *pname)
 
   charset_initialise();
 
-  if(!initialize_password_db())
-    exit(1);
-
 #ifdef LMHOSTSFILE
   pstrcpy( host_file, LMHOSTSFILE );
 #endif
index 3f519ecfc94d4247368e0813fe9d65945fe82663..428106834128814dd5057bc81a508c48b05c7887 100644 (file)
@@ -44,7 +44,6 @@ void process_logon_packet(struct packet_struct *p,char *buf,int len,
   pstring outbuf;
   int code;
   uint16 token = 0;
-
   uint32 ntversion;
   uint16 lmnttoken;
   uint16 lm20token;
@@ -53,7 +52,6 @@ void process_logon_packet(struct packet_struct *p,char *buf,int len,
   char *uniuser; /* Unicode user name. */
   pstring ascuser;
   char *unicomp; /* Unicode computer name. */
-  struct smb_passwd *smb_pass; /* To check if machine account exists */
 
   memset(outbuf, 0, sizeof(outbuf));
 
@@ -196,7 +194,8 @@ reporting %s domain %s 0x%x ntversion=%x lm_nt token=%x lm_20 token=%x\n",
       DEBUG(3,("process_logon_packet: SAMLOGON sidsize %d ntv %d\n", domainsidsize, ntversion));
 
       /*
-       * If MACHINE$ is in our password database then respond, else ignore.
+       * we respond regadless of whether the machine is in our password 
+       * database. If it isn't then we let smbd send an appropriate error.
        * Let's ignore the SID.
        */
 
@@ -206,26 +205,9 @@ reporting %s domain %s 0x%x ntversion=%x lm_nt token=%x lm_20 token=%x\n",
       fstrcpy(reply_name,"\\\\"); /* Here it wants \\LOGONSERVER. */
       fstrcpy(reply_name+2,my_name); 
 
-      smb_pass = getsmbpwnam(ascuser);
-
-      if(!smb_pass )
-      {
-        DEBUG(3,("process_logon_packet: SAMLOGON request from %s(%s) for %s, not in password file\n",
-           unistr(unicomp),inet_ntoa(p->ip), ascuser));
-        return;
-      }
-      else if(smb_pass->acct_ctrl & ACB_DISABLED)
-      {
-        DEBUG(3,("process_logon_packet: SAMLOGON request from %s(%s) for %s, accound disabled.\n",
-           unistr(unicomp),inet_ntoa(p->ip), ascuser));
-        return;
-      }
-      else
-      {
-        DEBUG(3,("process_logon_packet: SAMLOGON request from %s(%s) for %s, returning logon svr %s domain %s code %x token=%x\n",
-           unistr(unicomp),inet_ntoa(p->ip), ascuser, reply_name, global_myworkgroup,
-           SAMLOGON_R ,lmnttoken));
-      }
+      DEBUG(3,("process_logon_packet: SAMLOGON request from %s(%s) for %s, returning logon svr %s domain %s code %x token=%x\n",
+              unistr(unicomp),inet_ntoa(p->ip), ascuser, reply_name, global_myworkgroup,
+              SAMLOGON_R ,lmnttoken));
 
       /* Construct reply. */