{
int option_index;
- switch (getopt_long(argc, argv, "-a:p:ve:o:it:wc:d:s:",
+ switch (getopt_long(argc, argv, "+a:p:ve:o:it:wc:d:s:",
long_options, &option_index)) {
- case 1:
- if (appid == NULL) {
- appid = optarg;
- } else if (pname == NULL) {
- pname = optarg;
- } else {
- log_error("extra argument %s", optarg);
- exit(1);
- }
- break;
case 'a': CheckValue(&appid, "appid"); break;
case 'p': CheckValue(&pname, "pipe name"); break;
case 'e': CheckValue(&ename, "exe name"); break;
case 'c': controlPort = atoi(optarg); break;
case 'd': dataPort = atoi(optarg); break;
case 's': statPort = atoi(optarg); break;
+ case '?': exit(1);
default:
+ if (optind != argc)
+ {
+ log_error("extra argument %s", argv[optind]);
+ exit(1);
+ }
return -1;
}
return 0;