- int opt;
- while((opt = getopt(argc, argv, "hp:")) != -1){
- switch(opt){
- case 'p':
- port = atoi(optarg);
- if(port < 1)
- die("Port numbers are > 1\n");
- break;
- case 'h':
- usage(stdout, argv[0]);
- exit(EXIT_SUCCESS);
- default:
- usage(stderr, argv[0]);
- exit(EXIT_FAILURE);
+ int opti = 1;
+ while(opti < argc){
+ if(strcmp(argv[opti], "-h") == 0){
+ usage(stdout, argv[0]);
+ exit(EXIT_SUCCESS);
+ } else if(strcmp(argv[opti], "-p") == 0 && opti+1<argc){
+ port = atoi(argv[++opti]);
+ if(port < 1)
+ die("Port numbers are > 1\n");
+ } else {
+ usage(stderr, argv[0]);
+ exit(EXIT_FAILURE);