summaryrefslogtreecommitdiffstats
path: root/sbin/ipfw/main.c
diff options
context:
space:
mode:
authorluigi <luigi@FreeBSD.org>2010-04-12 08:27:53 +0000
committerluigi <luigi@FreeBSD.org>2010-04-12 08:27:53 +0000
commit32deede1ae92ec5fa439ba6b94a479b6de2fe40b (patch)
treecc03e527a6bfb09b0772ebfbfa17be4446c02b58 /sbin/ipfw/main.c
parentca17a8f176620a37782967332eb08b0f5e2ee182 (diff)
downloadFreeBSD-src-32deede1ae92ec5fa439ba6b94a479b6de2fe40b.zip
FreeBSD-src-32deede1ae92ec5fa439ba6b94a479b6de2fe40b.tar.gz
fix a buffer overflow with large (100k+) number of input lines.
MFC after: 3 days
Diffstat (limited to 'sbin/ipfw/main.c')
-rw-r--r--sbin/ipfw/main.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sbin/ipfw/main.c b/sbin/ipfw/main.c
index cd39cf1..43693e0 100644
--- a/sbin/ipfw/main.c
+++ b/sbin/ipfw/main.c
@@ -553,11 +553,11 @@ ipfw_readfile(int ac, char *av[])
}
while (fgets(buf, BUFSIZ, f)) { /* read commands */
- char linename[10];
+ char linename[20];
char *args[2];
lineno++;
- sprintf(linename, "Line %d", lineno);
+ snprintf(linename, sizeof(linename), "Line %d", lineno);
setprogname(linename); /* XXX */
args[0] = progname;
args[1] = buf;
OpenPOWER on IntegriCloud