Gavin Andresen
62922c8ab0
Cache signature verifications
...
Create a maximum-10MB signature verification result cache.
This should almost double the number of transactions that
can be processed on a given CPU, because before this change
ECDSA signatures were verified when transactions were added
to the memory pool and then again when they appeared in
a block.
2012-05-18 10:41:18 -04:00
Gavin Andresen
4add41a2a6
Further DoS prevention: Verify signatures last
...
Loop over all inputs doing inexpensive validity checks first,
and then loop over them a second time doing expensive signature
checks. This helps prevent possible CPU exhaustion attacks
where an attacker tries to make a victim waste time checking
signatures for invalid transactions.
2012-05-18 10:41:18 -04:00
Gavin Andresen
7a15109c04
Remove invalid dependent orphans from memory
...
Remove orphan transactions from memory once
all of their parent transactions are received
and they're still not valid.
Thanks to Sergio Demian Lerner for suggesting this fix.
2012-05-18 10:41:17 -04:00
Gavin Andresen
77b99cf7ad
Optimize orphan transaction handling
...
Changes suggested by Sergio Demian Lerner to
help prevent potential DoS attacks.
2012-05-18 10:13:21 -04:00
Gavin Andresen
f718aedd9f
Refactor: GetRandHash() method for util
2012-05-17 16:33:27 -04:00
Gavin Andresen
096e06dbb5
Refactor: move code from key.h to key.cpp
2012-05-17 16:33:26 -04:00
Gavin Andresen
397737b913
Bump version numbers for 0.6.1rc2
2012-05-04 10:22:26 -04:00
Gregory Maxwell
1210aa435f
Merge pull request #1188 from Diapolo/rem_BackupWallet_wallet_h
...
remove obsolete BackupWallet() entry in wallet.h
2012-05-03 06:47:16 -07:00
Philip Kaufmann
e23a121afe
remove obsolete BackupWallet() entry in wallet.h
2012-05-03 11:30:52 +02:00
Wladimir J. van der Laan
e099e1568a
Merge pull request #1179 from Diapolo/project-file
...
add bitcoin-qt.rc to OTHER_FILES (shown in Qt Creator)
2012-05-01 23:57:02 -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
Philip Kaufmann
8a6329a7ac
add bitcoin-qt.rc to OTHER_FILES (shown in Qt Creator)
2012-05-01 22:26:33 +02:00
Wladimir J. van der Laan
50d710496d
Merge pull request #1176 from Diapolo/project-file
...
fix DEPENDPATH in the project file, as json has no include sub-dir and src was in twice
2012-05-01 12:38:56 -07: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
Wladimir J. van der Laan
6d25b0e99a
Merge pull request #1172 from Diapolo/serialize_h_rem_typedef
...
remove unused typedef in serialize.h
2012-05-01 09:52:38 -07:00
Wladimir J. van der Laan
3ee5f8aac3
remove duplicate definition of SecureString in util.h
...
SecureString was moved to allocators.h in commit 6cb6d62347
2012-05-01 18:49:50 +02:00
Philip Kaufmann
68103043ce
fix DEPENDPATH in the project file, as json has no include sub-dir and src was in twice
2012-05-01 18:45:10 +02: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
Philip Kaufmann
1c94f88d5e
fix compiler warning "suggest parentheses around assignment used as truth
...
value [-Wparentheses]" in util.cpp
2012-05-01 11:41:04 +02:00
Philip Kaufmann
f8e4d43be7
fix compiler warning "suggest explicit braces to avoid ambiguous "else"
...
[-Wparentheses]" in net.cpp
2012-05-01 11:40:08 +02:00
Philip Kaufmann
00d971e1e7
remove references to bitcoin-wx from comment in init.cpp
2012-05-01 01:59:54 +02:00
Philip Kaufmann
810b4fad7d
remove unused typedef in serialize.h
2012-05-01 01:56:47 +02:00
Gavin Andresen
be8651dde7
Check earlier for blocks with duplicate transactions. Fixes #1167
2012-04-30 11:08:07 -04:00
Wladimir J. van der Laan
ec4997d48f
Merge pull request #1139 from Diapolo/messagepage
...
change button tooltip on sign message page for copy to clipboard...
2012-04-29 04:35:27 -07:00
Wladimir J. van der Laan
0acb1e715c
Merge pull request #1163 from laanwj/2012_04_uiperformanceissue
...
Fix critical UI performance issue (#1154 )
2012-04-29 04:34:42 -07:00
Wladimir J. van der Laan
6974aff668
Fix critical UI performance issue ( #1154 )
2012-04-29 13:25:05 +02:00
Gavin Andresen
0acbe31cfc
Update openssl version
2012-04-27 12:45:49 -04:00
Gavin Andresen
cedcec2dec
Bump win32.deps version number for new openssl
2012-04-27 11:53:11 -04:00
Gavin Andresen
2b4d7735b6
Windows build: compile against openssl 1.0.1b
2012-04-27 10:52:14 -04:00
Gavin Andresen
2c31cfc271
Bump version numbers for 0.6.1rc1
2012-04-27 10:14:33 -04:00
Gavin Andresen
dfead66eac
Merge pull request #1151 from freewil/listsinceblock-blockhash
...
listsinceblock: rpc param blockid -> blockhash
2012-04-26 15:37:12 -07:00
Gavin Andresen
27d4b53a5c
Merge pull request #1150 from gavinandresen/NOPCH
...
Remove unused -DNOPCH
2012-04-26 15:36:33 -07:00
Gavin Andresen
b2997dc043
Merge pull request #1152 from freewil/remove-strange-debug
...
remove strange debug message from listsinceblock
2012-04-26 15:36:15 -07:00
Pieter Wuille
287ce61dc2
Merge pull request #1146 from drizztbsd/posix-include
...
We should include netinet/in.h to use sockaddr_in (POSIX.1-2001)
2012-04-26 15:25:56 -07:00
freewil
42ce57687a
remove strange debug message from listsinceblock
2012-04-26 13:12:44 -04:00
freewil
fdb204abb1
listsinceblock: rpc param blockid -> blockhash
...
This is more consistent with the rest of the labeling seen
by the user when accessing the rpc commands.
2012-04-26 12:48:33 -04:00
Gavin Andresen
9e71a5cd23
Define TEST_DATA_DIR so unit tests can be run from any current working directory
2012-04-26 11:20:44 -04:00
Gavin Andresen
08e663d7e2
Undo part of c2e8c8ac
to fix issue#1148
2012-04-26 10:18:35 -04:00
Pieter Wuille
e1ea3ce7aa
Merge pull request #1119 from sipa/fastshutdown
...
Make lsn_reset ("detach databases") optional and off by default.
2012-04-26 05:20:57 -07:00
Gavin Andresen
cfc45319fe
Remove unused -DNOPCH
2012-04-25 19:40:44 -04:00
Pieter Wuille
83743ed681
Make lsn_reset ("detach databases") optional and off by default.
...
Add an option -detachdb (and entry in OptionDialog), without which no
lsn_reset is called on addr.dat and blkindex.dat. That means these
files cannot be moved to a new environment, but shutdown can be
significantly faster. The wallet file is always lsn_reset'ed.
-detachdb corresponds to the old behaviour, though it is off by
default now to speed up shutdowns.
2012-04-26 00:31:54 +02:00
Timothy Redaelli
5e9dc15360
We should include netinet/in.h to use sockaddr_in (POSIX.1-2001)
2012-04-25 14:07:24 +02: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
7bd9c3a3cf
SigOp and orphan-tx constants and counts are always unsigned.
...
Fixes several sign-comparison warnings.
2012-04-23 14:14:03 -04:00
Pieter Wuille
ef758662c5
Merge pull request #1133 from sipa/abspath
...
Make GetDataDir return absolute paths
2012-04-22 14:56:03 -07: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