Jeff Garzik
5d0f7c4f47
Merge pull request #1381 from jgarzik/check-deser
...
Prevent crashes due to missing or corrupted database records
2012-05-22 14:39:49 -07:00
Jeff Garzik
78eb2789b2
ProcessMessage(): remove duplicate orphan tx debug message
2012-05-22 15:33:04 -04:00
Jeff Garzik
8fe791e4e2
Prevent crashes due to missing or corrupted blk????.dat records
...
In LoadExternalBlockFile(), errors are already caught... silently.
Add a warning message, even though we do not abort the program due to
load error.
2012-05-22 15:23:17 -04:00
Jeff Garzik
f94b64c2f3
Prevent crashes due to missing or corrupted database records
...
Any problems seen during deserialization will throw an uncaught
exception, crashing the entire bitcoin process. Properly return an
error instead, so that we may at least log the error and gracefully
shutdown other portions of the app.
2012-05-22 15:12:52 -04:00
Jeff Garzik
7b671f52e0
Define BOOST_SPIRIT_THREADSAFE in all makefiles
...
rather than at each include site.
Fixes #1371
2012-05-21 22:25:54 -04:00
Jeff Garzik
ce4cc630c2
Merge pull request #1367 from jgarzik/db-private
...
BDB: restore DB_PRIVATE flag to environment
2012-05-21 09:40:30 -07:00
Jeff Garzik
9c137aaccf
BDB: restore DB_PRIVATE flag to environment
...
Satoshi's commits fdbf76d and c8ad9b8 (SVN import) removed the
DB_PRIVATE flag from the environment. In part, this enables processes
other than bitcoind to examine the active database environment.
However, this incurs a slight performance penalty versus working
entirely within application memory (DB_PRIVATE). Because bitcointools
and other direct-BDB-accessing tools are not used by the vast
majority of users, prefer to default with DB_PRIVATE with the option
of disabling it if needed via -privdb=0.
2012-05-21 12:38:45 -04:00
Jeff Garzik
ffe8b77a61
Further CDBEnv encapsulation work.
2012-05-19 20:46:52 -04:00
Jeff Garzik
94e34fa0ad
CDB::CDB: properly initialize activeTxn to NULL
2012-05-19 20:45:39 -04:00
Jeff Garzik
8b1202c52c
Remove unused nested BDB transaction support
2012-05-19 20:45:39 -04:00
Jeff Garzik
24b57e3c6a
Create CDBEnv::TxnBegin(), and use it in CDB::TxnBegin()
2012-05-19 20:44:31 -04:00
Jeff Garzik
cd9696fc97
Encapsulate BDB environment inside new CDBEnv class
...
Cleans up and organizes several scattered functions and variables related to
the BDB env. Class CDBInit() existed to provide a
guaranteed-via-C++-destructor cleanup of the db environment.
A formal CDBEnv class provides all of this inside a single wrapper.
2012-05-19 20:43:19 -04:00
Jeff Garzik
b52a270538
Reorganize(): remove spurious TxnAbort()
...
If Reorganize() fails, then its caller, CBlock::SetBestChain(),
will call TxnAbort().
Redundant TxnAbort() calls are harmless. The second will return an
error return value, with no other side effects. TxnAbort() return
values are generally never checked. The impact is nil.
2012-05-19 20:40:43 -04:00
Jeff Garzik
cde87ee75c
Merge pull request #1360 from jgarzik/datasync
...
Default to DB_TXN_WRITE_NOSYNC for all transactional operations
2012-05-19 12:33:19 -07:00
Jeff Garzik
394b9298fa
Default to DB_TXN_WRITE_NOSYNC for all transactional operations
...
* This is safer than DB_TXN_NOSYNC, and does not appear to impact
performance.
* Applying this to the dbenv is necessary to avoid many fdatasync(2)
calls on db 5.x
* We carefully and thoroughly flush databases upon shutdown and
other important events already.
2012-05-19 01:25:06 -04:00
Jeff Garzik
d6615a54c6
Merge pull request #1350 from jgarzik/del-deprecated
...
JSON-RPC: remove 'getblocknumber' deprecated RPC
2012-05-18 08:26:40 -07:00
Jeff Garzik
47f48a658d
JSON-RPC: remove 'getblocknumber' deprecated RPC
...
RPC 'getblockcount' should be used instead.
2012-05-17 23:43:00 -04:00
Jeff Garzik
6d64a0bfed
Make orphan logging more verbose, displaying mapOrphanTransactions.size()
...
Old log message:
storing orphan tx df2244f6bc
New log message:
storing orphan tx df2244f6bc (mapsz 51)
Also, trim a few trailing whitespace in main.cpp.
2012-05-17 20:36:55 -04:00
Jeff Garzik
6c513a45d5
Merge pull request #1340 from rebroad/DBFlushDurationReport
...
Report how long DBFlush took.
2012-05-17 17:21:01 -07:00
Jeff Garzik
c0a360ce49
Merge pull request #1345 from Diapolo/strnicmp_Win32
...
Win32: use _strnicmp (ISO C++) instead of deprecated strnicmp (POSIX)
2012-05-17 15:53:38 -07:00
Jeff Garzik
985302c7cc
Merge pull request #1335 from rebroad/IgnoreBuildDir
...
Add build directory to .gitignore, so that it's not tracked.
2012-05-17 11:32:47 -07:00
Jeff Garzik
7563424f32
Merge pull request #1334 from rebroad/Exiting2Exited
...
Corrected grammar. As per Principle Of Least Surprise.
2012-05-17 11:29:09 -07:00
Jeff Garzik
0c7fd94585
Merge pull request #1332 from Diapolo/fix_RenameOver_FileCommit_Win32
...
fix RenameOver() and FileCommit() functions, to not generate compilation errors
2012-05-17 09:34:12 -07:00
Jeff Garzik
cf2f7c30a3
Merge pull request #1295 from jgarzik/txn-retval
...
[FIX] Always check return values of TxnBegin() and TxnCommit()
2012-05-17 08:49:16 -07:00
Jeff Garzik
d17ac27a72
Merge pull request #1316 from jgarzik/dead-code
...
Remove dead code: CTxDB::EraseBlockIndex(), CBlockIndex::EraseBlockFromDisk()
2012-05-17 08:47:54 -07:00
Jeff Garzik
b56843b253
Merge pull request #1198 from jgarzik/addrman
...
Replace BDB-managed addr.dat with bitcoin-managed peers.dat
2012-05-17 08:46:33 -07:00
Jeff Garzik
928d3a011c
CAddrDB: Replace BDB-managed addr.dat with internally managed peers.dat
2012-05-16 22:11:19 -04:00
Jeff Garzik
768e5d52fb
Add new utility functions FileCommit(), RenameOver()
2012-05-16 19:25:25 -04:00
Jeff Garzik
a7d45c5a7a
Remove dead code: CTxDB::EraseBlockIndex(), CBlockIndex::EraseBlockFromDisk()
2012-05-15 13:36:25 -04:00
Jeff Garzik
0fb78eae34
Always check return values of TxnBegin() and TxnCommit()
2012-05-14 01:11:11 -04:00
Jeff Garzik
28d257da11
Merge pull request #1287 from sipa/noirc6
...
Only encode IPv4 addresses in IRC nicks
2012-05-13 11:48:27 -07:00
Jeff Garzik
80af836ce0
Merge pull request #1277 from Diapolo/IPv6_IPv4_strings
...
use "IPv6" and "IPv4" in strings as these are the official spellings
2012-05-12 18:59:31 -07:00
Jeff Garzik
d960a335f8
Merge pull request #1266 from Diapolo/tab_to_space
...
convert 4 tabs into 4 x 4 spaces in bitcoinrpc.cpp
2012-05-12 08:02:57 -07:00
Jeff Garzik
b34c5f3c0f
Merge pull request #1101 from jgarzik/http11
...
Multithreaded JSON-RPC with HTTP 1.1 Keep-Alive support
2012-05-11 09:57:08 -07:00
Jeff Garzik
271f9faf9e
Merge pull request #1254 from jgarzik/mempool-logging
...
CTxMemPool: consolidate two frequently-printed debug.log lines into one
2012-05-11 07:53:08 -07:00
Jeff Garzik
33a53bc13b
CTxMemPool::accept(): do not log FetchInputs failure redundantly
...
FetchInputs already logs failures internally. This commit makes the logging
more consistent with other FetchInputs callsites also.
Prior to this commit, two log lines were logged for one condition:
ERROR: FetchInputs() : de15fde415 mempool Tx prev not found a2c75da227
ERROR: CTxMemPool::accept() : FetchInputs failed de15fde415
After this commit, only one line is logged:
ERROR: FetchInputs() : e0507ab2c7 mempool Tx prev not found 9a620262cd
2012-05-10 20:31:46 -04:00
Jeff Garzik
133dce6a37
CTxMemPool: consolidate two frequently-printed debug.log lines into one
...
Previously, a single TX would trigger two log lines in quick succession,
addUnchecked(): size 152
CTxMemPool::accept() : accepted c4cfdd48b7
After this change, only one log line is used:
CTxMemPool::accept() : accepted 98885e65db (poolsz 26)
2012-05-10 20:20:31 -04:00
Jeff Garzik
9d9aae0396
Merge pull request #1237 from gmaxwell/master
...
Kill warning from unavoidable signed/unsigned comparison in bitcoinrpc.cpp.
2012-05-09 07:59:13 -07:00
Jeff Garzik
11b729d8a2
Merge pull request #1134 from Diapolo/util-updates
...
small util.cpp/h changes
2012-05-09 07:54:25 -07:00
Jeff Garzik
d54e6e8359
Merge pull request #1225 from Diapolo/net_cpp_if_clause
...
fix an incorrect if-clause in net.cpp
2012-05-09 07:50:27 -07:00
Jeff Garzik
1302257e5d
makefile.unix: add -Wall to default CXXFLAGS
...
Additionally, remove -Wno-sign-compare from alt CXXFLAGS, as
that is no longer a problem.
2012-05-08 21:02:28 -04:00
Jeff Garzik
ab89d75daf
Merge pull request #1226 from Diapolo/init_h_rem_obsolete
...
remove 2 obsolete functions from init.h that moved to util.h
2012-05-08 15:18:08 -07:00
Jeff Garzik
a2ea797593
Merge pull request #1180 from jgarzik/sign-compare
...
Fix final sign comparison warnings
2012-05-08 13:50:27 -07:00
Jeff Garzik
28bddf4590
Merge pull request #1214 from TheBlueMatt/debian
...
Update changelog to match reality.
2012-05-06 18:35:42 -07:00
Jeff Garzik
ca97bde8ff
Merge pull request #1171 from Diapolo/fix_compiler_warn
...
fix 2 compiler warnings
2012-05-01 15:02:41 -07:00
Jeff Garzik
024fa1cb44
EvalScript(): cast to avoid signed/unsigned warning
2012-05-01 17:57:12 -04:00
Jeff Garzik
061a001590
ThreadSocketHandler2(): cast to avoid signed/unsigned warning
2012-05-01 17:54:52 -04:00
Jeff Garzik
24de922636
CDiskTxPos, CInPoint, COutPoint: cast null value (-1) to unsigned int
...
to eliminate signed/unsigned comparison warnings
2012-05-01 17:49:17 -04:00
Jeff Garzik
e19ccfa657
Merge pull request #1177 from laanwj/2012_05_remove_duplicate_securestring
...
remove duplicate definition of SecureString in util.h
2012-05-01 10:05:00 -07:00
Jeff Garzik
bd51e8ef8a
Merge pull request #1173 from Diapolo/init_cpp_comment_upd
...
remove references to bitcoin-wx from comment in init.cpp
2012-05-01 08:29:10 -07:00
Jeff Garzik
c2e8c8acd8
Merge pull request #1140 from jgarzik/sign-compare
...
Address many more sign comparison warnings
2012-04-23 21:33:29 -07:00
Jeff Garzik
735a60698c
Change signed->unsigned at 3 code sites
...
This resolves signed/unsigned comparison warnings.
2012-04-23 14:14:36 -04:00
Jeff Garzik
5aa0b23825
CBlock::WriteToDisk() properly checks ftell(3) for error return
...
Rather than storing ftell(3)'s return value -- a long -- in an
unsigned int, we store and check a properly typed temp. Then, assured a
non-negative value, we store in nBlockPosRet.
2012-04-23 14:14:36 -04:00
Jeff Garzik
1d8c7a9557
Add casts for unavoidable signed/unsigned comparisons
...
At these code sites, it is preferable to cast rather than change
a variable's type.
2012-04-23 14:14:36 -04:00
Jeff Garzik
c0a0a93d02
Test ScriptSigArgsExpected() for error, before accumulating return value
2012-04-23 14:14:36 -04:00
Jeff Garzik
faf705a42a
Prefer 'unsigned int' for loop index variables tested against ::size()
...
C++ STL ::size() generally returns unsigned, which implies that "int idx"
style of loop variable will generate a signed-vs-unsigned comparison warning
when testing the loop exit condition "idx < blah.size()"
Update areas of the bitcoin code where loop variables may be more properly and
correctly defined as unsigned.
2012-04-22 13:22:39 -04:00
Jeff Garzik
dd21ce5f1b
Merge pull request #1094 from jgarzik/already-have-locking
...
Locking fix for AlreadyHave()
2012-04-17 09:23:49 -07:00
Jeff Garzik
865a0c1674
Merge pull request #1081 from jgarzik/pong
...
BIP 0031: pong message
2012-04-17 08:51:17 -07:00
Jeff Garzik
5a701eb7ea
Merge pull request #1104 from laanwj/2012_04_clang
...
Enable and fix most compilation warnings
2012-04-15 11:39:15 -07:00
Jeff Garzik
fced2231f8
Merge pull request #1084 from dooglus/validate_secret
...
importprivkey doesn't check that it is given a private key
2012-04-15 09:25:29 -07:00
Jeff Garzik
c99ddfaa22
Merge pull request #1100 from luke-jr/qrcode_errchk
...
Bugfix: Check that QRcode_encodeString didn't return NULL (error)
2012-04-15 08:31:22 -07:00
Jeff Garzik
22014c31e5
Merge pull request #1093 from jgarzik/tx-opt
...
Database micro-optimization for "tx" network message
2012-04-14 08:50:43 -07:00
Jeff Garzik
93e447b631
BIP 0031: pong message
...
Add a pong message that is sent in reply to a ping. It echoes back a nonce
field that is now added to the ping message. Send a nonce of zero in ping
messages.
Original author: Mike Hearn @ Google
Modified Mike's change to introduce a mild form of protocol documentation in
version.h.
2012-04-12 12:11:56 -04:00
Jeff Garzik
4dcad1d294
Merge pull request #536 from TheBlueMatt/build-updates
...
Update release-process.txt with gitian release instructions.
2011-09-28 09:27:25 -07:00
Jeff Garzik
ab1bbe5492
Merge pull request #533 from alexwaters/readme
...
Updated readme file with timers.
2011-09-27 20:47:06 -07:00
Jeff Garzik
f8937b2d3b
Merge pull request #528 from TheBlueMatt/gitian-downloader
...
Add win32 gitian download config.
2011-09-23 10:56:25 -07:00
Jeff Garzik
864e49a12c
Merge pull request #525 from TheBlueMatt/master
...
Update binary mo to match latest po translation.
2011-09-22 09:48:02 -07:00
Jeff Garzik
700f942692
Merge pull request #522 from sipa/minorfix
...
SocketHandler thread can be detached
2011-09-20 11:47:02 -07:00
Jeff Garzik
7337b343cd
Merge pull request #519 from dabaopku/master
...
Chinese Simp translation update
2011-09-17 09:24:54 -07:00
Jeff Garzik
53c6c12886
Merge pull request #512 from paraipanakos/master
...
Spanish translation update
2011-09-13 13:21:09 -07:00
Jeff Garzik
38fd861fff
Merge pull request #511 from mibe/translation-de
...
Updated German translation
2011-09-11 18:45:00 -07:00
Jeff Garzik
ff4bd3977a
Merge pull request #503 from TheBlueMatt/translatefix
...
Add binary mo for new translation.
2011-09-06 12:03:08 -07:00
Jeff Garzik
074653973e
Merge pull request #502 from vsrinivas/master
...
Define MSG_NOSIGNAL to 0 when it is not defined. Gets OpenBSD building.
2011-09-06 11:58:42 -07:00
Jeff Garzik
04f9a37c71
Merge pull request #501 from paraipanakos/master
...
Added Romanian translation
2011-09-06 11:50:56 -07:00
Jeff Garzik
3a7c4d89de
Merge pull request #495 from alexwaters/readme
...
Updated readme file
2011-09-05 20:01:55 -07:00
Jeff Garzik
712077a760
Merge pull request #486 from TheBlueMatt/translatefix
...
Update binary mos to latest translations.
2011-09-02 10:12:20 -07:00
Jeff Garzik
21189a42a7
Merge pull request #463 from TheBlueMatt/encreadme
...
Encryption readme update and minor rpc.cpp fixes
2011-08-31 09:32:42 -07:00
Jeff Garzik
ce39dfe425
Merge pull request #475 from ovdeathiam/patch-1
...
Edited locale/pl/LC_MESSAGES/bitcoin.po via GitHub
2011-08-31 09:23:30 -07:00
Jeff Garzik
8af99d1893
Merge pull request #464 from TheBlueMatt/upnp1.6
...
Upgrade dependancies and tweak build process.
2011-08-31 09:16:56 -07:00
Jeff Garzik
eb20f3c8f5
Merge pull request #448 from sipa/cbitcoinaddress
...
avoid strAddress + validity checks
2011-08-04 11:47:15 -07:00
Jeff Garzik
95699e1730
Merge pull request #446 from WakiMiko/upnp-desc
...
Identify as "Bitcoin + version number" when mapping UPnP port
2011-08-04 11:40:44 -07:00
Jeff Garzik
32de8cd062
Merge pull request #451 from TheBlueMatt/tornolisten
...
Don't listen if on TOR (resolves #441 ).
2011-08-04 11:40:06 -07:00
Jeff Garzik
a9ba47101a
Merge pull request #403 from sipa/cbitcoinaddress
...
keys indexed by address + introduced CBitcoinaddress
2011-07-24 15:38:38 -07:00
Jeff Garzik
c2da35319d
Merge pull request #423 from TheBlueMatt/mapalreadyaskedforfix
...
Actually use mapAlreadyAskedFor.
2011-07-21 19:05:38 -07:00
Jeff Garzik
133ccbe408
Merge pull request #418 from EricJ2190/master
...
Update makefile.vc for wallet encryptions.
2011-07-15 21:11:34 -07:00
Jeff Garzik
5b0fc31b1c
Merge pull request #414 from spiechu/polish-translation
...
added polish wallet encryption messages
2011-07-14 20:43:22 -07:00
Jeff Garzik
065d743019
Merge pull request #413 from TheBlueMatt/loadwalletret
...
Fix bad return values in LoadWallet.
2011-07-14 09:37:50 -07:00
Jeff Garzik
60d2f8662c
Merge pull request #409 from TheBlueMatt/master
...
Fix crashes when a wallet is locked and GetReservedKey() is called
2011-07-13 18:22:19 -07:00
Jeff Garzik
9cd22ab862
Merge pull request #406 from muggenhor/warning-fixes
...
Warning fixes
2011-07-13 08:55:49 -07:00
Jeff Garzik
b8cbbc2c28
Merge pull request #405 from sipa/syncdefault
...
Bugfix: add autogenerated addresses to address book
2011-07-13 08:53:57 -07:00
Jeff Garzik
4ea952d5c0
Merge pull request #399 from muggenhor/warning-fixes
...
Warning fixes
2011-07-12 20:22:38 -07:00
Jeff Garzik
0fa89d8e81
Merge pull request #381 from TheBlueMatt/nminversion
...
Add minversion to wallet.
2011-07-12 19:34:30 -07:00
Jeff Garzik
61e3c011f5
Merge pull request #402 from jayschwa/hirez-icon
...
High resolution Windows icon
2011-07-12 19:18:52 -07:00
Jeff Garzik
696d34069a
Merge pull request #396 from jayschwa/nsis-branding
...
Add bitcoin.org logos/branding to NSIS installer.
2011-07-12 19:18:21 -07:00
Jeff Garzik
0bad8e4237
Merge pull request #352 from TheBlueMatt/newenc
...
Wallet Private Key Encryption (on CWallet)
2011-07-12 19:10:12 -07:00
Jeff Garzik
354f2dd094
Merge pull request #392 from laanwj/antimagic
...
Remove another magic number: change threshold for nLockTime to constant
2011-07-09 10:09:13 -07:00
Jeff Garzik
c05d011fba
Merge pull request #376 from codler/translate
...
Minor translation changes for latest build (Swedish)
2011-07-08 10:36:49 -07:00
Jeff Garzik
e94010b239
Merge pull request #383 from sipa/syncdefault
...
Fix synchronization of default key
2011-07-05 11:52:13 -07:00
Jeff Garzik
bb0d9ce226
Merge pull request #384 from TheBlueMatt/upnp
...
Fix UPnP building, entirely my fault.
2011-07-05 10:10:26 -07:00
Jeff Garzik
06c903b26c
Merge pull request #380 from TheBlueMatt/buildupdates
...
Added a couple minor things to match newer build process.
2011-07-04 16:34:18 -07:00