aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-11-07Do not use third party services for IP detection.Gregory Maxwell
This is a simplified re-do of closed pull #3088. This patch eliminates the privacy and reliability problematic use of centralized web services for discovering the node's addresses for advertisement. The Bitcoin protocol already allows your peers to tell you what IP they think you have, but this data isn't trustworthy since they could lie. So the challenge is using it without creating a DOS vector. To accomplish this we adopt an approach similar to the one used by P2Pool: If we're announcing and don't have a better address discovered (e.g. via UPNP) or configured we just announce to each peer the address that peer told us. Since peers could already replace, forge, or drop our address messages this cannot create a new vulnerability... but if even one of our peers is giving us a good address we'll eventually make a useful advertisement. We also may randomly use the peer-provided address for the daily rebroadcast even if we otherwise have a seemingly routable address, just in case we've been misconfigured (e.g. by UPNP). To avoid privacy problems, we only do these things if discovery is enabled.
2014-11-04Merge pull request #5007Wladimir J. van der Laan
af82884 Add "warmup mode" for RPC server. (Daniel Kraft)
2014-11-04Add "warmup mode" for RPC server.Daniel Kraft
Start the RPC server before doing all the (expensive) startup initialisations like loading the block index. Until the node is ready, return all calls immediately with a new error signalling "in warmup" with an appropriate status message (similar to the init message). This is useful for RPC clients to know that the server is there (e. g., they don't have to start it) but not yet available. It is used in Namecoin and Huntercoin already for some time, and there exists a UI hooked onto the RPC interface that actively uses this to its advantage.
2014-11-04build: Fix "too many arguments" errorFrancis GASCHET
Closes #5141
2014-11-04Merge pull request #5205Pieter Wuille
b4347f6 minor code style cleanup after recent merges (Philip Kaufmann)
2014-11-04minor code style cleanup after recent mergesPhilip Kaufmann
- add a missing license header - correct some header orderings etc.
2014-11-04Merge pull request #5191Pieter Wuille
a2cfae8 util.cpp comment correction (21E14)
2014-11-04Merge pull request #5196Wladimir J. van der Laan
8473862 Fix all header defines (Pavel Janík)
2014-11-04Merge pull request #5162Wladimir J. van der Laan
d2e74c5 boost: moveonly: split CPubKey and friends to new files (Cory Fields) 78c228c boost: moveonly: move BIP32Hash to hash.h (Cory Fields) 900078a boost: moveonly: create eccryptoverify.h|cpp and move helper functions there (Cory Fields)
2014-11-03Merge pull request #3727Wladimir J. van der Laan
e69a587 RPC: submitblock: Support for returning specific rejection reasons (Luke Dashjr)
2014-11-03Merge pull request #5157Wladimir J. van der Laan
b4ee0bd Introduce preferred download peers (Pieter Wuille)
2014-11-03Fix all header definesPavel Janík
2014-11-03Merge pull request #5201 from sipa/orderGavin Andresen
Remove file and class order guidelines
2014-11-03Merge pull request #5186Wladimir J. van der Laan
771d500 minor cleanup: include orders, end comments etc. (Philip Kaufmann)
2014-11-03Merge pull request #5106Wladimir J. van der Laan
1bea2bb Rename ProcessBlock to ProcessNewBlock to indicate change of behaviour, and document it (Luke Dashjr) d29a291 Rename RPC_TRANSACTION_* errors to RPC_VERIFY_* and use RPC_VERIFY_ERROR for submitblock (Luke Dashjr) f877aaa Bugfix: submitblock: Use a temporary CValidationState to determine accurately the outcome of ProcessBlock, now that it no longer does the full block validity check (Luke Dashjr) 24e8896 Add CValidationInterface::BlockChecked notification (Luke Dashjr)
2014-11-03Remove file and class order guidelinesPieter Wuille
2014-11-03Merge pull request #5185Wladimir J. van der Laan
2191eac add tests to travis (Cory Fields) 7667850 tests: replace the old (unused since Travis) tests with new rpc test scripts (Cory Fields) fa7f8cd tests: remove old pull-tester scripts (Cory Fields) 5122ea7 tests: fix forknotify.py on windows (Cory Fields) 7a41614 tests: allow rpc-tests to get filenames for bitcoind and bitcoin-cli from the environment (Cory Fields) f635269 tests: enable alertnotify test for Windows (Cory Fields)
2014-11-03Merge pull request #5169Wladimir J. van der Laan
20a5f61 Don't relay alerts to peers before version negotiation (Wladimir J. van der Laan)
2014-11-01util.cpp comment correction21E14
2014-10-31Merge pull request #5145Wladimir J. van der Laan
484e350 Update comments in client version to be doxygen compatible (Michael Ford) 6395ba3 Update comments in version to be doxygen compatible (Michael Ford)
2014-10-31Merge pull request #5187Pieter Wuille
e743678 fix a typo (Yoichi Hirai)
2014-10-31fix a typoYoichi Hirai
2014-10-31qt: translations update from TransifexWladimir J. van der Laan
2014-10-31Merge pull request #5077Wladimir J. van der Laan
2aa6329 Enable customising node policy for datacarrier data size with a -datacarriersize option (Luke Dashjr)
2014-10-31Merge pull request #5168Wladimir J. van der Laan
023e63d qt: Move transaction notification to transaction table model (Wladimir J. van der Laan)
2014-10-31minor cleanup: include orders, end comments etc.Philip Kaufmann
- no code changes
2014-10-31boost: moveonly: split CPubKey and friends to new filesCory Fields
2014-10-31boost: moveonly: move BIP32Hash to hash.hCory Fields
2014-10-31boost: moveonly: create eccryptoverify.h|cpp and move helper functions thereCory Fields
Eventually (after 0.10) these files will hold the logic for crypto verification routines, and CKey/CPubKey will call into them.
2014-10-31add tests to travisCory Fields
2014-10-31tests: replace the old (unused since Travis) tests with new rpc test scriptsCory Fields
2014-10-31tests: remove old pull-tester scriptsCory Fields
They're unused since the switch to Travis
2014-10-31tests: fix forknotify.py on windowsCory Fields
Windows interprets 'foo.txt' as a literal filename while "foo.txt" is treated as expected.
2014-10-31tests: allow rpc-tests to get filenames for bitcoind and bitcoin-cli from ↵Cory Fields
the environment This will allow for windows tests to run with bitcoind.exe and bitcoin-cli.exe
2014-10-31tests: enable alertnotify test for WindowsCory Fields
The semantics of "echo" are different there and they change the resulting text, but they're still correct and predictable.
2014-10-31Update comments in client version to be doxygen compatibleMichael Ford
2014-10-31Update comments in version to be doxygen compatibleMichael Ford
2014-10-30Merge pull request #5164Wladimir J. van der Laan
71697f9 Separate protocol versioning from clientversion (Cory Fields)
2014-10-30Merge pull request #5146Wladimir J. van der Laan
5b40d88 Update comments in wallet to be doxygen compatible (Michael Ford)
2014-10-30Merge pull request #5174Wladimir J. van der Laan
7792040 Update comments in rpcserver to be doxygen compatible (Michael Ford)
2014-10-30Merge pull request #5167Wladimir J. van der Laan
2d06c0f Add missing reserved address spaces. (Matt Corallo)
2014-10-30Merge pull request #5172Wladimir J. van der Laan
eadcd0c Print parameter interactions to console, too (Matt Corallo)
2014-10-30Merge pull request #5176Wladimir J. van der Laan
981f790 [Qt] fix slot connection problems when no wallet is loaded (Philip Kaufmann)
2014-10-30Merge pull request #5142Wladimir J. van der Laan
02fe12d Update generate-seeds.py to produce doxygen compatible comments (Michael Ford) f2e03ff Update comments in chainparams to be doxygen compatible (Michael Ford) 2fdc335 Update comments in chain to be doxygen compatible (Michael Ford)
2014-10-30Merge pull request #5148Wladimir J. van der Laan
2b173d3 Update comments in keystore to be doxygen compatible (Michael Ford) ffd8edd Update comments in key to be doxygen compatible (Michael Ford)
2014-10-30[Qt] fix slot connection problems when no wallet is loadedPhilip Kaufmann
- guard 4 connect calls by an #ifdef when no wallet is loaded to fix "No such slot" warnings - also add comments when #ifdef ENABLE_WALLET end - fixes #5175
2014-10-30Update comments in rpcserver to be doxygen compatibleMichael Ford
2014-10-29Print parameter interactions to console, tooMatt Corallo
2014-10-30RPC: submitblock: Support for returning specific rejection reasonsLuke Dashjr
2014-10-29Introduce preferred download peersPieter Wuille