aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-04-03Use fsbridge for fopen and freopenWladimir J. van der Laan
Abstracts away how a path is opened to a `FILE*`. Reduces the number of places where path is converted to a string for anything else but printing.
2017-04-03Replace uses of boost::filesystem with fsWladimir J. van der Laan
Step two in abstracting away boost::filesystem. To repeat this, simply run: ``` git ls-files \*.cpp \*.h | xargs sed -i 's/boost::filesystem/fs/g' ```
2017-04-03Replace includes of boost/filesystem.h with fs.hWladimir J. van der Laan
This is step one in abstracting the use of boost::filesystem.
2017-04-03Add fs.cpp/hWladimir J. van der Laan
2017-04-03Merge #10058: No need to use OpenSSL malloc/freeWladimir J. van der Laan
6d5dd60 No need to use OpenSSL malloc/free (Thomas Snider) Tree-SHA512: 29f790067ffd5a10a8e1a621318a0ba445691f57c804aa3b7c8ca372c8408d8c7fe703c42b48018e400fc32e3feff5ab401d97433910ce2c50e69da0b8a6662e
2017-04-03Add braces to submitblock per current style.Gregory Maxwell
2017-04-03Check transaction count early in submitblock.Gregory Maxwell
There is no point in even hashing a submitted block which doesn't have a coinbase transaction. This also results in more useful error reporting on corrupted input. Thanks to rawodb for the bug report.
2017-04-03Merge #10139: [rpc] Remove auth cookie on shutdownWladimir J. van der Laan
4b87973 [rpc] Remove auth cookie on shutdown (practicalswift) Tree-SHA512: 5d7d04413d3eb6a8d167443a3fdfe4c289bdc5cbc4c9b257a557c2a7fab5d4b32a81a1357e27b77ce2623e76e495b2e8b21eab0ab032bb261fdcdf171bac1dac
2017-04-02Make GetWitnessCommitmentIndex callable on blocks without a coinbase txn.Gregory Maxwell
This isn't actually needed anywhere, but it's less brittle.
2017-04-02[rpc] Remove auth cookie on shutdownpracticalswift
Accidentally removed in 40b556d3742a1f65d67e2d4c760d0b13fe8be5b7
2017-04-02Merge #10077: [qa] Add setnetworkactive smoke testWladimir J. van der Laan
fa697b7 [qa] Add setnetworkactive smoke test (MarcoFalke) Tree-SHA512: 7205bae16f551e93383987392702e6853cfb06d4448735815fa116385cbf5deb6c4a8f521efdd43cf3cc59fede3b3d1ffe74e662890b74bcc21b5c13ce1f20b7
2017-04-02Merge #10072: Remove sources of unreliablility in extended functional testsMarcoFalke
a4fd89f Make forknotify.py more robust (John Newbery) 1f3d78b Wait for connection to open in bip9-softforks.py (John Newbery) Tree-SHA512: de7d0002ee62ad97059b6f6c89b11f6e9901e3b4164ef6906bcd61e4ca499c277d9034784755966e5baf599869fad611b0b18f5547a384ceb5b7db3cc5bbd132
2017-04-02Merge #10098: Make qt wallet test compatible with qt4Wladimir J. van der Laan
e9a6461 Make qt wallet test compatible with qt4 (Russell Yanofsky) Tree-SHA512: a3e4598986cb3c5c20aaa1d440abc886d84fcc69a6ee4079787cfc8e3a2dce655060ff95612cb15ce8b5a9b8911e4afe2281345b59a4353ec32edf3771338381
2017-04-02Improve CFeeBumper interface, add comments, make use of std::moveJonas Schnelli
2017-04-02Cancel feebump is vErrors is not emptyJonas Schnelli
2017-04-02Use static calls for GetRequiredFee and GetMinimumFee, remove make_pair from ↵Jonas Schnelli
emplace_back
2017-04-02Restore CalculateMaximumSignedTxSize function signatureJonas Schnelli
2017-04-02Use "return false" instead assert() in CWallet::SignTransactionJonas Schnelli
2017-04-02Directly abort execution in FeeBumper::commit if wallet or tx is not availableJonas Schnelli
2017-04-02Restore invalid fee check (must be > 0)Jonas Schnelli
2017-04-02Refactor Bumpfee core functionalityJonas Schnelli
2017-04-02Bumpfee move request parameter interaction to the topJonas Schnelli
2017-04-02Merge #10036: Fix init README format to render correctly on githubWladimir J. van der Laan
b99fbad Fix init README format to render correctly on github (Jameson Lopp) Tree-SHA512: 52b8ed9661e48e830c9e0c0e9aa670fe8d1a3848426d2d854494b477a9926f286d87e0586c2bc63f433136f8e5acd2cab3ab1f616380fb517c5a8f9d34ed52da
2017-04-02Merge #10128: Speed Up CuckooCache testsWladimir J. van der Laan
3f098cc Decrease testcase sizes in cuckoocache tests (Jeremy Rubin) Tree-SHA512: 71a0e171be8d5473c791440aa4353d99b885b926b7284a3a1914c95e0c2c77925d5f3a6f329778cd81931a4e5832a082cb31d82ee8adb433d357d2e2b4f7a9e5
2017-04-02Merge #9424: Change LogAcceptCategory to use uint32_t rather than sets of ↵Wladimir J. van der Laan
strings. 6b3bb3d Change LogAcceptCategory to use uint32_t rather than sets of strings. (Gregory Maxwell) Tree-SHA512: ebb5bcf9a7d00a32dd1390b727ff4d29330a038423611da01268d8e1d2c0229e52a1098e751d4e6db73ef4ae862e1e96d38249883fcaf12b68f55ebb01035b34
2017-04-02Merge #10136: build: Disable Wshadow warningWladimir J. van der Laan
2c83911 build: Disable Wshadow warning (Wladimir J. van der Laan) Tree-SHA512: e3c1f7253c43449740760da287985b8027344dfc48c8a85ea9bca977c73cbaf75709d6e32ac0fea51eb89dccb48706a5abdf006be45375838df10ccba35e9aa1
2017-04-01Change LogAcceptCategory to use uint32_t rather than sets of strings.Gregory Maxwell
This changes the logging categories to boolean flags instead of strings. This simplifies the acceptance testing by avoiding accessing a scoped static thread local pointer to a thread local set of strings. It eliminates the only use of boost::thread_specific_ptr outside of lockorder debugging. This change allows log entries to be directed to multiple categories and makes it easy to change the logging flags at runtime (e.g. via an RPC, though that isn't done by this commit.) It also eliminates the fDebug global. Configuration of unknown logging categories now produces a warning.
2017-04-01build: Disable Wshadow warningWladimir J. van der Laan
This warning was enabled by default in #8808 but it's a [continuing](https://github.com/bitcoin/bitcoin/pull/9911#issuecomment-285171447) [source](https://github.com/bitcoin/bitcoin/pull/10089#issuecomment-289369688) of [annoyance](https://github.com/bitcoin/bitcoin/pull/9911#issuecomment-285179129) for me and other developers. I'm sick of sounding like a broken record, so disable it again.
2017-04-01Merge #10129: scheduler: fix sub-second precision with boost < 1.50Wladimir J. van der Laan
e025246 scheduler: fix sub-second precision with boost < 1.50 (Cory Fields) Tree-SHA512: b9d4875406c1a2bf3cb6412d7511c24d871bfba6a2ea5ccfbbf7392f2f8850027b001b776da422fea592878da21d897b1aa56d92bc2239869055dce79fd442ac
2017-03-31Make threshold for flushing more conservative.Alex Morcos
Always leave a reasonable buffer of 50MB for usage from newly connected block (once over 50%) and increase the high water mark buffer to 200MB.
2017-03-31Send the correct error code in reject messagesJohn Newbery
2017-03-31Lower default memory footprint slightlyAlex Morcos
2017-03-31Make pcoinsTip memory calculations consistentAlex Morcos
Since we are more accurately measuring pcoinsTip peak usage at twice the current in dynamic usage, it makes sense to double the default (this will lead to the same effective usage and peak usage as previously). We should also double the buffer used to avoid flushing if above 90% but still sufficient space remaining.
2017-03-31scheduler: fix sub-second precision with boost < 1.50Cory Fields
2017-03-31Merge #10095: refactor: Move GetDifficulty out of `rpc/server.h`Wladimir J. van der Laan
f885b67 refactor: Make rest.cpp dependency on `*toJSON` in `blockchain.cpp` explicit (Wladimir J. van der Laan) 8d8f28d refactor: Move RPCNotifyBlockChange out of `rpc/server.h` (Wladimir J. van der Laan) e6dcfee refactor: Move GetDifficulty out of `rpc/server.h` (Wladimir J. van der Laan) Tree-SHA512: fc2656611d18442f2fddba5ac1554d958151f6785c2039afdfc36735d7e71592d9686ff6cc7b2ad95180071d7514470e62c52d697c5a1e88f851bddaf5942edb
2017-03-31Merge #10126: Compensate for memory peak at flush timeWladimir J. van der Laan
7228ce8 Compensate for memory peak at flush time (Pieter Wuille) Tree-SHA512: 97e9848410fab061402c85d8440c54a50dd8a0203b2ea194013ea116700a6dc1b4b26b8c5f9c9c68c1f5c6b935c5d6c737437c1911b003d9ff5445c570cd449d
2017-03-31Merge #10120: util: Work around (virtual) memory exhaustion on 32-bit w/ glibcWladimir J. van der Laan
625488a util: Work around (virtual) memory exhaustion on 32-bit w/ glibc (Wladimir J. van der Laan) Tree-SHA512: 99b610a8cf9561998af90e16fc19320fddd30c987e8f33325d63df0f56d70235b94d9482e80f28154d4b33a3ecf4961686380c444ec18d1da5e8804a8b6f4de1
2017-03-31Merge #10130: bitcoin-tx input verification (awemany, jnewbery)Wladimir J. van der Laan
19ecd1e Add tests for bitcoin-tx input checking (John Newbery) 21704f6 Check stderr when testing bitcoin-tx (John Newbery) eb66bf9 bitcoin-tx: Fix missing range check (Awemany) Tree-SHA512: 08c6153cf7dd5e0ecd23e24d81af4c0f17534d484179dd91dcd78d42df14c91284341d31cc695469a64c507bce72c34231748b7cabb7df8f1051d228fb0a62c5
2017-03-31Merge #10090: Update bitcoin.conf with example for pruningMarcoFalke
c0651cc Update bitcoin.conf with example for pruning (Kyle Honeycutt) Tree-SHA512: f27180ac5d5a4bd32c7a63de156ca14eb8068509e64d386ca84ee16d0dacfa8e1bab9a8e7b88175fae12c8d823f71f8705d413f224a15d5aa7cf059f416fa023
2017-03-30Add tests for bitcoin-tx input checkingJohn Newbery
2017-03-30Check stderr when testing bitcoin-txJohn Newbery
2017-03-30bitcoin-tx: Fix missing range checkAwemany
The number of arguments is not checked MutateTxAddOutAddr(..), meaning that > ./bitcoin-tx -create outaddr= accessed the vStrInputParts vector beyond its bounds. This also includes work by jnewbery to check the inputs for MutateTxAddPubKey()
2017-03-30Decrease testcase sizes in cuckoocache testsJeremy Rubin
2017-03-30Merge #10114: [tests] sync_with_ping should assert that ping hasn't timed outWladimir J. van der Laan
6a18bb9 [tests] sync_with_ping should assert that ping hasn't timed out (John Newbery) 6426716 Add send_await_disconnect() method to p2p-compactblocks.py (John Newbery) Tree-SHA512: d0eeb066ed3f6aef594caaa693280d10abedac9b719e795c9659e52ddae315085eb2845131644793007e30a16e3e0bf3e3925b40ca2ae023cad923c5ab32df25
2017-03-30Compensate for memory peak at flush timePieter Wuille
2017-03-30Merge #9959: Mining: Prevent slowdown in CreateNewBlock on large mempoolsWladimir J. van der Laan
011124a Update benchmarking with package statistics (Suhas Daftuar) 42cd8c8 Add benchmarking for CreateNewBlock (Suhas Daftuar) eed816a Mining: return early when block is almost full (Suhas Daftuar) Tree-SHA512: c0d8f71e4e0441acf3f4ca12f8705e413b59b323659346a447145653def71710537fb4c6d80cad8e36d68b0aabf19c92e9eab7135a8897b053ed58720856cdda
2017-03-30[tests] sync_with_ping should assert that ping hasn't timed outJohn Newbery
sync_with_ping currently returns false if the timeout expires, and it is the caller's responsibility to fail the test. However, none of the tests currently assert on sync_with_ping()'s return code. This commit adds an assert to sync_with_ping so the test will fail if the timeout expires. This commit also removes all the duplicate implementations of sync_with_ping() from the individual tests.
2017-03-30Add send_await_disconnect() method to p2p-compactblocks.pyJohn Newbery
p2p-compactblocks was incorrectly using sync_with_ping() when sending in invalid block. The node would disconnect us and never respond to the ping, so the sync_with_ping would just time out after 30 seconds and continue with the test. This commit adds a send_await_disconnect() method that sends the message, and then waits for the node to disconnect us. In this commit I've added the method to p2p-compactblocks.py, but a future commit could move it to mininode since it could be useful more generally. This commit reduces the p2p-compactblock runtime by 30 seconds.
2017-03-30util: Work around (virtual) memory exhaustion on 32-bit w/ glibcWladimir J. van der Laan
glibc-specific: On 32-bit systems set the number of arenas to 1. By default, since glibc 2.10, the C library will create up to two heap arenas per core. This is known to cause excessive virtual address space usage in our usage. Work around it by setting the maximum number of arenas to 1.
2017-03-30Merge #10109: Remove SingleNodeConnCBMarcoFalke
159fe88 Remove SingleNodeConnCB (John Newbery) Tree-SHA512: 2fc3d060f4ac9445e657134919a871c46987d53eb98d23a858ee9515fc997be7a81923f08f2a37d07d123b55b912ae82ffa0f820d16297b044ab24dcf0788a8a