diff options
Diffstat (limited to 'src/misc/util/getopt.c')
-rw-r--r-- | src/misc/util/getopt.c | 84 |
1 files changed, 0 insertions, 84 deletions
diff --git a/src/misc/util/getopt.c b/src/misc/util/getopt.c deleted file mode 100644 index 778c34d6..00000000 --- a/src/misc/util/getopt.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Revision Control Information - * - * /projects/hsis/CVS/utilities/util/getopt.c,v - * rajeev - * 1.3 - * 1995/08/08 22:41:22 - * - */ -/* LINTLIBRARY */ - -#include <stdio.h> -#include "util.h" - - -/* File : getopt.c - * Author : Henry Spencer, University of Toronto - * Updated: 28 April 1984 - * - * Changes: (R Rudell) - * changed index() to strchr(); - * added getopt_reset() to reset the getopt argument parsing - * - * Purpose: get option letter from argv. - */ - -char *util_optarg; /* Global argument pointer. */ -int util_optind = 0; /* Global argv index. */ -static char *scan; - - -void -util_getopt_reset() -{ - util_optarg = 0; - util_optind = 0; - scan = 0; -} - - - -int -util_getopt(argc, argv, optstring) -int argc; -char *argv[]; -char *optstring; -{ - register int c; - register char *place; - - util_optarg = NIL(char); - - if (scan == NIL(char) || *scan == '\0') { - if (util_optind == 0) util_optind++; - if (util_optind >= argc) return EOF; - place = argv[util_optind]; - if (place[0] != '-' || place[1] == '\0') return EOF; - util_optind++; - if (place[1] == '-' && place[2] == '\0') return EOF; - scan = place+1; - } - - c = *scan++; - place = strchr(optstring, c); - if (place == NIL(char) || c == ':') { - (void) fprintf(stderr, "%s: unknown option %c\n", argv[0], c); - return '?'; - } - if (*++place == ':') { - if (*scan != '\0') { - util_optarg = scan; - scan = NIL(char); - } else { - if (util_optind >= argc) { - (void) fprintf(stderr, "%s: %c requires an argument\n", - argv[0], c); - return '?'; - } - util_optarg = argv[util_optind]; - util_optind++; - } - } - return c; -} |