aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-09-03Document options for new HTTP/RPC server in --helpWladimir J. van der Laan
2015-09-03Implement RPCTimerHandler for Qt RPC consoleWladimir J. van der Laan
Implement RPCTimerHandler for Qt RPC console, so that `walletpassphrase` works with GUI and `-server=0`. Also simplify HTTPEvent-related code by using boost::function directly.
2015-09-03doc: mention SSL support dropped for RPC in release notesWladimir J. van der Laan
2015-09-03evhttpd implementationWladimir J. van der Laan
- *Replace usage of boost::asio with [libevent2](http://libevent.org/)*. boost::asio is not part of C++11, so unlike other boost there is no forwards-compatibility reason to stick with it. Together with #4738 (convert json_spirit to UniValue), this rids Bitcoin Core of the worst offenders with regard to compile-time slowness. - *Replace spit-and-duct-tape http server with evhttp*. Front-end http handling is handled by libevent, a work queue (with configurable depth and parallelism) is used to handle application requests. - *Wrap HTTP request in C++ class*; this makes the application code mostly HTTP-server-neutral - *Refactor RPC to move all http-specific code to a separate file*. Theoreticaly this can allow building without HTTP server but with another RPC backend, e.g. Qt's debug console (currently not implemented) or future RPC mechanisms people may want to use. - *HTTP dispatch mechanism*; services (e.g., RPC, REST) register which URL paths they want to handle. By using a proven, high-performance asynchronous networking library (also used by Tor) and HTTP server, problems such as #5674, #5655, #344 should be avoided. What works? bitcoind, bitcoin-cli, bitcoin-qt. Unit tests and RPC/REST tests pass. The aim for now is everything but SSL support. Configuration options: - `-rpcthreads`: repurposed as "number of work handler threads". Still defaults to 4. - `-rpcworkqueue`: maximum depth of work queue. When this is reached, new requests will return a 500 Internal Error. - `-rpctimeout`: inactivity time, in seconds, after which to disconnect a client. - `-debug=http`: low-level http activity logging
2015-09-03Update gitian build guide for Debian 8.1fanquake
Signed-off-by: fanquake <fanquake@gmail.com>
2015-09-02tests: GET requests cannot have request body, use POST in rest.pyWladimir J. van der Laan
Sending a request body with GET request is not valid in HTTP spec, and not compatible with evhttpd.
2015-09-02tests: fix qt payment testCory Fields
Now that boost no longer automatically initializes openssl, we have to do it ourselves.
2015-09-02build: build-system changes for libeventWladimir J. van der Laan
2015-09-02libevent: add dependsCory Fields
2015-09-02Remove rpc_boostasiotocnetaddr testWladimir J. van der Laan
Dropping all use of boost::asio.
2015-09-02qa: Remove -rpckeepalive tests from httpbasicsWladimir J. van der Laan
This option was a temporary workaround, and is no longer necessary with the new web server.
2015-09-02doc: remove documentation for rpcsslWladimir J. van der Laan
2015-09-02Merge pull request #6620Wladimir J. van der Laan
10e469a travis: bump wine to 1.7 (Cory Fields)
2015-09-02travis: bump wine to 1.7Cory Fields
2015-09-02Merge pull request #6617Wladimir J. van der Laan
bfadae3 travis: for travis generating an extra build (Cory Fields)
2015-09-02Update build-unix.mdAltoidnerd
If a user hasn't ready run autogen.sh, configure doesn't yet exist. Do the instructions seem to presume you have already built bitcoin? I don't think they do. Would stifle beginners. Update build-unix.md
2015-09-01travis: for travis generating an extra buildCory Fields
2015-09-01Merge pull request #6548Wladimir J. van der Laan
060058e Enable python tests for Native Windows (ptschip)
2015-08-31Merge pull request #6583Wladimir J. van der Laan
9f3e48e add support for miniupnpc api version 14 (Pavel Vasin)
2015-08-31Merge pull request #6599Wladimir J. van der Laan
9bebf60 Make sure LogPrint strings are line-terminated (J Ross Nicoll)
2015-08-30Use network group instead of CNetAddr in final pass to select node to disconnectPatrick Strateman
2015-08-29Make sure LogPrint strings are line-terminatedJ Ross Nicoll
2015-08-26Enable python tests for Native Windowsptschip
1) Multiplatorm support for devnull 2) Fixed a bug in the handling of cache files 3) Deleted run-bitcoin-cli as no longer needed
2015-08-26Merge pull request #6530Wladimir J. van der Laan
c33c11e Improve addrman Select() performance when buckets are nearly empty (Pieter Wuille)
2015-08-26Merge pull request #6590Wladimir J. van der Laan
bd30c3d rpc-tests: re-enable rpc-tests for Windows (Cory Fields) a193387 net: Set SO_REUSEADDR for Windows too (Cory Fields)
2015-08-26Improve addrman Select() performance when buckets are nearly emptyPieter Wuille
2015-08-25Fix commentPatrick Strateman
2015-08-25Acquire cs_vNodes before changing refrence countsPatrick Strateman
2015-08-25CNodeRef copy constructor and assignment operatorPatrick Strateman
2015-08-25rpc-tests: re-enable rpc-tests for WindowsCory Fields
2015-08-25net: Set SO_REUSEADDR for Windows tooCory Fields
When running the rpc tests in Wine, nodes often fail to listen on localhost due to a stale socket from a previous run. This aligns the behavior with other platforms.
2015-08-24Merge pull request #6576Wladimir J. van der Laan
e938122 Stop parsing JSON after first finished construct. (Daniel Kraft)
2015-08-24Merge pull request #6523Wladimir J. van der Laan
0ce7398 Add p2p-fullblocktest.py (Casey Rodarmor)
2015-08-23add support for miniupnpc api version 14Pavel Vasin
The value of new arg ttl is set to 2 as it's recommended default.
2015-08-22Return false early if vEvictionCandidates is emptyPatrick Strateman
2015-08-22Better support for nodes with non-standard nMaxConnectionsPatrick Strateman
2015-08-22RAII wrapper for CNode*Patrick Strateman
2015-08-22Add comments to AttemptToEvictConnectionPatrick Strateman
2015-08-22Remove redundant whiteconnections optionPatrick Strateman
2015-08-22Prefer to disconnect peers in favor of whitelisted peersPatrick Strateman
2015-08-22AttemptToEvictConnectionPatrick Strateman
2015-08-22Record nMinPingUsecTimePatrick Strateman
2015-08-22Refactor: Move failure conditions to the top of AcceptConnectionPatrick Strateman
2015-08-22Refactor: Bail early in AcceptConnectionPatrick Strateman
2015-08-22Refactor: AcceptConnectionPatrick Strateman
2015-08-21Add p2p-fullblocktest.pyCasey Rodarmor
2015-08-21Merge pull request #6541Wladimir J. van der Laan
e0862c0 Reformat validateaddress help, add missing iswatchonly description. (Pavel Janík)
2015-08-20Merge pull request #6242Wladimir J. van der Laan
17221bf chainparams: don't use std namespace (Cory Fields) f0deec5 chainparams: move CCheckpointData into chainparams.h (Cory Fields)
2015-08-20Merge pull request #6545Wladimir J. van der Laan
8be371d Do not store more than 200 timedata samples. (Pavel Janík)
2015-08-20Merge pull request #6556Wladimir J. van der Laan
1123cdb add unit test for CNetAddr::GetGroup. (Alex Morcos) bba3db1 Fix masking of irrelevant bits in address groups. (Alex Morcos)