#include /* printf */ #include /* system */ #include /* execv */ #include /* typedefs */ #include /* time */ #include /* timeval / timezone / gettimeofday */ typedef struct srs_time_s { struct timeval start; /* sample start */ struct timeval finish; /* sample finish */ struct timezone tzp; /* timezone */ } srs_time_t; int main(int argc, char **argv) { srs_time_t srs_time[1]; u_int32_t i = 0; int32_t fw = 0; gettimeofday(&srs_time[0].start, &srs_time[0].tzp); if (argc <= 1 || argv[1] == NULL) { printf("You must supply a number of forwards to generate eg: ./test 1000\n"); return(0); } fw = atoi(argv[1]); for (i = 0; i <= fw; i++) { system("./srs -q 1 -f jcouzens@obscurity.org -t james@pobox.com -s asshat"); } gettimeofday(&srs_time[0].finish, &srs_time[0].tzp); printf("%i forwards executed in %lu.%u seconds\n", fw, (srs_time[0].finish.tv_sec - srs_time[0].start.tv_sec), (u_int8_t)(srs_time[0].finish.tv_usec - srs_time[0].start.tv_usec)); return(1); } /* end test.c */