diff options
author | cinap_lenrek <cinap_lenrek@gmx.de> | 2012-12-02 12:32:23 +0100 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@gmx.de> | 2012-12-02 12:32:23 +0100 |
commit | 45b498c027d1a460f79d7d545bf131a40acc40c2 (patch) | |
tree | 1c416fb2e1c85ff6d6dc336f31f35c81e5830c86 | |
parent | 50c9769bbdffc4d9b8d5122d1956f6ee5fd9f043 (diff) | |
download | plan9front-45b498c027d1a460f79d7d545bf131a40acc40c2.tar.xz |
ape: fix buffer overflow in _envsetup()
-rw-r--r-- | sys/src/ape/lib/ap/plan9/_envsetup.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/src/ape/lib/ap/plan9/_envsetup.c b/sys/src/ape/lib/ap/plan9/_envsetup.c index 55cf33b85..c83d45008 100644 --- a/sys/src/ape/lib/ap/plan9/_envsetup.c +++ b/sys/src/ape/lib/ap/plan9/_envsetup.c @@ -59,6 +59,8 @@ _envsetup(void) for(j=0; j<nd; j++){ d9 = &d9a[j]; n = strlen(d9->name); + if(n >= sizeof(name)-4) + continue; m = d9->length; i = p - ps; if(i+n+1+m+1 > psize) { |