From 4e01382b3a655a1bfef1a73ad486344b842bcdfc Mon Sep 17 00:00:00 2001 From: Jelmer Vernooij Date: Thu, 20 Mar 2003 11:11:32 +0000 Subject: Make swat use popt (This used to be commit 3cd1650d389850c2a36997a1a404d37bb28130e4) --- source3/Makefile.in | 7 ++++--- source3/web/swat.c | 27 +++++++++++++++------------ 2 files changed, 19 insertions(+), 15 deletions(-) (limited to 'source3') diff --git a/source3/Makefile.in b/source3/Makefile.in index 27ca9c6f30..dc3e6d6fa2 100644 --- a/source3/Makefile.in +++ b/source3/Makefile.in @@ -363,7 +363,8 @@ SWAT_OBJ1 = web/cgi.o web/diagnose.o web/startstop.o web/statuspage.o \ SWAT_OBJ = $(SWAT_OBJ1) $(PRINTING_OBJ) $(LIBSMB_OBJ) $(LOCKING_OBJ) \ $(PARAM_OBJ) $(PASSDB_OBJ) $(SECRETS_OBJ) $(KRBCLIENT_OBJ) \ - $(UBIQX_OBJ) $(LIB_OBJ) $(GROUPDB_OBJ) $(PLAINTEXT_AUTH_OBJ) + $(UBIQX_OBJ) $(LIB_OBJ) $(GROUPDB_OBJ) $(PLAINTEXT_AUTH_OBJ) \ + $(POPT_LIB_OBJ) SMBSH_OBJ = smbwrapper/smbsh.o smbwrapper/shared.o \ $(PARAM_OBJ) $(UBIQX_OBJ) $(LIB_OBJ) @@ -707,10 +708,10 @@ bin/wrepld@EXEEXT@: $(WREPL_OBJ) bin/.dummy @echo Linking $@ @$(CC) $(FLAGS) -o $@ $(WREPL_OBJ) $(LDFLAGS) $(LIBS) -bin/swat@EXEEXT@: $(SWAT_OBJ) bin/.dummy +bin/swat@EXEEXT@: $(SWAT_OBJ) @BUILD_POPT@ bin/.dummy @echo Linking $@ @$(CC) $(FLAGS) -o $@ $(SWAT_OBJ) $(LDFLAGS) $(DYNEXP) $(PRINTLIBS) \ - $(AUTHLIBS) $(LIBS) + $(AUTHLIBS) $(LIBS) @BUILD_POPT@ bin/rpcclient@EXEEXT@: $(RPCCLIENT_OBJ) @BUILD_POPT@ bin/.dummy @echo Linking $@ diff --git a/source3/web/swat.c b/source3/web/swat.c index d6693b4e75..bece4e71e2 100644 --- a/source3/web/swat.c +++ b/source3/web/swat.c @@ -1261,10 +1261,16 @@ static void printers_page(void) **/ int main(int argc, char *argv[]) { - extern char *optarg; - extern int optind; int opt; char *page; + poptContext pc; + struct poptOption long_options[] = { + POPT_AUTOHELP + { "disable-authentication", 'a', POPT_ARG_VAL, &demo_mode, TRUE, "Disable authentication (demo mode)" }, + { NULL, 0, POPT_ARG_INCLUDE_TABLE, popt_common_version}, + { NULL, 0, POPT_ARG_INCLUDE_TABLE, popt_common_configfile}, + { 0, 0, 0, 0 } + }; fault_setup(NULL); umask(S_IWGRP | S_IWOTH); @@ -1288,16 +1294,13 @@ static void printers_page(void) close(2); open("/dev/null", O_WRONLY); - while ((opt = getopt(argc, argv,"s:a")) != EOF) { - switch (opt) { - case 's': - pstrcpy(dyn_CONFIGFILE,optarg); - break; - case 'a': - demo_mode = True; - break; - } - } + pc = poptGetContext("swat", argc, (const char **) argv, long_options, 0); + + /* Parse command line options */ + + while((opt = poptGetNextOpt(pc)) != -1) { } + + poptFreeContext(pc); setup_logging(argv[0],False); load_config(True); -- cgit