MCPcopy Create free account
hub / github.com/ElementsProject/lightning / initial_config_opts

Function initial_config_opts

common/configdir.c:309–414  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

307}
308
309struct configvar **initial_config_opts(const tal_t *ctx,
310 int *argc, char *argv[],
311 bool remove_args,
312 char **config_filename,
313 char **config_basedir,
314 char **config_netdir,
315 char **rpc_filename,
316 char **setconfig_file)
317{
318 struct configvar **cmdline_cvs, **config_cvs, **cvs;
319
320 options_ctx = ctx;
321
322 /* This helps opt_usage. */
323 opt_argv0 = argv[0];
324
325 /* Default chain (a global) is bitcoin. */
326 chainparams = chainparams_for_network("bitcoin");
327
328 /* First, they could specify a config, or base dir. */
329 *config_filename = NULL;
330 opt_register_early_arg("--conf=<file>",
331 opt_set_config_filename,
332 /* Doesn't show if it's NULL! */
333 opt_show_charp,
334 config_filename,
335 "Specify configuration file");
336 *config_basedir = default_base_configdir(ctx);
337 opt_register_early_arg("--lightning-dir=<dir>",
338 opt_set_lightning_dir, opt_show_charp,
339 config_basedir,
340 "Set base directory: network-specific subdirectory is under here");
341 opt_register_early_arg("--network", opt_set_network, opt_show_network,
342 NULL,
343 "Select the network parameters (bitcoin, testnet,"
344 " signet, or regtest)");
345 opt_register_early_noarg("--testnet",
346 opt_set_specific_network, "testnet",
347 "Alias for --network=testnet");
348 opt_register_early_noarg("--testnet4",
349 opt_set_specific_network, "testnet4",
350 "Alias for --network=testnet4");
351 opt_register_early_noarg("--signet",
352 opt_set_specific_network, "signet",
353 "Alias for --network=signet");
354 opt_register_early_noarg("--mainnet",
355 opt_set_specific_network, "bitcoin",
356 "Alias for --network=bitcoin");
357 opt_register_early_noarg("--regtest",
358 opt_set_specific_network, "regtest",
359 "Alias for --network=regtest");
360 /* Handle --version (and exit) here too */
361 opt_register_version();
362
363 /* Allow them to override rpc-file too. */
364 *rpc_filename = default_rpcfile(ctx);
365 opt_register_early_arg("--rpc-file", opt_set_talstr, opt_show_charp,
366 rpc_filename,

Callers 2

handle_early_optsFunction · 0.85
minimal_config_optsFunction · 0.85

Calls 11

chainparams_for_networkFunction · 0.85
default_base_configdirFunction · 0.85
opt_register_versionFunction · 0.85
default_rpcfileFunction · 0.85
gather_cmdline_argsFunction · 0.85
parse_configvarsFunction · 0.85
gather_file_configvarsFunction · 0.85
path_joinFunction · 0.85
path_cwdFunction · 0.85
configvar_joinFunction · 0.85
parse_configvars_earlyFunction · 0.85

Tested by

no test coverage detected