Teach ftpd about the new GLOB_MAXPATH flag.
This commit is contained in:
parent
bae8632f82
commit
6d10cb2f6f
@ -188,6 +188,13 @@ static int auth_pam __P((struct passwd**, const char*));
|
||||
|
||||
char *pid_file = NULL;
|
||||
|
||||
/*
|
||||
* Limit number of pathnames that glob can return.
|
||||
* A limit of 0 indicates the number of pathnames is unlimited.
|
||||
*/
|
||||
#define MAXGLOBARGS 16384
|
||||
#
|
||||
|
||||
/*
|
||||
* Timeout intervals for retrying connections
|
||||
* to hosts that don't accept PORT cmds. This
|
||||
@ -2621,6 +2628,8 @@ send_file_list(whichf)
|
||||
int flags = GLOB_BRACE|GLOB_NOCHECK|GLOB_QUOTE|GLOB_TILDE;
|
||||
|
||||
memset(&gl, 0, sizeof(gl));
|
||||
gl.gl_matchc = MAXGLOBARGS;
|
||||
flags |= GLOB_MAXPATH;
|
||||
freeglob = 1;
|
||||
if (glob(whichf, flags, 0, &gl)) {
|
||||
reply(550, "not found");
|
||||
|
@ -107,6 +107,8 @@ ftpd_popen(program, type)
|
||||
int flags = GLOB_BRACE|GLOB_NOCHECK|GLOB_QUOTE|GLOB_TILDE;
|
||||
|
||||
memset(&gl, 0, sizeof(gl));
|
||||
gl.gl_matchc = MAXGLOBARGS;
|
||||
flags |= GLOB_MAXPATH;
|
||||
if (glob(argv[argc], flags, NULL, &gl))
|
||||
gargv[gargc++] = strdup(argv[argc]);
|
||||
else
|
||||
|
Loading…
Reference in New Issue
Block a user