summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@felloff.net>2015-04-28 19:30:52 +0200
committercinap_lenrek <cinap_lenrek@felloff.net>2015-04-28 19:30:52 +0200
commitda689241d0ed5073412b347683acf278f2248683 (patch)
treec0c90db181aed7a392d4a681fa63124fa899f885
parente20d7c4aad1056bf30a9dd7a109339c2ef95a16e (diff)
downloadplan9front-da689241d0ed5073412b347683acf278f2248683.tar.xz
sam: prevent array overflow with multiple -i and -a arguments (thanks clsmith)
-rw-r--r--sys/src/cmd/sam/sam.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/src/cmd/sam/sam.c b/sys/src/cmd/sam/sam.c
index 2a0de7912..f53574d4f 100644
--- a/sys/src/cmd/sam/sam.c
+++ b/sys/src/cmd/sam/sam.c
@@ -63,9 +63,13 @@ void main(int argc, char *argv[])
/* options for samterm */
case 'a':
*ap++ = "-a";
+ if(ap >= termargs+nelem(termargs))
+ usage();
break;
case 'i':
*ap++ = "-i";
+ if(ap >= termargs+nelem(termargs))
+ usage();
break;
}ARGEND
*ap = nil;