aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #6438Wladimir J. van der Laan2015-07-151-0/+8
|\ | | | | | | d4b1d5a openssl: avoid config file load/race (Cory Fields)
| * openssl: avoid config file load/raceCory Fields2015-07-141-0/+8
| |
* | qt: update forgotten emit to Q_EMIT in macdockiconhandler.mmWladimir J. van der Laan2015-07-151-1/+1
| | | | | | | | Leftover from #6433
* | qt: define QT_NO_KEYWORDSWladimir J. van der Laan2015-07-1566-184/+184
| | | | | | | | | | | | | | | | QT_NO_KEYWORDS prevents Qt from defining the `foreach`, `signals`, `slots` and `emit` macros. Avoid overlap between Qt macros and boost - for example #undef hackiness in #6421.
* | rpc: Implement random-cookie based authenticationWladimir J. van der Laan2015-07-134-27/+105
|/ | | | | | | | | | | | | | | When no `-rpcpassword` is specified, use a special 'cookie' file for authentication. This file is generated with random content when the daemon starts, and deleted when it exits. Read access to this file controls who can access through RPC. By default this file is stored in the data directory but it be overriden with `-rpccookiefile`. This is similar to Tor CookieAuthentication: see https://www.torproject.org/docs/tor-manual.html.en Alternative to #6258. Like that pull, this allows running bitcoind without any manual configuration. However, daemons should ideally never write to their configuration files, so I prefer this solution.
* Merge pull request #6398Wladimir J. van der Laan2015-07-133-7/+1
|\ | | | | | | 85ee55b rpc: Remove chain-specific RequireRPCPassword (Wladimir J. van der Laan)
| * rpc: Remove chain-specific RequireRPCPasswordWladimir J. van der Laan2015-07-103-7/+1
| | | | | | | | | | | | | | | | | | | | | | I've never liked the chain-specific exception to having to set a password. It gives issues with #6388 which makes it valid to set no password in every case (as it enables random cookie authentication). This pull removes the flag, so that all chains are regarded the same. It also removes the username==password test, which doesn't provide any substantial extra security.
* | Merge pull request #6410Wladimir J. van der Laan2015-07-118-2/+110
|\ \ | | | | | | | | | 5098c47 Implement accurate memory accounting for mempool (Pieter Wuille)
| * | Implement accurate memory accounting for mempoolPieter Wuille2015-07-108-2/+110
| | |
* | | Merge pull request #6370Wladimir J. van der Laan2015-07-103-13/+2
|\ \ \ | | | | | | | | | | | | 6ebac07 Remove ChainParams::DefaultMinerThreads (Wladimir J. van der Laan)
| * | | Remove ChainParams::DefaultMinerThreadsWladimir J. van der Laan2015-07-033-13/+2
| | | | | | | | | | | | | | | | | | | | | | | | No longer relevant after #5957. This hack existed because of another hack where the numthreads parameter, on regtest, doubled as how many blocks to generate.
* | | | Merge pull request #6379Wladimir J. van der Laan2015-07-105-1/+215
|\ \ \ \ | |_|/ / |/| | | | | | | 9cc9152 rpc: Accept scientific notation for monetary amounts in JSON (Wladimir J. van der Laan)
| * | | rpc: Accept scientific notation for monetary amounts in JSONWladimir J. van der Laan2015-07-105-1/+215
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a function `ParseFixedPoint` that parses numbers according to the JSON number specification and returns a 64-bit integer. Then this in `AmountFromValue`, rather than `ParseMoney`. Also add lots of tests (thanks to @jonasschnelli for some of them). Fixes issue #6297.
* | | Merge pull request #5486Wladimir J. van der Laan2015-07-102-6/+15
|\ \ \ | | | | | | | | | | | | c45c7ea [REST] add JSON support for /rest/headers/ (Jonas Schnelli)
| * | | [REST] add JSON support for /rest/headers/Jonas Schnelli2015-07-052-6/+15
| |/ /
* | | Merge pull request #5288Wladimir J. van der Laan2015-07-103-12/+69
|\ \ \ | | | | | | | | | | | | e3cae52 Added -whiteconnections=<n> option (Josh Lehan)
| * | | Added -whiteconnections=<n> optionJosh Lehan2015-06-143-11/+68
| | | | | | | | | | | | | | | | | | | | | | | | This sets aside a number of connection slots for whitelisted peers, useful for ensuring your local users and miners can always get in, even if your limit on inbound connections has already been reached.
* | | | Merge pull request #6384Wladimir J. van der Laan2015-07-101-0/+8
|\ \ \ \ | | | | | | | | | | | | | | | 15e26a6 qt: Force TLS1.0+ for SSL connections (Wladimir J. van der Laan)
| * | | | qt: Force TLS1.0+ for SSL connectionsWladimir J. van der Laan2015-07-061-0/+8
| | | | |
* | | | | Merge pull request #6368Wladimir J. van der Laan2015-07-091-0/+8
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | cb54d17 CLTV: Add more tests to improve coverage (Esteban Ordano)
| * | | | | CLTV: Add more tests to improve coverageEsteban Ordano2015-07-061-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Four cases included: * The CLTV operand type mismatches the tx locktime. In the script it is 1 (interpreted as block height), but in the tx is 500000000 (interpreted as date) * The stack is empty when executing OP_CLTV * The tx is final by having only one input with MAX_INT sequence number * The operand for CLTV is negative (after OP_0 OP_1 OP_SUB)
* | | | | | Merge pull request #6378Wladimir J. van der Laan2015-07-094-14/+9
|\ \ \ \ \ \ | |_|_|_|_|/ |/| | | | | | | | | | | 5e058e7 [Qt] constify foreach uses where possible (Philip Kaufmann)
| * | | | | [Qt] constify foreach uses where possiblePhilip Kaufmann2015-07-074-14/+9
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | - this doesn't replace BOOST_FOREACH, it just makes used arguments const where possible
* | | | | Merge pull request #6387Wladimir J. van der Laan2015-07-081-0/+9
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | 65ce021 [bitcoin-cli] improve error output (Jonas Schnelli)
| * | | | | [bitcoin-cli] improve error outputJonas Schnelli2015-07-071-0/+9
| | |_|/ / | |/| | |
* / | | | tests: Fix bitcoin-tx signing testcaseWladimir J. van der Laan2015-07-072-2/+2
|/ / / / | | | | | | | | | | | | | | | | Fixes wrong scriptPubkey problem, which caused the transaction to not actually be signed.
* | | | Merge pull request #6365Wladimir J. van der Laan2015-07-064-12/+12
|\ \ \ \ | | | | | | | | | | | | | | | 5a7304b Move recently introduced CTransAction::IsEquivalentTo to CWalletTx (Wladimir J. van der Laan)
| * | | | Move recently introduced CTransAction::IsEquivalentTo to CWalletTxWladimir J. van der Laan2015-07-024-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CTransAction::IsEquivalentTo was introduced in #5881. This functionality is only useful to the wallet, and should never have been added to the primitive transaction type.
* | | | | Merge pull request #6335Wladimir J. van der Laan2015-07-0616-214/+250
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | 9238ecb Policy: MOVEONLY: 3 functions to policy.o: (Luke Dashjr) 627b9de Policy: MOVEONLY: Create policy/policy.h with some constants (Jorge Timón)
| * | | | Policy: MOVEONLY: 3 functions to policy.o:Luke Dashjr2015-06-269-184/+198
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - [script/standard.o] IsStandard - [main.o] IsStandardTx - [main.o] AreInputsStandard Also, don't use namespace std in policy.cpp
| * | | | Policy: MOVEONLY: Create policy/policy.h with some constantsJorge Timón2015-06-2612-30/+52
| | | | |
* | | | | Merge pull request #6329Wladimir J. van der Laan2015-07-033-2/+10
|\ \ \ \ \ | |_|_|/ / |/| | | | | | | | | 0c37634 acceptnonstdtxn option to skip (most) "non-standard transaction" checks, for testnet/regtest only (Luke Dashjr)
| * | | | acceptnonstdtxn option to skip (most) "non-standard transaction" checks, for ↵Luke Dashjr2015-07-033-2/+10
| | | | | | | | | | | | | | | | | | | | testnet/regtest only
* | | | | Adding CSubNet constructor over a single CNetAddrJonas Schnelli2015-07-024-2/+23
| | | | |
* | | | | use CBanEntry as object container for banned nodesJonas Schnelli2015-07-025-37/+106
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - added a reason enum for a ban - added creation time for a ban Using CBanEntry as container will keep banlist.dat extenable.
* | | | | CAddrDB/CBanDB: change filesize variables from int to uint64_tJonas Schnelli2015-07-021-8/+8
| | | | |
* | | | | banlist.dat: store banlist on diskJonas Schnelli2015-07-024-2/+217
| |_|/ / |/| | |
* | | | Merge pull request #6362Wladimir J. van der Laan2015-07-021-7/+7
|\ \ \ \ | | | | | | | | | | | | | | | 72b9452 When processing RPC commands during warmup phase, parse the request object before returning an error so that id value can be used in the response. (Forrest Voight)
| * | | | When processing RPC commands during warmup phase, parse theForrest Voight2015-07-011-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | request object before returning an error so that id value can be used in the response. Prior to this commit, RPC commands sent during Bitcoin's warmup/startup phase were responded to with a JSON-RPC error with an id of null, which violated the JSON-RPC 2.0 spec: id: This member is REQUIRED. It MUST be the same as the value of the id member in the Request Object. If there was an error in detecting the id in the Request object (e.g. Parse error/Invalid Request), it MUST be Null.
* | | | | Merge pull request #6361Wladimir J. van der Laan2015-07-025-4/+21
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | 4716267 Use real number of cores for default -par, ignore virtual cores (Wladimir J. van der Laan)
| * | | | | Use real number of cores for default -par, ignore virtual coresWladimir J. van der Laan2015-07-015-4/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To determine the default for `-par`, the number of script verification threads, use [boost::thread::physical_concurrency()](http://www.boost.org/doc/libs/1_58_0/doc/html/thread/thread_management.html#thread.thread_management.thread.physical_concurrency) which counts only physical cores, not virtual cores. Virtual cores are roughly a set of cached registers to avoid context switches while threading, they cannot actually perform work, so spawning a verification thread for them could even reduce efficiency and will put undue load on the system. Should fix issue #6358, as well as some other reported system overload issues, especially on Intel processors. The function was only introduced in boost 1.56, so provide a utility function `GetNumCores` to fall back for older Boost versions.
* | | | | | Merge pull request #5881Wladimir J. van der Laan2015-07-023-0/+13
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5d34e16 Add txn_clone.py test (Tom Harding) defd2d5 Better txn_doublespend.py test (Tom Harding) b2b3619 Implement CTransaction::IsEquivalentTo(...) (Tom Harding)
| * | | | | | Implement CTransaction::IsEquivalentTo(...)Tom Harding2015-04-113-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Define CTransaction::IsEquivalentTo(const CTransaction& tx) True if only scriptSigs are different. In other words, true if the two transactions are malleability clones. In other words, true if the two transactions have the same effect on the outside universe. In the wallet, only SyncMetaData for equivalent transactions.
* | | | | | | Merge pull request #6133Wladimir J. van der Laan2015-07-023-4/+4
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | e617fe2 Fix various warnings (Luke Dashjr)
| * | | | | | | Fix various warningsLuke Dashjr2015-06-233-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Found while building on Debian 7
* | | | | | | | Merge pull request #6247Wladimir J. van der Laan2015-07-024-0/+85
|\ \ \ \ \ \ \ \ | |_|_|_|/ / / / |/| | | | | | | | | | | | | | | 076badb Add getblockheader RPC call (Peter Todd)
| * | | | | | | Add getblockheader RPC callPeter Todd2015-06-054-0/+85
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Alternative to getblock that works even when the block itself has been pruned, returning all available information.
* | | | | | | | Merge pull request #6353Wladimir J. van der Laan2015-07-011-0/+51
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 5ed1079 Show softfork status in getblockchaininfo (Wladimir J. van der Laan)
| * | | | | | | | Show softfork status in getblockchaininfoWladimir J. van der Laan2015-07-011-0/+51
| | |_|_|_|_|/ / | |/| | | | | |
* | | | | | | | miner: rename UpdateRequestCount signal to ResetRequestCountJonas Schnelli2015-07-014-7/+7
| | | | | | | |