aboutsummaryrefslogtreecommitdiff
path: root/src/util.h
diff options
context:
space:
mode:
authorJonas Schnelli <dev@jonasschnelli.ch>2018-04-08 16:24:22 +0200
committerJonas Schnelli <dev@jonasschnelli.ch>2018-04-08 16:24:30 +0200
commit25c56cdbe748ec72c1d101c74602cca6bc82eee6 (patch)
treeb82e1ea7836b97fed845796a2034ecbd11b6361c /src/util.h
parent7e23972d1f715f596e61e6e3775a3ada75604497 (diff)
parent77a733a99a75bdd04ad94df830e5bdc8a6040959 (diff)
downloadbitcoin-25c56cdbe748ec72c1d101c74602cca6bc82eee6.tar.xz
Merge #12878: [refactor] Config handling refactoring in preparation for network-specific sections
77a733a99 [tests] Add additional unit tests for -nofoo edge cases (Anthony Towns) af173c2be [tests] Check GetChainName works with config entries (Anthony Towns) fa27f1c23 [tests] Add unit tests for ReadConfigStream (Anthony Towns) 087c5d204 ReadConfigStream: assume the stream is good (Anthony Towns) 6d5815aad Separate out ReadConfigStream from ReadConfigFile (Anthony Towns) 834d30341 [tests] Add unit tests for GetChainName (Anthony Towns) 11b6b5b86 Move ChainNameFromCommandLine into ArgsManager and rename to GetChainName (Anthony Towns) Pull request description: This does a bit of refactoring of the configuration handling code in order to add additional tests to make adding support for [test]/[regtest] sections in the config file in #11862 easier. Should not cause any behaviour changes. Tree-SHA512: 8d2ce1449fc180de03414e7e569d1a21ba1e9f6564e13d3faf3961f710adc725fa0d4ab49b89ebd2baa11ea36ac5018377f693a84037d386a8b8697c9d6db3e9
Diffstat (limited to 'src/util.h')
-rw-r--r--src/util.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/util.h b/src/util.h
index f625a61d8b..3952461e48 100644
--- a/src/util.h
+++ b/src/util.h
@@ -228,6 +228,8 @@ protected:
std::map<std::string, std::vector<std::string>> mapMultiArgs;
std::unordered_set<std::string> m_negated_args;
+ void ReadConfigStream(std::istream& stream);
+
public:
void ParseParameters(int argc, const char*const argv[]);
void ReadConfigFile(const std::string& confPath);
@@ -306,6 +308,12 @@ public:
// been set. Also called directly in testing.
void ForceSetArg(const std::string& strArg, const std::string& strValue);
+ /**
+ * Looks for -regtest, -testnet and returns the appropriate BIP70 chain name.
+ * @return CBaseChainParams::MAIN by default; raises runtime error if an invalid combination is given.
+ */
+ std::string GetChainName() const;
+
private:
// Munge -nofoo into -foo=0 and track the value as negated.