diff options
author | Wladimir J. van der Laan <laanwj@gmail.com> | 2013-12-20 11:48:22 +0100 |
---|---|---|
committer | Wladimir J. van der Laan <laanwj@gmail.com> | 2013-12-20 16:07:33 +0100 |
commit | 8b9adca4461d0cb6bdfca7b74228d430b9b9d116 (patch) | |
tree | 8c808c370f97b626bc9318a7ece95de2a6525435 /src | |
parent | 9e508b55885ba747dce2e3fd5ef4c05572cda0b0 (diff) |
Allow `-noserver` with bitcoind
Allow running bitcoind without server.
- Default to -server mode (of course) for bitcoind with SoftSetBoolArg
- Remove fForceServer argument from AppInit2
- Move fDaemon to a static variable in bitcoind
Diffstat (limited to 'src')
-rw-r--r-- | src/bitcoind.cpp | 7 | ||||
-rw-r--r-- | src/init.cpp | 16 | ||||
-rw-r--r-- | src/init.h | 2 | ||||
-rw-r--r-- | src/qt/bitcoin.cpp | 2 | ||||
-rw-r--r-- | src/util.h | 1 |
5 files changed, 11 insertions, 17 deletions
diff --git a/src/bitcoind.cpp b/src/bitcoind.cpp index de71fde9bc..5d87218844 100644 --- a/src/bitcoind.cpp +++ b/src/bitcoind.cpp @@ -30,6 +30,8 @@ * Use the buttons <code>Namespaces</code>, <code>Classes</code> or <code>Files</code> at the top of the page to start navigating the code. */ +static bool fDaemon; + void DetectShutdownThread(boost::thread_group* threadGroup) { bool fShutdown = ShutdownRequested(); @@ -108,6 +110,8 @@ bool AppInit(int argc, char* argv[]) fDaemon = GetBoolArg("-daemon", false); if (fDaemon) { + fprintf(stdout, "Bitcoin server starting\n"); + // Daemonize pid_t pid = fork(); if (pid < 0) @@ -127,9 +131,10 @@ bool AppInit(int argc, char* argv[]) fprintf(stderr, "Error: setsid() returned %d errno %d\n", sid, errno); } #endif + SoftSetBoolArg("-server", true); detectShutdownThread = new boost::thread(boost::bind(&DetectShutdownThread, &threadGroup)); - fRet = AppInit2(threadGroup, true); + fRet = AppInit2(threadGroup); } catch (std::exception& e) { PrintExceptionContinue(&e, "AppInit()"); diff --git a/src/init.cpp b/src/init.cpp index b5d784dc58..275985604e 100644 --- a/src/init.cpp +++ b/src/init.cpp @@ -242,10 +242,7 @@ std::string HelpMessage(HelpMessageMode hmm) strUsage += " -printtoconsole " + _("Send trace/debug info to console instead of debug.log file") + "\n"; strUsage += " -regtest " + _("Enter regression test mode, which uses a special chain in which blocks can be solved instantly.") + "\n"; strUsage += " " + _("This is intended for regression testing tools and app development.") + "\n"; - if (hmm == HMM_BITCOIN_QT) - { - strUsage += " -server " + _("Accept command line and JSON-RPC commands") + "\n"; - } + strUsage += " -server " + _("Accept command line and JSON-RPC commands") + "\n"; if (hmm == HMM_BITCOIND) { @@ -356,7 +353,7 @@ void ThreadImport(std::vector<boost::filesystem::path> vImportFiles) /** Initialize bitcoin. * @pre Parameters should be parsed and config file should be read. */ -bool AppInit2(boost::thread_group& threadGroup, bool fForceServer) +bool AppInit2(boost::thread_group& threadGroup) { // ********************************************************* Step 1: setup #ifdef _MSC_VER @@ -483,11 +480,7 @@ bool AppInit2(boost::thread_group& threadGroup, bool fForceServer) else if (nScriptCheckThreads > MAX_SCRIPTCHECK_THREADS) nScriptCheckThreads = MAX_SCRIPTCHECK_THREADS; - if (fDaemon || fForceServer) - fServer = true; - else - fServer = GetBoolArg("-server", false); - + fServer = GetBoolArg("-server", false); fPrintToConsole = GetBoolArg("-printtoconsole", false); fLogTimestamps = GetBoolArg("-logtimestamps", true); #ifdef ENABLE_WALLET @@ -569,9 +562,6 @@ bool AppInit2(boost::thread_group& threadGroup, bool fForceServer) LogPrintf("Using at most %i connections (%i file descriptors available)\n", nMaxConnections, nFD); std::ostringstream strErrors; - if (fDaemon) - fprintf(stdout, "Bitcoin server starting\n"); - if (nScriptCheckThreads) { LogPrintf("Using %u threads for script verification\n", nScriptCheckThreads); for (int i=0; i<nScriptCheckThreads-1; i++) diff --git a/src/init.h b/src/init.h index 018d2d5ea3..2f56923055 100644 --- a/src/init.h +++ b/src/init.h @@ -20,7 +20,7 @@ extern CWallet* pwalletMain; void StartShutdown(); bool ShutdownRequested(); void Shutdown(); -bool AppInit2(boost::thread_group& threadGroup, bool fForceServer); +bool AppInit2(boost::thread_group& threadGroup); /* The help message mode determines what help message to show */ enum HelpMessageMode diff --git a/src/qt/bitcoin.cpp b/src/qt/bitcoin.cpp index 657b42d16a..9565d3ef7a 100644 --- a/src/qt/bitcoin.cpp +++ b/src/qt/bitcoin.cpp @@ -289,7 +289,7 @@ int main(int argc, char *argv[]) QObject::connect(pollShutdownTimer, SIGNAL(timeout()), guiref, SLOT(detectShutdown())); pollShutdownTimer->start(200); - if(AppInit2(threadGroup, false)) + if(AppInit2(threadGroup)) { { // Put this in a block, so that the Model objects are cleaned up before diff --git a/src/util.h b/src/util.h index 3922872e06..c6a1318fd7 100644 --- a/src/util.h +++ b/src/util.h @@ -121,7 +121,6 @@ extern std::map<std::string, std::vector<std::string> > mapMultiArgs; extern bool fDebug; extern bool fPrintToConsole; extern bool fPrintToDebugLog; -extern bool fDaemon; extern bool fServer; extern std::string strMiscWarning; extern bool fNoListen; |