Cory Fields
c862d2ff22
build: split the non-gui startup routines into a new file
...
This will allow each to have its own main(), meaning that we can build a common
base client and simply link in the correct startup object to create the
appropriate binary.
2013-06-04 03:54:14 -04:00
Cory Fields
a9380c72be
build: prepare to move DetectShutdownThread
2013-06-04 03:53:40 -04:00
Philip Kaufmann
3260b4c090
remove GetBoolArg() fDefault parameter defaulting to false
...
- explicitly set the default of all GetBoolArg() calls
- rework getarg_test.cpp and util_tests.cpp to cover this change
- some indentation fixes
- move macdockiconhandler.h include in bitcoin.cpp to the "our headers"
section
2013-06-01 12:53:57 +02:00
Jeff Garzik
6bc6d57303
Merge pull request #2716 from laanwj/2013_05_30_getwork
...
Move pMiningKey init out of StartRPCThreads
2013-05-30 09:15:16 -07:00
Jeff Garzik
3fad76bf83
Merge pull request #2642 from sipa/rightgenesis
...
Check for correct genesis
2013-05-30 08:04:02 -07:00
Jeff Garzik
1803fa1db9
Merge pull request #2693 from jgarzik/checkpoint-bool
...
Replace repeated GetBoolArg() calls with Checkpoint::fEnabled variable set once at init time
2013-05-30 07:44:42 -07:00
Wladimir J. van der Laan
d98bf10f23
Move pMiningKey init out of StartRPCThreads
...
This commit decouples the pMiningKey initialization and shutdown from the RPC
threads.
`getwork` and `getblocktemplate` rely on pMiningKey, and can also be ran
from the debug window in the UI even when the RPC server is not running.
Solves issue #2706 .
2013-05-30 16:41:35 +02:00
Pieter Wuille
d315eb0a76
Merge pull request #2695 from robbak/init_cpp-explicit_cast
...
Explictly cast calculation to int, to allow std::min to work.
2013-05-29 19:41:51 -07:00
Gavin Andresen
dbc6dea1b2
Fix crash-at-shutdown if exiting before initializing wallet
2013-05-24 15:52:52 -04:00
Jeff Garzik
f0d8a52cc0
Replace repeated GetBoolArg() calls with Checkpoint::fEnabled variable
...
set once at init time.
2013-05-24 11:10:53 -04:00
Robert Backhaus
03f498080a
Explictly cast calculation to int, to allow std::max to work.
2013-05-24 23:40:51 +10:00
Pieter Wuille
95c7db3dbf
More bestblock records in wallets
...
Write bestblock records in wallets:
* Every 20160 blocks synced, no matter what (before: none during IBD)
* Every 144 blocks after IBD (before: for every block, slow)
* When creating a new wallet
* At shutdown
This should result in far fewer spurious rescans.
2013-05-22 20:59:36 +02:00
Pieter Wuille
5d274c9927
Check for correct genesis
...
At startup, check that the expected genesis is loaded. This should prevent
cases where accidentally a datadir from the wrong network is loaded
(testnet vs mainnet, e.g.).
2013-05-12 13:21:03 +02:00
Gavin Andresen
33edd0a477
Merge pull request #2577 from gavinandresen/fee_bandaid
...
Treat dust outputs as non-standard, un-hardcode TX_FEE constants
2013-05-04 10:15:39 -07:00
Pieter Wuille
f309cb76c2
Merge pull request #2606 from gavinandresen/threadfix
...
Exit cleanly if AppInit2 returns false
2013-05-04 07:43:15 -07:00
Pieter Wuille
674ae7a26f
Merge pull request #2558 from sipa/nodbdir
...
Some database/-related recovery improvements
2013-05-03 15:17:33 -07:00
Gavin Andresen
61a845dcb6
Merge pull request #2566 from sipa/nodef
...
Allow the default key to be unavailable
2013-05-03 14:33:02 -07:00
Pieter Wuille
aa6b3061ee
Merge pull request #2603 from sipa/nobestblock
...
Bugfix: if no bestblock record is present, do a -rescan
2013-05-03 14:08:46 -07:00
Philip Kaufmann
110257a631
small init.cpp changes (strings / Winsock init)
...
- add a check that requested Winsock version is available
- update some strings
- remove -gen=0 from help-message as this is default
2013-05-03 19:42:12 +02:00
Gavin Andresen
000dc55181
Un-hardcode TX_FEE constants
...
Allow setting of MIN_TX_FEE / MIN_RELAY_TX_FEE with
-mintxfee / -mintxrelayfee
Default values are the same (0.0001 BTC).
2013-05-03 10:54:31 -04:00
Gavin Andresen
d605bc4cd1
Exit cleanly if AppInit2 returns false
...
Bitcoin-Qt could core dump if application initialization failed in certain ways.
I double-fixed this:
1) qt/bitcoin.cpp now shuts down core threads cleanly if AppInit2 returns false
2) init.cpp now exits before StartNode() if strErrors is set (no reason to StartNode if we're just going to exit immediately anyway).
Tested by triggering all of the various ways AppInit2 can fail, either by passing bogus command-line arguments or just recompiling tweaked code to simulate failure.
This is a partial fix for #2480
2013-05-02 12:26:33 -04:00
Pieter Wuille
2aceeb01a9
Bugfix: if no bestblock record is present, do a -rescan
...
It is possible to have a wallet.dat file without any bestblock
record at all (if created offline, for example), which - when
loaded into a client with a up-to-date chain - does no rescan and
shows no transactions.
Also make sure to write the current best block after a rescan, so
it isn't necessary twice.
2013-05-01 19:21:55 +02:00
Gavin Andresen
67f93dc513
Merge pull request #2568 from sipa/rlimit
...
Try to increase file descriptor rlimit if necessary
2013-04-29 13:25:13 -07:00
David Serrano
ebd7e8bf91
Accept negative -par values to leave N CPUs free.
2013-04-29 19:35:47 +02:00
Pieter Wuille
ba29a5590b
Try to increase file descriptor rlimit if necessary
...
As the default can be too low, especially on OSX.
2013-04-29 01:46:24 +02:00
Wladimir J. van der Laan
d23fa49c52
move WSAStartup to init
...
WSAStartup should be called before using any other socket
functions. BindListenPort is not called if not listening.
Closes #2585 .
2013-04-28 08:54:27 +02:00
Pieter Wuille
360cfe142c
Allow the default key to be unavailable
...
This solves the issue where no default key can be added after -salvagewallet.
2013-04-25 19:36:10 +02:00
Pieter Wuille
1859aafef0
Try moving database/ away in case of failure
2013-04-24 01:37:19 +02:00
Philip Kaufmann
e79110822e
remove duplicate bitdb.Open() code from init
...
- remove code from step 7, which we already have in step 5 of init
2013-04-24 00:49:50 +02:00
Wladimir J. van der Laan
212b42c623
qt: don't show rpcconnect command line option in help
...
GUI can't connect to RPC. Showing this option in the help confuses
people, so remove it.
2013-04-11 22:29:05 +02:00
Philip Kaufmann
6a270c5f81
translations update 2013-04-08
...
- updates for bitcoinstrings.cpp and bitcoin_en.ts
- changes help text for -rpcthreads to match -par
- fix a small glitch with -par to be "-par=<n>"
2013-04-08 08:50:03 +02:00
Philip Kaufmann
b001c87126
small indentation, space, formatting fixes (no code changes)
2013-04-06 02:29:33 +02:00
Gavin Andresen
723035bb68
Have Qt poll for shutdown requested, the QT way.
2013-04-03 19:58:47 -04:00
Gavin Andresen
b31499ec72
Clean up shutdown process
2013-04-03 19:57:53 -04:00
Gavin Andresen
21eb5adadb
Port Thread* methods to boost::thread_group
2013-04-03 19:57:13 -04:00
Gavin Andresen
1b43bf0d3a
Rename util.h Sleep --> MilliSleep
...
Two reasons for this change:
1. Need to always use boost::thread's sleep, even on Windows, so the
sleeps can be interrupted (prior code used Windows' built-in Sleep).
2. I always forgot what units the old Sleep took.
2013-04-03 14:04:21 -04:00
Gavin Andresen
c8c2fbe07f
Shutdown cleanup prep-work
...
Create a boost::thread_group object at the qt/bitcoind main-loop level
that will hold pointers to all the main-loop threads.
This will replace the vnThreadsRunning[] array.
For testing, ported the BitcoinMiner threads to use its
own boost::thread_group.
2013-04-03 14:04:21 -04:00
Gavin Andresen
06db61f09e
Merge pull request #2431 from jgarzik/gen-bitcoins-init
...
Move GenerateBitcoins() call out of net.cpp's StartNode()
2013-04-02 08:56:57 -07:00
Wladimir J. van der Laan
cf4d976f0e
Merge pull request #2387 from Diapolo/translations
...
translations update 2013-03-19 (bitcoinstrings.cpp / bitcoin_en.ts)
2013-04-01 07:45:11 -07:00
Jeff Garzik
a0cafb7945
Move GenerateBitcoins() call out of net.cpp's StartNode()
...
The internal miner is closely bound to the wallet engine,
not the blockchain engine.
2013-03-31 01:54:27 -04:00
Jeff Garzik
ea83336f4e
Merge pull request #2411 from TheBlueMatt/master
...
(finally) Remove IRC Seed support now that lfnet is down.
2013-03-29 08:03:18 -07:00
Jeff Garzik
8455310a7b
Merge pull request #2385 from gavinandresen/alertnotify
...
alertnotify, so bitcoind users can get email/sms/whatever of alerts
2013-03-29 07:49:56 -07:00
Matt Corallo
c2efd981aa
(finally) Remove IRC Seed support now that lfnet is down.
2013-03-24 19:38:19 -04:00
Philip Kaufmann
967125ca4a
blockchain -> block chain (used everywhere else)
2013-03-21 08:23:23 +01:00
Gavin Andresen
e5f163a041
-alertnotify=<cmd>
...
Runs a shell command when an AppliesToMe() alert is received.
%s in the <cmd> string is replaced with the alert.strStatusBar
message.
2013-03-19 15:16:30 -04:00
Gregory Maxwell
124f823714
Deleting everything except the wallet will not help recover from BDB errors.
...
Now that the wallet is the only thing in BDB any DB open errors must be
from the wallet itself-- so deleting everything else will not likely help.
2013-03-19 10:11:43 -07:00
Philip Kaufmann
e1ca89df1f
harmonize 2 init messages and remove one
...
- harmonize the database related init messages
- as we have a thread for importing blocks, that init message is obsolete
2013-03-13 09:17:59 +01:00
Wladimir J. van der Laan
0bd573d666
Merge pull request #2186 from Diapolo/misc_stuff
...
small changes in init, main, checkpoints.h and bitcoin-qt.pro
2013-02-23 23:52:27 -08:00
Gavin Andresen
49e332f6fc
Merge pull request #1974 from kjj2/walletnotify
...
Add -walletnotify to call an external script on wallet transactions
2013-02-22 08:47:04 -08:00
Mike Hearn
0556bb22e1
Shorten a startup message. It was getting truncated and looks ugly.
2013-02-20 16:35:30 +01:00