From 7acd670a0843168e6adae0ced1da475c81b5ba1d Mon Sep 17 00:00:00 2001 From: Sam Hocevar Date: Mon, 19 May 2008 11:25:01 +0000 Subject: [PATCH] * Change -F to -j, to mimic make. --- doc/zzuf.1 | 10 +++++----- src/zzuf.c | 17 ++++++++++------- 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/doc/zzuf.1 b/doc/zzuf.1 index 8ed4570..eb7a5b3 100644 --- a/doc/zzuf.1 +++ b/doc/zzuf.1 @@ -4,7 +4,7 @@ zzuf \- multiple purpose fuzzer .SH SYNOPSIS \fBzzuf\fR [\fB\-AcdimnqSvx\fR] [\fB\-s\fR \fIseed\fR|\fB\-s\fR \fIstart:stop\fR] [\fB\-r\fR \fIratio\fR|\fB\-r\fR \fImin:max\fR] .br - [\fB\-f\fR \fIfuzzing\fR] [\fB\-D\fR \fIdelay\fR] [\fB\-F\fR \fIforks\fR] [\fB\-C\fR \fIcrashes\fR] [\fB\-B\fR \fIbytes\fR] + [\fB\-f\fR \fIfuzzing\fR] [\fB\-D\fR \fIdelay\fR] [\fB\-j\fR \fIjobs\fR] [\fB\-C\fR \fIcrashes\fR] [\fB\-B\fR \fIbytes\fR] .br [\fB\-t\fR \fIseconds\fR] [\fB\-T\fR \fIseconds\fR] [\fB\-M\fR \fImegabytes\fR] [\fB\-b\fR \fIranges\fR] [\fB\-p\fR \fIports\fR] .br @@ -91,7 +91,7 @@ Activate the display of debug messages. .TP \fB\-D\fR, \fB\-\-delay\fR=\fIdelay\fR Do not launch more than one process every \fIdelay\fR seconds. This option -should be used together with \fB\-F\fR to avoid fork bombs. +should be used together with \fB\-j\fR to avoid fork bombs. .TP \fB\-E\fR, \fB\-\-exclude\fR=\fIregex\fR Do not fuzz files whose name matches the \fIregex\fR regular expression. This @@ -118,7 +118,7 @@ only unset bits .IP The default value for \fImode\fR is \fBxor\fR. .TP -\fB\-F\fR, \fB\-\-max\-forks\fR=\fIforks\fR +\fB\-j\fR, \fB\-\-jobs\fR=\fIjobs\fR Specify the number of simultaneous children that can be run. By default, \fBzzuf\fR only launches one process at a time. @@ -350,12 +350,12 @@ Fuzz between 0.1% and 2% of MPlayer's input bits (\fB\-r0.001:0.02\fR) with seeds 0 to 9999 (\fB\-s0:10000\fR), preserving the AVI 4-byte header by restricting fuzzing to offsets after 4 (\fB\-b4\-\fR), disabling its standard output messages (\fB\-q\fR), launching up to five simultaneous child -processes (\fB\-F5\fR) but waiting at least half a second between launches +processes (\fB\-j5\fR) but waiting at least half a second between launches (\fB\-D0.5\fR), killing MPlayer if it takes more than one minute to read the file (\fB\-T60\fR) and disabling its \fBSIGSEGV\fR signal handler (\fB\-S\fR): .PP -\fB zzuf \-c \-r0.001:0.02 \-s0:10000 \-b4\- \-q \-F5 \-D0.5 \-T60 \-S \\\fR +\fB zzuf \-c \-r0.001:0.02 \-s0:10000 \-b4\- \-q \-j5 \-D0.5 \-T60 \-S \\\fR .br \fB mplayer \-benchmark \-vo null \-fps 1000 movie.avi\fR .PP diff --git a/src/zzuf.c b/src/zzuf.c index a1078a9..c5e98dd 100644 --- a/src/zzuf.c +++ b/src/zzuf.c @@ -169,7 +169,7 @@ int main(int argc, char *argv[]) # define OPTSTR_RLIMIT_CPU "" #endif #define OPTSTR "+" OPTSTR_REGEX OPTSTR_RLIMIT_MEM OPTSTR_RLIMIT_CPU \ - "Ab:B:C:dD:f:F:il:mnp:P:qr:R:s:St:vxhV" + "Ab:B:C:dD:f:F:ij:l:mnp:P:qr:R:s:St:vxhV" #define MOREINFO "Try `%s --help' for more information.\n" int option_index = 0; static struct myoption long_options[] = @@ -188,11 +188,11 @@ int main(int argc, char *argv[]) { "exclude", 1, NULL, 'E' }, #endif { "fuzzing", 1, NULL, 'f' }, - { "max-forks", 1, NULL, 'F' }, { "stdin", 0, NULL, 'i' }, #if defined HAVE_REGEX_H { "include", 1, NULL, 'I' }, #endif + { "jobs", 1, NULL, 'j' }, { "list", 1, NULL, 'l' }, { "md5", 0, NULL, 'm' }, { "max-memory", 1, NULL, 'M' }, @@ -259,9 +259,9 @@ int main(int argc, char *argv[]) case 'f': /* --fuzzing */ opts->fuzzing = myoptarg; break; - case 'F': /* --max-forks */ - opts->maxchild = atoi(myoptarg) > 1 ? atoi(myoptarg) : 1; - break; + case 'F': + fprintf(stderr, "%s: `-F' is deprecated, use `-j'\n", argv[0]); + return EXIT_FAILURE; case 'i': /* --stdin */ setenv("ZZUF_STDIN", "1", 1); break; @@ -277,6 +277,9 @@ int main(int argc, char *argv[]) } break; #endif + case 'j': /* --jobs */ + opts->maxchild = atoi(myoptarg) > 1 ? atoi(myoptarg) : 1; + break; case 'l': /* --list */ opts->list = myoptarg; break; @@ -1160,7 +1163,7 @@ static void usage(void) #else printf("Usage: zzuf [-AdimnqSvx] [-s seed|-s start:stop] [-r ratio|-r min:max]\n"); #endif - printf(" [-f fuzzing] [-D delay] [-F forks] [-C crashes] [-B bytes]\n"); + printf(" [-f fuzzing] [-D delay] [-j jobs] [-C crashes] [-B bytes]\n"); printf(" [-t seconds] "); #if defined HAVE_SETRLIMIT && defined ZZUF_RLIMIT_CPU printf( "[-T seconds] "); @@ -1193,11 +1196,11 @@ static void usage(void) printf(" -E, --exclude do not fuzz files matching \n"); #endif printf(" -f, --fuzzing use fuzzing mode ([xor] set unset)\n"); - printf(" -F, --max-forks number of concurrent children (default 1)\n"); printf(" -i, --stdin fuzz standard input\n"); #if defined HAVE_REGEX_H printf(" -I, --include only fuzz files matching \n"); #endif + printf(" -j, --jobs number of simultaneous jobs (default 1)\n"); printf(" -l, --list only fuzz Nth descriptor with N in \n"); printf(" -m, --md5 compute the output's MD5 hash\n"); #if defined HAVE_SETRLIMIT && defined ZZUF_RLIMIT_MEM