diff -up netkit-ftp-0.17/ftp/ruserpass.c.chkmalloc netkit-ftp-0.17/ftp/ruserpass.c
--- netkit-ftp-0.17/ftp/ruserpass.c.chkmalloc 2008-12-01 11:54:15.000000000 +0100
+++ netkit-ftp-0.17/ftp/ruserpass.c 2008-12-01 11:56:06.000000000 +0100
@@ -137,7 +137,8 @@ next:
if (token()) {
if (*aname == 0) {
*aname = malloc((unsigned) strlen(tokval) + 1);
- (void) strcpy(*aname, tokval);
+ if (*aname != NULL)
+ (void) strcpy(*aname, tokval);
} else {
if (strcmp(*aname, tokval))
goto next;
@@ -158,7 +159,8 @@ next:
}
if (token() && *apass == 0) {
*apass = malloc((unsigned) strlen(tokval) + 1);
- (void) strcpy(*apass, tokval);
+ if (*apass != NULL)
+ (void) strcpy(*apass, tokval);
}
break;
case ACCOUNT:
@@ -170,7 +172,8 @@ next:
}
if (token() && *aacct == 0) {
*aacct = malloc((unsigned) strlen(tokval) + 1);
- (void) strcpy(*aacct, tokval);
+ if (*aacct != NULL)
+ (void) strcpy(*aacct, tokval);
}
break;
case MACDEF: