]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
lib:cmdline: Add a --configfile only parser for ntlm_auth
authorAndreas Schneider <asn@samba.org>
Wed, 13 Jan 2021 09:56:41 +0000 (10:56 +0100)
committerAndrew Bartlett <abartlet@samba.org>
Tue, 25 May 2021 00:23:37 +0000 (00:23 +0000)
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
lib/cmdline/cmdline.c
lib/cmdline/cmdline.h

index 58e8059b9a88bb10a482a81a4c23ac5e7683e1f8..aadb06c7f56a30489beab61c045420bfefe4399a 100644 (file)
@@ -474,6 +474,22 @@ static struct poptOption popt_common_option[] = {
        POPT_TABLEEND
 };
 
+static struct poptOption popt_common_config[] = {
+       {
+               .argInfo    = POPT_ARG_CALLBACK|POPT_CBFLAG_PRE|POPT_CBFLAG_POST,
+               .arg        = (void *)popt_samba_callback,
+       },
+       {
+               .longName   = "configfile",
+               .shortName  = 's',
+               .argInfo    = POPT_ARG_STRING,
+               .val        = 's',
+               .descrip    = "Use alternative configuration file",
+               .argDescrip = "CONFIGFILE",
+       },
+       POPT_TABLEEND
+};
+
 static struct poptOption popt_common_samba[] = {
        {
                .argInfo    = POPT_ARG_CALLBACK|POPT_CBFLAG_PRE|POPT_CBFLAG_POST,
@@ -1236,6 +1252,9 @@ struct poptOption *samba_cmdline_get_popt(enum smb_cmdline_popt_options opt)
        case SAMBA_CMDLINE_POPT_OPT_OPTION_ONLY:
                return popt_common_option;
                break;
+       case SAMBA_CMDLINE_POPT_OPT_CONFIG_ONLY:
+               return popt_common_config;
+               break;
        case SAMBA_CMDLINE_POPT_OPT_SAMBA:
                return popt_common_samba;
                break;
index 8fe746055c8cce516e59a297812bfee810fd19c9..47c3fe2953fac864f183d45fbbbc8ac3de93fc30 100644 (file)
@@ -41,6 +41,7 @@ enum samba_cmdline_config_type {
 enum smb_cmdline_popt_options {
        SAMBA_CMDLINE_POPT_OPT_DEBUG_ONLY = 1,
        SAMBA_CMDLINE_POPT_OPT_OPTION_ONLY,
+       SAMBA_CMDLINE_POPT_OPT_CONFIG_ONLY,
        SAMBA_CMDLINE_POPT_OPT_SAMBA,
        SAMBA_CMDLINE_POPT_OPT_CONNECTION,
        SAMBA_CMDLINE_POPT_OPT_CREDENTIALS,
@@ -166,6 +167,18 @@ poptContext samba_popt_get_context(const char * name,
        .descrip    = "Options:", \
        .argDescrip = NULL },
 
+/**
+ * @brief A popt structure for --configfile only.
+ */
+#define POPT_COMMON_CONFIG_ONLY { \
+       .longName   = NULL, \
+       .shortName  = '\0', \
+       .argInfo    = POPT_ARG_INCLUDE_TABLE, \
+       .arg        = samba_cmdline_get_popt(SAMBA_CMDLINE_POPT_OPT_CONFIG_ONLY), \
+       .val        = 0, \
+       .descrip    = "Config file:", \
+       .argDescrip = NULL },
+
 /**
  * @brief A popt structure for common samba options.
  */