diff options
author | Jeremy Allison <jra@samba.org> | 1997-08-28 20:59:51 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 1997-08-28 20:59:51 +0000 |
commit | 473c42a194d07581941d61cf30aaf0122213cfd7 (patch) | |
tree | 4cd72fe8d5af99cae68ae4baa21888bc83a4505c | |
parent | 45f998293034f399ebf8c76ff41c8b9b55b86776 (diff) | |
download | samba-473c42a194d07581941d61cf30aaf0122213cfd7.tar.gz samba-473c42a194d07581941d61cf30aaf0122213cfd7.tar.bz2 samba-473c42a194d07581941d61cf30aaf0122213cfd7.zip |
includes.h: Make sure REPLACE_GETPASS are wrapped with #ifdefs.
nmbsync.c: Make sure REPLACE_GETPASS is defined before including includes.h
clientutil.c: Catch null passwords.
Fixes for a nmbd crash bug found by Herb Lewis @ SGI.
Jermey(jallison@whistle.com)
(This used to be commit 45c266baaea8755f1a3c0c4c7a87eb0752848ca2)
-rw-r--r-- | source3/client/clientutil.c | 6 | ||||
-rw-r--r-- | source3/include/includes.h | 4 | ||||
-rw-r--r-- | source3/nmbsync.c | 2 |
3 files changed, 12 insertions, 0 deletions
diff --git a/source3/client/clientutil.c b/source3/client/clientutil.c index 000cbba1a7..b4f0849c5f 100644 --- a/source3/client/clientutil.c +++ b/source3/client/clientutil.c @@ -428,6 +428,12 @@ BOOL cli_send_login(char *inbuf, char *outbuf, BOOL start_session, BOOL use_setu else pass = (char *)getpass("Password: "); + if(pass == NULL) + { + DEBUG(0, ("cli_send_login : no password available - logon failed.\n")); + return False; + } + if (Protocol >= PROTOCOL_LANMAN1 && use_setup) { fstring pword; diff --git a/source3/include/includes.h b/source3/include/includes.h index 15a5e74e46..a63f8f8597 100644 --- a/source3/include/includes.h +++ b/source3/include/includes.h @@ -308,7 +308,9 @@ extern int innetgr (const char *, const char *, const char *, const char *); #define USE_STATVFS #define USE_GETCWD #define USE_SETSID +#ifndef REPLACE_GETPASS #define REPLACE_GETPASS +#endif /* REPLACE_GETPASS */ #define USE_SIGPROCMASK #endif @@ -459,7 +461,9 @@ char *mktemp(char *); /* No standard include */ #define NO_FSYNC #define USE_GETCWD #define USE_SETSID +#ifndef REPLACE_GETPASS #define REPLACE_GETPASS +#endif /* REPLACE_GETPASS */ #define NO_GETRLIMIT #endif /* CLIX */ diff --git a/source3/nmbsync.c b/source3/nmbsync.c index fd85c82e2c..f2161f631a 100644 --- a/source3/nmbsync.c +++ b/source3/nmbsync.c @@ -20,6 +20,8 @@ */ +/* We *must have REPLACE_GETPASS defined here before the includes. */ +#define REPLACE_GETPASS #include "includes.h" extern int ClientNMB; |