Luke Dashjr
2bc4fd609c
Bitcoin-Qt signmessage GUI (pull request #582 )
2012-01-27 08:41:55 +01:00
Gavin Andresen
b6a35d2d52
Merge pull request #773 from gavinandresen/p2shSigOpCount
...
Simplify counting of P2SH sigops to match BIP 16
2012-01-25 05:21:20 -08:00
Gavin Andresen
b8056dc5d0
Merge branch 'bugfix_areinpstd' of https://github.com/luke-jr/bitcoin
2012-01-23 13:09:34 -05:00
Gavin Andresen
149f580c82
Only store transactions with missing inputs in the orphan pool.
...
All previous versions of bitcoin could store some types of
invalid transactions in the orphan-transaction list.
2012-01-23 12:54:32 -05:00
Luke Dashjr
575bdcde93
Sanitize AreInputsStandard slightly
...
Correct comment for why the check is unnecessary for coinbases
Move testnet check out, to AcceptToMemoryPool where everything else checks it
2012-01-20 21:00:08 -05:00
Gavin Andresen
137d0685a4
Simplify counting of P2SH sigops to match BIP 16 (thanks to Matt Corallo for prompting this).
...
This also removes an un-needed sigops-per-byte check when accepting transactions to the memory pool (un-needed assuming only standard transactions are being accepted). And it only counts P2SH sigops after the switchover date.
2012-01-20 17:07:40 -05:00
Forrest Voight
52a3d2635c
Separated COINBASE_FLAGS out into main.h and made RPC getmemorypool return it
2012-01-14 19:22:24 -05:00
Gavin Andresen
4063460534
Refactor: needing to call ConnectInputs to process coinbase transactions was counter-intuitive
2012-01-13 10:22:24 -05:00
Gavin Andresen
8d7849b6db
Refactored ConnectInputs, so valid-transaction-checks are done before ECDSA-verifying signatures.
2012-01-13 10:22:24 -05:00
Gavin Andresen
922e8e2929
Replace OP_EVAL (BIP 12) with Pay-to-script-hash (BIP 16).
2012-01-13 10:22:23 -05:00
Luke Dashjr
340f0876ea
collect more info on tx pooling and block finding for getmininginfo
2012-01-12 19:47:39 -05:00
Gavin Andresen
3f64fa1369
Merge pull request #743 from gavinandresen/blocknotify
...
-blocknotify : run a command when best-block changes
2012-01-12 06:31:25 -08:00
Pieter Wuille
67a42f929b
Network stack refactor
...
This introduces CNetAddr and CService, respectively wrapping an
(IPv6) IP address and an IP+port combination. This functionality used
to be part of CAddress, which also contains network flags and
connection attempt information. These extra fields are however not
always necessary.
These classes, along with logic for creating connections and doing
name lookups, are moved to netbase.{h,cpp}, which does not depend on
headers.h.
Furthermore, CNetAddr is mostly IPv6-ready, though IPv6
functionality is not yet enabled for the application itself.
2012-01-06 18:55:37 +01:00
Gavin Andresen
d237f62c23
-blocknotify=command argument, implemented using system() and boost::thread
2012-01-03 15:48:59 -05:00
Gavin Andresen
61977f956c
Check all prevout.n if one transaction provides multiple inputs
2011-12-25 10:32:05 -05:00
Gavin Andresen
60835d9627
assert condition in previous commit was backwards
2011-12-25 10:08:01 -05:00
Gavin Andresen
6996a9d713
Check for valid prevout.n in FetchInputs.
...
IsStandardInputs could crash if given invalid input index.
2011-12-25 08:45:09 -05:00
Gavin Andresen
fe358165e3
Be more conservative: check all transactions in blocks after last checkpoint.
2011-12-23 17:13:10 -05:00
Wladimir J. van der Laan
bde280b9a4
Revert "Use standard C99 (and Qt) types for 64-bit integers"
...
This reverts commit 21d9f36781
.
2011-12-21 22:33:19 +01:00
Luke Dashjr
21d9f36781
Use standard C99 (and Qt) types for 64-bit integers
2011-12-20 16:52:59 -05:00
Gavin Andresen
781c06c0f5
Merge pull request #677 from luke-jr/minfee_modes
...
API: GetMinFee modes
2011-12-20 13:09:18 -08:00
Gavin Andresen
595925592d
Merge branch 'op_eval'
2011-12-20 14:43:31 -05:00
Gavin Andresen
9ef7fa3447
Code cleanup: use ECDSA_size() instead of fixed 10,000 byte sig buffer, and explicity init static var
2011-12-19 19:10:34 -05:00
Gavin Andresen
26ce92b352
Use std::numeric_limits<> for typesafe INT_MAX/etc
2011-12-19 19:10:34 -05:00
Gavin Andresen
9e470585b3
Update bitcoin address numbers for latest luke-jr/sipa scheme
2011-12-19 13:24:51 -05:00
Gavin Andresen
2a45a494b0
Use block times for 'hard' OP_EVAL switchover, and refactored EvalScript
...
so it takes a flag for how to interpret OP_EVAL.
Also increased IsStandard size of scriptSigs to 500 bytes, so
a 3-of-3 multisig transaction IsStandard.
2011-12-19 13:24:48 -05:00
Gavin Andresen
d7062ef1bd
Put OP_EVAL string in coinbase of generated blocks
2011-12-19 13:24:48 -05:00
Gavin Andresen
e679ec969c
OP_EVAL implementation
...
OP_EVAL is a new opcode that evaluates an item on the stack as a script.
It enables a new type of bitcoin address that needs an arbitrarily
complex script to redeem.
2011-12-19 12:40:19 -05:00
Gavin Andresen
99a289f531
Merge pull request #574 from sipa/dumpprivkey
...
Dumpprivkey
2011-12-19 07:27:25 -08:00
Gavin Andresen
f8ded588a2
Implement BIP 14 : separate protocol version from client version
2011-12-19 10:24:23 -05:00
Pieter Wuille
30ab2c9c46
Preparations for key import/export
2011-12-17 21:49:48 +01:00
Luke Dashjr
dbbf1d4a48
GetMinFee takes a mode parameter (GMF_{BLOCK,RELAY,SEND}) instead of fForRelay
2011-12-14 01:07:43 -05:00
Luke Dashjr
a880b29cab
Bugfix: fForRelay should be false when deciding required fee to include in blocks
...
During the rushed transition from 0.01 BTC to 0.0005 BTC fees, we took the
approach of dropping the relay and block-inclusion fee to 0.0005 BTC
immediately, and only delayed adjusting the sending fee for the next release.
Afterward, the relay fee was lowered to 0.0001 BTC to avoid having the same
problem in the future. However, the block inclusion code was left setting
fForRelay to true! This fixes that, so the lower 0.0001 BTC allowance is (as
intended) only permitted for real relaying.
2011-12-14 01:06:21 -05:00
Gavin Andresen
10fd7f6689
Orphan block fill-up-memory attack prevention
2011-12-01 13:53:38 -05:00
Gavin Andresen
eb5fff9e16
Moved checkpoints out of main, to prep for using them to help prevent DoS attacks
2011-12-01 12:18:50 -05:00
Pieter Wuille
d825e6a31b
Some extra comments
2011-11-07 00:11:34 +01:00
Gavin Andresen
32ebde4612
Merge pull request #564 from luke-jr/optimize_remove_CheckWork_delay
...
Remove 2 second sleep from CheckWork
2011-10-06 07:54:50 -07:00
Gavin Andresen
b898c8fce6
Merge branch 'no-cryptopp' of https://github.com/tcatm/bitcoin
2011-10-05 10:38:10 -04:00
David Joel Schwartz
514b18722a
Remove 2 second sleep from CheckWork
2011-10-04 00:04:43 -04:00
Forrest Voight
074d584a04
Added RPC call 'getmemorypool' that provides everything needed to construct a block with a custom generation transaction and submit a solution
...
getmemorypool [data]
If [data] is not specified, returns data needed to construct a block to work on:
"version" : block version
"previousblockhash" : hash of current highest block
"transactions" : contents of non-coinbase transactions that should be included in the next block
"coinbasevalue" : maximum allowable input to coinbase transaction, including the generation award and transaction fees
"time" : timestamp appropriate for next block
"bits" : compressed target of next block
If [data] is specified, tries to solve the block and returns true if it was successful.
2011-10-01 14:42:54 -04:00
Nils Schneider
6ccff2cbde
remove cryptopp dependency, add simple unittest for SHA256Transform()
2011-09-30 20:00:22 +02:00
Wladimir J. van der Laan
002a4dcad0
Merge branch 'master' of https://github.com/bitcoin/bitcoin
...
Conflicts:
.gitignore (used upstream version)
bitcoin-qt.pro
2011-09-28 21:52:32 +02:00
Wladimir J. van der Laan
a8b95ce6ed
use median filter for peer-reported reported number of blocks
...
- fixes problem that one misconfigured or malicious node can mess up progress bar
- implementation in src/util.h
- testcase in src/test/util_tests.cpp
2011-09-28 21:35:58 +02:00
Gavin Andresen
a8c108bca1
Remove DoS penalty for SigOpCount or immature transactions
2011-09-27 11:19:57 -04:00
Gavin Andresen
b14bd4df58
Skip verifying transaction signatures during initial block-chain download
2011-09-26 09:20:22 -04:00
Gavin Andresen
17e2c24645
Merge pull request #517 from gavinandresen/DoSprevention
...
Denial-of-service prevention
2011-09-26 06:06:16 -07:00
Gavin Andresen
f7f2a36925
Merge pull request #521 from laanwj/qt
...
Qt GUI
2011-09-26 06:05:11 -07:00
Wladimir J. van der Laan
0961c2fc0d
Merge branch 'master' of https://github.com/bitcoin/bitcoin
2011-09-23 13:42:04 +02:00
Gavin Andresen
806704c237
More denial-of-service misbehavior detection: version/addr/inv/getdata messages
2011-09-21 12:50:13 -04:00
Gavin Andresen
3e52aaf212
Transaction/Block denial-of-service detection/response
2011-09-21 12:50:12 -04:00