X-Git-Url: https://ruin.nu/git/?p=popboot.git;a=blobdiff_plain;f=simprog.c;h=473e0ac0655cb03ecf19b6e65bb54c41127b1517;hp=a71384772089c02f1217dca468fb30578a50a46a;hb=HEAD;hpb=52feef3369ad80d5b7207620f37ae341ccd11b95 diff --git a/simprog.c b/simprog.c index a713847..473e0ac 100644 --- a/simprog.c +++ b/simprog.c @@ -1,14 +1,18 @@ #include #include #include - +#include +#include void print_help(char name[]) { printf("\n"); printf("Simulates execution of an program. \n"); printf("\n"); - printf("Usage: %s \n", name); + printf("Usage: %s name time [-eNN=MM [...]]\n", name); + printf(" name A label to print\n"); + printf(" time Time for program to sleep in seconds\n"); + printf("\n"); printf("The default action of the program is to return with 0 (success) \n"); printf(" -eNN=MM Return with value NN with a probability of MM% \n"); printf("\n"); @@ -34,39 +38,63 @@ void parse_argv(char argv[], int *retval, int *percentage) int main (int argc, char** argv) { - int i, rand_value, sum; + char *name; + int sleep_time, i, rand_value, retval, sum; int retvals[100]; int percentages[100]; + struct timeval td; - if (argc==2 && strcmp("--help",argv[1])==0 ) + if (argc < 3 ) { print_help(argv[0]); return 1; } + + + + name = argv[1]; - for (i=1; i