Blob Blame History Raw
diff -up netkit-ftp-0.17/ftp/ftp.c.orig netkit-ftp-0.17/ftp/ftp.c
diff -up netkit-ftp-0.17/ftp/ftp_var.h.orig netkit-ftp-0.17/ftp/ftp_var.h
diff -up netkit-ftp-0.17/ftp/main.c.orig netkit-ftp-0.17/ftp/main.c
--- netkit-ftp-0.17/ftp/main.c.orig	2018-09-03 16:49:16.459000000 +0200
+++ netkit-ftp-0.17/ftp/main.c	2018-09-03 17:00:14.853452345 +0200
@@ -399,7 +399,7 @@ int slrflag;
 char **
 makeargv(int *pargc, char **parg)
 {
-	static char *rargv[20];
+	static char *rargv[LINELEN];
 	int rargc = 0;
 	char **argp;
 
@@ -407,7 +407,7 @@ makeargv(int *pargc, char **parg)
 	stringbase = line;		/* scan from first of buffer */
 	argbase = argbuf;		/* store from first of buffer */
 	slrflag = 0;
-	while ((*argp++ = slurpstring())!=NULL)
+	while ((rargc < LINELEN) && (*argp++ = slurpstring())!=NULL)
 		rargc++;
 
 	*pargc = rargc;