avoid clash between for getopt's struct option

Since we don't use getopt_long() nothing outside the getopt()
implementation itself uses this structure, so move it into the
source to remove it from visibility and clashes with libc's

ok dtucker@
This commit is contained in:
Damien Miller 2023-02-27 17:07:52 +11:00
parent eb88d07c43
commit 01dbeb3084
No known key found for this signature in database
2 changed files with 17 additions and 0 deletions

View File

@ -40,6 +40,7 @@
#define required_argument 1
#define optional_argument 2
#if 0
struct option {
/* name of long option */
const char *name;
@ -58,6 +59,8 @@ int getopt_long(int, char * const *, const char *,
const struct option *, int *);
int getopt_long_only(int, char * const *, const char *,
const struct option *, int *);
#endif
#ifndef _GETOPT_DEFINED_
#define _GETOPT_DEFINED_
int getopt(int, char * const *, const char *);

View File

@ -72,6 +72,20 @@
#include "log.h"
struct option {
/* name of long option */
const char *name;
/*
* one of no_argument, required_argument, and optional_argument:
* whether option takes an argument
*/
int has_arg;
/* if not NULL, set *flag to val when option found */
int *flag;
/* if flag not NULL, value to set *flag to; else return value */
int val;
};
int opterr = 1; /* if error message should be printed */
int optind = 1; /* index into parent argv vector */
int optopt = '?'; /* character checked for validity */