diff options
author | jedgar <jedgar@FreeBSD.org> | 2001-01-20 00:29:31 +0000 |
---|---|---|
committer | jedgar <jedgar@FreeBSD.org> | 2001-01-20 00:29:31 +0000 |
commit | f0477994710c9f7a86ace701aaa8d45e4ee355e9 (patch) | |
tree | 63eaea31962358d3d150e89cc777587b07009426 /libexec/fingerd | |
parent | 73ff8fb47fd62018f224c61bc26645009cdae500 (diff) | |
download | FreeBSD-src-f0477994710c9f7a86ace701aaa8d45e4ee355e9.zip FreeBSD-src-f0477994710c9f7a86ace701aaa8d45e4ee355e9.tar.gz |
Check malloc() and strdup() return values
Reviewed by: kris
Diffstat (limited to 'libexec/fingerd')
-rw-r--r-- | libexec/fingerd/fingerd.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/libexec/fingerd/fingerd.c b/libexec/fingerd/fingerd.c index 15463e8..8524acd 100644 --- a/libexec/fingerd/fingerd.c +++ b/libexec/fingerd/fingerd.c @@ -45,6 +45,7 @@ static const char rcsid[] = "$FreeBSD$"; #endif /* not lint */ +#include <sys/types.h> #include <sys/param.h> #include <sys/socket.h> #include <netinet/in.h> @@ -54,6 +55,7 @@ static const char rcsid[] = #include <unistd.h> #include <syslog.h> +#include <libutil.h> #include <netdb.h> #include <stdio.h> #include <stdlib.h> @@ -118,11 +120,13 @@ main(argc, argv) end = memchr(line, 0, sizeof(line)); if (end == NULL) { - t = malloc(sizeof(line) + 1); + if ((t = malloc(sizeof(line) + 1)) == NULL) + logerr("malloc: %s", strerror(errno)); memcpy(t, line, sizeof(line)); t[sizeof(line)] = 0; } else { - t = strdup(line); + if ((t = strdup(line)) == NULL) + logerr("strdup: %s", strerror(errno)); } for (end = t; *end; end++) if (*end == '\n' || *end == '\r') |