diff options
author | joerg <joerg@FreeBSD.org> | 1997-08-23 14:09:36 +0000 |
---|---|---|
committer | joerg <joerg@FreeBSD.org> | 1997-08-23 14:09:36 +0000 |
commit | 6f8d5037591a322d30b1836f95d83495ae5255cb (patch) | |
tree | d8c0c63bc42fc47ac68382f081588094544f2fa7 /usr.bin/su | |
parent | d840732075fdcf8b410d36fbae4c3cf341df9511 (diff) | |
download | FreeBSD-src-6f8d5037591a322d30b1836f95d83495ae5255cb.zip FreeBSD-src-6f8d5037591a322d30b1836f95d83495ae5255cb.tar.gz |
Prevent a NULL dereferencation when given a garbage command line.
PR: bin/3206
Submitted by: blank@fox.uni-trier.de
Diffstat (limited to 'usr.bin/su')
-rw-r--r-- | usr.bin/su/su.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/usr.bin/su/su.c b/usr.bin/su/su.c index a358d7a..2e44f0c 100644 --- a/usr.bin/su/su.c +++ b/usr.bin/su/su.c @@ -42,7 +42,7 @@ static const char copyright[] = static char sccsid[] = "@(#)su.c 8.3 (Berkeley) 4/2/94"; #endif static const char rcsid[] = - "$Id: su.c,v 1.20 1997/05/10 19:01:32 davidn Exp $"; + "$Id: su.c,v 1.21 1997/08/12 06:45:43 charnier Exp $"; #endif /* not lint */ #include <sys/param.h> @@ -151,7 +151,10 @@ main(argc, argv) break; } - if((nargv = malloc (sizeof (char *) * (argc + 4))) == NULL) { + if (user == NULL) + usage(); + + if ((nargv = malloc (sizeof (char *) * (argc + 4))) == NULL) { errx(1, "malloc failure"); } |