diff --git a/libexec/ftpd/ftpcmd.y b/libexec/ftpd/ftpcmd.y index 7a96de3e48c1..04a7d87ec76f 100644 --- a/libexec/ftpd/ftpcmd.y +++ b/libexec/ftpd/ftpcmd.y @@ -947,6 +947,8 @@ pathname GLOB_BRACE|GLOB_NOCHECK|GLOB_QUOTE|GLOB_TILDE; memset(&gl, 0, sizeof(gl)); + flags |= GLOB_MAXPATH; + gl.gl_matchc = MAXGLOBARGS; if (glob($1, flags, NULL, &gl) || gl.gl_pathc == 0) { reply(550, "not found"); @@ -1037,6 +1039,8 @@ extern jmp_buf errcatch; #define SITECMD 7 /* SITE command */ #define NSTR 8 /* Number followed by a string */ +#define MAXGLOBARGS 1000 + struct tab { char *name; short token;