mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-05 06:27:37 +00:00
27042fd089
Fix denial of service in NLST CAN-2005-0256
35 lines
751 B
Plaintext
35 lines
751 B
Plaintext
--- src/glob.c.old Thu Nov 29 20:01:38 2001
|
|
+++ src/glob.c Thu Jun 10 06:13:51 2004
|
|
@@ -45,10 +45,12 @@
|
|
|
|
#include "proto.h"
|
|
|
|
+#define ARGSIZ (524288)
|
|
+
|
|
#define QUOTE 0200
|
|
#define TRIM 0177
|
|
#define eq(a,b) (strcmp(a, b)==0)
|
|
-#define GAVSIZ (NCARGS/6)
|
|
+#define GAVSIZ (ARGSIZ/6)
|
|
#define isdir(d) ((d.st_mode & S_IFMT) == S_IFDIR)
|
|
|
|
static char **gargv; /* Pointer to the (stack) arglist */
|
|
@@ -112,7 +114,7 @@
|
|
|
|
fixpath(v);
|
|
if (v[0] == '\0')
|
|
- v = "*";
|
|
+ v = ".";
|
|
else if ((strlen(v) > 1) && (v[strlen(v) - 1] == '/'))
|
|
v[strlen(v) - 1] = '\0';
|
|
|
|
@@ -149,7 +151,7 @@
|
|
gargv = agargv;
|
|
sortbas = agargv;
|
|
gargc = 0;
|
|
- gnleft = NCARGS - 4;
|
|
+ gnleft = ARGSIZ - 4;
|
|
}
|
|
|
|
static void collect(register char *as)
|