Changeset 1532 for zzuf/trunk/src


Ignore:
Timestamp:
Jan 1, 2007, 10:35:54 PM (16 years ago)
Author:
Sam Hocevar
Message:
  • Implemented signal handling.
  • Updated documentation accordingly and improved a few parts.
Location:
zzuf/trunk/src
Files:
1 added
5 edited

Legend:

Unmodified
Added
Removed
  • zzuf/trunk/src/Makefile.am

    r1517 r1532  
    66pkglib_LTLIBRARIES = libzzuf.la
    77libzzuf_la_SOURCES = libzzuf.c libzzuf.h fuzz.c fuzz.h debug.c debug.h \
    8                      load-fd.c load-stream.c load.h random.c random.h
     8                     load-fd.c load-signal.c load-stream.c load.h \
     9                     random.c random.h
    910libzzuf_la_LDFLAGS = -module -avoid-version -no-undefined
    1011libzzuf_la_LIBADD = -ldl
  • zzuf/trunk/src/libzzuf.c

    r1529 r1532  
    4141int   _zz_ready    = 0;
    4242int   _zz_hasdebug = 0;
     43float _zz_ratio    = 0.004f;
    4344int   _zz_seed     = 0;
    44 float _zz_ratio    = 0.004f;
     45int   _zz_signal   = 0;
    4546
    4647/* Local variables */
     
    5859
    5960    tmp = getenv("ZZUF_DEBUG");
    60     if(tmp && *tmp)
     61    if(tmp && *tmp == '1')
    6162        _zz_hasdebug = 1;
    6263
     
    8788    }
    8889
     90    tmp = getenv("ZZUF_SIGNAL");
     91    if(tmp && *tmp == '1')
     92        _zz_signal = 1;
     93
    8994    _zz_fd_init();
    9095
     
    9499
    95100    _zz_load_fd();
     101    _zz_load_signal();
    96102    _zz_load_stream();
    97103
  • zzuf/trunk/src/libzzuf.h

    r1527 r1532  
    3232extern int       _zz_ready;
    3333extern int       _zz_hasdebug;
     34extern float     _zz_ratio;
    3435extern int       _zz_seed;
    35 extern float     _zz_ratio;
     36extern int       _zz_signal;
    3637
    3738/* Library initialisation shit */
  • zzuf/trunk/src/load.h

    r1523 r1532  
    2828
    2929extern void _zz_load_fd(void);
     30extern void _zz_load_signal(void);
    3031extern void _zz_load_stream(void);
    3132
  • zzuf/trunk/src/zzuf.c

    r1531 r1532  
    9797        {
    9898            /* Long option, needs arg, flag, short option */
     99            { "max-bytes", 1, NULL, 'B' },
     100            { "cmdline",   0, NULL, 'c' },
     101            { "debug",     0, NULL, 'd' },
     102            { "exclude",   1, NULL, 'E' },
     103            { "fork",      1, NULL, 'F' },
     104            { "help",      0, NULL, 'h' },
     105            { "stdin",     0, NULL, 'i' },
    99106            { "include",   1, NULL, 'I' },
    100             { "exclude",   1, NULL, 'E' },
    101             { "cmdline",   0, NULL, 'c' },
    102             { "stdin",     0, NULL, 'i' },
     107            { "quiet",     0, NULL, 'q' },
     108            { "ratio",     1, NULL, 'r' },
    103109            { "seed",      1, NULL, 's' },
    104             { "ratio",     1, NULL, 'r' },
    105             { "fork",      1, NULL, 'F' },
    106             { "max-bytes", 1, NULL, 'B' },
     110            { "signal",    0, NULL, 'S' },
    107111            { "max-time",  1, NULL, 'T' },
    108             { "quiet",     0, NULL, 'q' },
    109             { "debug",     0, NULL, 'd' },
    110             { "help",      0, NULL, 'h' },
    111112            { "version",   0, NULL, 'v' },
    112113        };
    113         int c = getopt_long(argc, argv, "B:cdE:F:hiI:qr:s:T:v",
     114        int c = getopt_long(argc, argv, "B:cdE:F:hiI:qr:s:ST:v",
    114115                            long_options, &option_index);
    115116#   else
    116117#       define MOREINFO "Try `%s -h' for more information.\n"
    117         int c = getopt(argc, argv, "B:cdE:F:hiI:qr:s:T:v");
     118        int c = getopt(argc, argv, "B:cdE:F:hiI:qr:s:ST:v");
    118119#   endif
    119120        if(c == -1)
     
    163164        case 'q': /* --quiet */
    164165            quiet = 1;
     166            break;
     167        case 'S': /* --signal */
     168            setenv("ZZUF_SIGNAL", "1", 1);
    165169            break;
    166170        case 'd': /* --debug */
     
    529533    printf("  -s, --seed <seed>        random seed (default 0)\n");
    530534    printf("      --seed <start:stop>  specify a seed range\n");
     535    printf("  -S, --signal             prevent children from diverting crashing signals\n");
    531536    printf("  -T, --max-time <n>       kill children that run for more than <n> seconds\n");
    532537    printf("  -v, --version            output version information and exit\n");
     
    544549    printf("  -s <seed>        random seed (default 0)\n");
    545550    printf("     <start:stop>  specify a seed range\n");
     551    printf("  -S               prevent children from diverting crashing signals\n");
    546552    printf("  -T <n>           kill children that run for more than <n> seconds\n");
    547553    printf("  -v               output version information and exit\n");
Note: See TracChangeset for help on using the changeset viewer.