diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | Makefile | 4 | ||||
-rw-r--r-- | Versions | 1 | ||||
-rw-r--r-- | bsd_getopt.c | 15 | ||||
-rw-r--r-- | include/bsd/getopt.h | 4 |
5 files changed, 30 insertions, 2 deletions
@@ -1,3 +1,11 @@ +2006-02-13 Robert Millan <rmh@aybabtu.com> + + Add bsd_getopt. + * bsd_getopt.c: New. + * include/bsd/getopt.h: New. + * Versions: Add bsd_getopt and optreset. + * Makefile: Add bsd_getopt.c and include/bsd/getopt.h. + 2006-02-10 Robert Millan <rmh@aybabtu.com> Add errc, warnc, verrc and vwarnc. @@ -4,9 +4,9 @@ # $Id$ # -LIB_SRCS = arc4random.c err.c fgetln.c inet_net_pton.c strlcat.c strlcpy.c md5c.c fmtcheck.c +LIB_SRCS = arc4random.c bsd_getopt.c err.c fgetln.c inet_net_pton.c strlcat.c strlcpy.c md5c.c fmtcheck.c -LIB_INCLUDES = include/bsd/err.h include/bsd/ip_icmp.h include/bsd/random.h include/bsd/queue.h include/bsd/md5.h include/bsd/string.h include/bsd/bsd.h include/bsd/stdlib.h +LIB_INCLUDES = include/bsd/err.h include/bsd/getopt.h include/bsd/ip_icmp.h include/bsd/random.h include/bsd/queue.h include/bsd/md5.h include/bsd/string.h include/bsd/bsd.h include/bsd/stdlib.h LIB_MANS = man/arc4random.3 man/strlcpy.3 man/fgetln.3 man/fmtcheck.3 @@ -1,6 +1,7 @@ LIBBSD_0.0 { global: arc4random; + bsd_getopt; optreset; errc; warnc; verrc; vwarnc; fgetln; fgetwln; diff --git a/bsd_getopt.c b/bsd_getopt.c new file mode 100644 index 0000000..8245fc8 --- /dev/null +++ b/bsd_getopt.c @@ -0,0 +1,15 @@ +#include <bsd/getopt.h> + +int optreset = 0; + +int +bsd_getopt (int argc, char **argv, char *shortopts) +{ + if (optreset == 1) + { + optreset = 0; + optind = 0; + } + + return getopt (argc, argv, shortopts); +} diff --git a/include/bsd/getopt.h b/include/bsd/getopt.h new file mode 100644 index 0000000..bf78f01 --- /dev/null +++ b/include/bsd/getopt.h @@ -0,0 +1,4 @@ +#include <getopt.h> +extern int optreset; + +int bsd_getopt (int, char **, char *); |