enum {
OPT_DEBUG = 1,
OPT_SOURCE = 2,
+ OPT_USER = 3,
};
static struct argp_option options[] = {
{ "debug", OPT_DEBUG, NULL, 0, "Run in debug mode", 0 },
{ "source", OPT_SOURCE, "SOURCE", 0, "Only enable this source (for testing)", 0 },
+ { "user", OPT_USER, "USER", 0, "Run as user", 0 },
{ NULL },
};
// Collect all sources that should be enabled
static char** sources = NULL;
+static const char* user = "nobody";
+
static error_t parse(int key, char* arg, struct argp_state* state) {
td_ctx* ctx = state->input;
case OPT_SOURCE:
return td_strings_append(&sources, arg);
+ case OPT_USER:
+ user = arg;
+ break;
+
default:
return ARGP_ERR_UNKNOWN;
}