diff options
author | Jacques Vidrine <nectar@FreeBSD.org> | 2003-09-17 16:07:48 +0000 |
---|---|---|
committer | Jacques Vidrine <nectar@FreeBSD.org> | 2003-09-17 16:07:48 +0000 |
commit | 17f5a3c9fe04b53e16e5e42247e2cb8c0fb38d2f (patch) | |
tree | 33b79f1b18d452ba14981f3e0538e9720e2b8b90 /security/openssh/files/patch-misc.c | |
parent | - Securitry Fix revision 2 (diff) |
Add Solar Designer's additional fixes to buffer management.
Diffstat (limited to '')
-rw-r--r-- | security/openssh/files/patch-misc.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/security/openssh/files/patch-misc.c b/security/openssh/files/patch-misc.c new file mode 100644 index 000000000000..b40e6d62ba4c --- /dev/null +++ b/security/openssh/files/patch-misc.c @@ -0,0 +1,28 @@ +--- misc.c Mon Dec 23 02:44:36 2002 ++++ misc.c Wed Sep 17 00:50:27 2003 +@@ -308,18 +308,21 @@ addargs(arglist *args, char *fmt, ...) + { + va_list ap; + char buf[1024]; ++ int nalloc; + + va_start(ap, fmt); + vsnprintf(buf, sizeof(buf), fmt, ap); + va_end(ap); + ++ nalloc = args->nalloc; + if (args->list == NULL) { +- args->nalloc = 32; ++ nalloc = 32; + args->num = 0; +- } else if (args->num+2 >= args->nalloc) +- args->nalloc *= 2; ++ } else if (args->num+2 >= nalloc) ++ nalloc *= 2; + +- args->list = xrealloc(args->list, args->nalloc * sizeof(char *)); ++ args->list = xrealloc(args->list, nalloc * sizeof(char *)); ++ args->nalloc = nalloc; + args->list[args->num++] = xstrdup(buf); + args->list[args->num] = NULL; + } |