Wladimir J. van der Laan
2ebb8099d9
Merge #8742 : Specify Protobuf version 2 in paymentrequest.proto
...
c4084c2
Specify Protobuf version 2 in paymentrequest.proto (fanquake)
2016-09-19 15:43:51 +02:00
Wladimir J. van der Laan
a5b20edd3d
Merge #8494 : [init, wallet] ParameterInteraction() iff wallet enabled
...
fa5d276
[init] ParameterInteraction() iff wallet enabled (MarcoFalke)
2016-09-19 11:38:16 +02:00
fanquake
c4084c2085
Specify Protobuf version 2 in paymentrequest.proto
2016-09-16 11:45:08 +08:00
Wladimir J. van der Laan
d9c99c3058
net: No longer send local address in addrMe
...
After #8594 the addrFrom sent by a node is not used anymore at all,
so don't bother sending it.
Also mitigates the privacy issue in (#8616 ). It doesn't completely solve
the issue as GetLocalAddress is also called in AdvertiseLocal, but at
least when advertising addresses it stands out less as *our* address.
2016-09-15 23:42:01 +02:00
Patrick Strateman
2ca6b9df1d
Remove last reference to CWalletDB from accounting_tests.cpp
2016-09-15 13:51:04 -07:00
Patrick Strateman
02e2a81536
Remove pwalletdb parameter from CWallet::AddAccountingEntry
2016-09-15 13:50:59 -07:00
Patrick Strateman
d2e678d7d2
Add CWallet::ReorderTransactions and use in accounting_tests.cpp
2016-09-15 06:52:15 -07:00
Patrick Strateman
59adc86680
Add CWallet::ListAccountCreditDebit
...
Simple pass through for CWalletDB::ListAccountCreditDebit
2016-09-15 06:52:15 -07:00
Pavel Janík
b4fb512719
UndoReadFromDisk works on undo files (rev), not on block files.
2016-09-15 12:40:09 +02:00
Cory Fields
f3552da813
net: fix maxuploadtarget setting
...
This was broken by 63cafa6329
.
Note that while this fixes the settings, it doesn't fix the actual usage of
-maxuploadtarget completely, as there is currently a bug in the
nOptimisticBytesWritten accounting that causes a delayed response if the target
is reached. That bug will be addressed separately.
2016-09-14 13:14:04 -04:00
Wladimir J. van der Laan
881d7eaf29
Merge #8715 : net: only delete CConnman if it's been created
...
36fa01f
net: only delete CConnman if it's been created (Cory Fields)
2016-09-14 10:16:25 +02:00
Cory Fields
36fa01f217
net: only delete CConnman if it's been created
...
In the case of (for example) an already-running bitcoind, the shutdown sequence
begins before CConnman has been created, leading to a null-pointer dereference
when g_connman->Stop() is called.
Instead, Just let the CConnman dtor take care of stopping.
2016-09-13 22:43:23 -04:00
Jonas Schnelli
1b6bcdd3aa
Remove maxuploadtargets recommended minimum
2016-09-13 18:08:17 +02:00
Jonas Schnelli
d8b062ef5e
[Qt] only update "amount of blocks left" when the header chain is in-sync
2016-09-13 17:57:25 +02:00
Wladimir J. van der Laan
fa7caf6d91
Merge #8693 : add witness address to address book
...
62ffbbd
add witness address to address book (instagibbs)
2016-09-13 17:10:28 +02:00
Wladimir J. van der Laan
c9914c2094
Merge #8699 : Remove createwitnessaddress RPC command
...
86c3f8d
Remove createwitnessaddress (Johnson Lau)
2016-09-13 17:03:00 +02:00
Wladimir J. van der Laan
37ac67816a
Merge #8601 : Add option to opt into full-RBF when sending funds (rebase, original by petertodd)
...
86726d8
Rename `-optintofullrbf` option to `-walletrbf` (Wladimir J. van der Laan)
05fa823
wallet: Add BIP125 comment for MAXINT-1/-2 behavior (Wladimir J. van der Laan)
152f45b
Add option to opt into full-RBF when sending funds (Peter Todd)
2016-09-13 11:35:26 +02:00
Wladimir J. van der Laan
86726d8680
Rename -optintofullrbf
option to -walletrbf
...
This makes it clear that this is a wallet option.
2016-09-13 11:32:29 +02:00
Johnson Lau
86c3f8db0b
Remove createwitnessaddress
...
This RPC command is unsafe as it will return an address even if the script is invalid.
2016-09-13 11:35:14 +08:00
isle2983
0766d1cac3
[copyright] add MIT license headers to .sh scripts where missing
...
Years are set according to 'git log' history
2016-09-11 13:36:22 -06:00
rodasmith
1d635ae61b
fix op order to append first alert
2016-09-10 11:41:01 -07:00
instagibbs
62ffbbdec3
add witness address to address book
2016-09-09 12:15:08 -04:00
Jonas Schnelli
702e6e059b
Merge #8678 : [Qt][CoinControl] fix UI bug that could result in paying unexpected fee
...
0480293
[Qt][CoinControl] fix UI bug that could result in paying unexpected fee (Jonas Schnelli)
2016-09-09 14:34:03 +02:00
Pieter Wuille
6898213409
Merge #8681 : Performance Regression Fix: Pre-Allocate txChanged vector
...
ec81881
Performance Regression Fix: Pre-Allocate txChanged vector (Jeremy Rubin)
2016-09-09 13:41:15 +02:00
Wladimir J. van der Laan
2abfe5956e
Merge #8664 : Fix segwit-related wallet bug
...
c40b034
Clear witness with vin/vout in CWallet::CreateTransaction() (Suhas Daftuar)
2016-09-09 12:24:39 +02:00
Wladimir J. van der Laan
6423116741
Merge #8085 : p2p: Begin encapsulation
...
0103c5b
net: move MAX_FEELER_CONNECTIONS into connman (Cory Fields)
e700cd0
Convert ForEachNode* functions to take a templated function argument rather than a std::function to eliminate std::function overhead (Jeremy Rubin)
d1a2295
Made the ForEachNode* functions in src/net.cpp more pragmatic and self documenting (Jeremy Rubin)
98591c5
net: move vNodesDisconnected into CConnman (Cory Fields)
fa2f8bc
net: add nSendBufferMaxSize/nReceiveFloodSize to CConnection::Options (Cory Fields)
a19553b
net: Introduce CConnection::Options to avoid passing so many params (Cory Fields)
bafa5fc
net: Drop StartNode/StopNode and use CConnman directly (Cory Fields)
e81a602
net: pass CClientUIInterface into CConnman (Cory Fields)
f60b905
net: Pass best block known height into CConnman (Cory Fields)
fdf69ff
net: move max/max-outbound to CConnman (Cory Fields)
8a59369
net: move semOutbound to CConnman (Cory Fields)
bd72937
net: move nLocalServices/nRelevantServices to CConnman (Cory Fields)
be9c796
net: move SendBufferSize/ReceiveFloodSize to CConnman (Cory Fields)
63cafa6
net: move send/recv statistics to CConnman (Cory Fields)
adf5d4c
net: SocketSendData returns written size (Cory Fields)
ee44fa9
net: move messageHandlerCondition to CConnman (Cory Fields)
960cf2e
net: move nLocalHostNonce to CConnman (Cory Fields)
551e088
net: move nLastNodeId to CConnman (Cory Fields)
6c19d92
net: move whitelist functions into CConnman (Cory Fields)
53347f0
net: create generic functor accessors and move vNodes to CConnman (Cory Fields)
c0569c7
net: Add most functions needed for vNodes to CConnman (Cory Fields)
8ae2dac
net: move added node functions to CConnman (Cory Fields)
502dd3a
net: Add oneshot functions to CConnman (Cory Fields)
a0f3d3c
net: move ban and addrman functions into CConnman (Cory Fields)
aaf018e
net: handle nodesignals in CConnman (Cory Fields)
b1a5f43
net: move OpenNetworkConnection into CConnman (Cory Fields)
02137f1
net: Move socket binding into CConnman (Cory Fields)
5b446dd
net: Pass CConnection to wallet rather than using the global (Cory Fields)
8d58c4d
net: Pass CConnman around as needed (Cory Fields)
d7349ca
net: Add rpc error for missing/disabled p2p functionality (Cory Fields)
cd16f48
net: Create CConnman to encapsulate p2p connections (Cory Fields)
d93b14d
net: move CBanDB and CAddrDB out of net.h/cpp (Cory Fields)
531214f
gui: add NodeID to the peer table (Cory Fields)
2016-09-09 11:52:22 +02:00
Wladimir J. van der Laan
4daf02a03f
Merge #8677 : Do not shadow upper local variable 'send', prevent -Wshadow compiler warning.
...
125b946
Do not shadow upper local variable 'send', prevent -Wshadow compiler warning. (Pavel Janík)
2016-09-09 10:25:39 +02:00
Wladimir J. van der Laan
666eaf03cf
Merge #8680 : Address Travis spurious failures
...
d6a5dc4
add waitfornewblock/waitforblock/waitforblockheight rpcs and use them for tests (Cory Fields)
2016-09-09 08:33:54 +02:00
Wladimir J. van der Laan
80a4f21d37
Merge #8525 : Do not store witness txn in rejection cache
...
ca10a03
Add basic test for IsStandard witness transaction blinding (instagibbs)
34521e4
Do not store witness txn in rejection cache (Pieter Wuille)
2016-09-09 07:47:48 +02:00
Cory Fields
0103c5b90f
net: move MAX_FEELER_CONNECTIONS into connman
2016-09-08 13:06:05 -04:00
Jeremy Rubin
e700cd0bc8
Convert ForEachNode* functions to take a templated function argument rather than a std::function to eliminate std::function overhead
2016-09-08 13:06:05 -04:00
Jeremy Rubin
d1a2295f0d
Made the ForEachNode* functions in src/net.cpp more pragmatic and self documenting
2016-09-08 13:06:05 -04:00
Cory Fields
98591c5027
net: move vNodesDisconnected into CConnman
2016-09-08 13:06:05 -04:00
Cory Fields
fa2f8bc47f
net: add nSendBufferMaxSize/nReceiveFloodSize to CConnection::Options
2016-09-08 13:06:00 -04:00
Cory Fields
a19553b992
net: Introduce CConnection::Options to avoid passing so many params
2016-09-08 13:04:29 -04:00
Cory Fields
bafa5fc5a1
net: Drop StartNode/StopNode and use CConnman directly
2016-09-08 12:24:07 -04:00
Cory Fields
e81a602cf0
net: pass CClientUIInterface into CConnman
2016-09-08 12:24:07 -04:00
Cory Fields
f60b9059e4
net: Pass best block known height into CConnman
...
CConnman then passes the current best height into CNode at creation time.
This way CConnman/CNode have no dependency on main for height, and the signals
only move in one direction.
This also helps to prevent identity leakage a tiny bit. Before this change, an
attacker could theoretically make 2 connections on different interfaces. They
would connect fully on one, and only establish the initial connection on the
other. Once they receive a new block, they would relay it to your first
connection, and immediately commence the version handshake on the second. Since
the new block height is reflected immediately, they could attempt to learn
whether the two connections were correlated.
This is, of course, incredibly unlikely to work due to the small timings
involved and receipt from other senders. But it doesn't hurt to lock-in
nBestHeight at the time of connection, rather than letting the remote choose
the time.
2016-09-08 12:24:06 -04:00
Cory Fields
fdf69ff21a
net: move max/max-outbound to CConnman
2016-09-08 12:24:06 -04:00
Cory Fields
8a593694b1
net: move semOutbound to CConnman
2016-09-08 12:24:06 -04:00
Cory Fields
bd72937dc4
net: move nLocalServices/nRelevantServices to CConnman
...
These are in-turn passed to CNode at connection time. This allows us to offer
different services to different peers (or test the effects of doing so).
2016-09-08 12:24:06 -04:00
Cory Fields
be9c796dc5
net: move SendBufferSize/ReceiveFloodSize to CConnman
2016-09-08 12:24:06 -04:00
Cory Fields
63cafa6329
net: move send/recv statistics to CConnman
2016-09-08 12:24:06 -04:00
Cory Fields
adf5d4c2e4
net: SocketSendData returns written size
2016-09-08 12:24:06 -04:00
Cory Fields
ee44fa9576
net: move messageHandlerCondition to CConnman
2016-09-08 12:24:06 -04:00
Cory Fields
960cf2e405
net: move nLocalHostNonce to CConnman
...
This behavior seems to have been quite racy and broken.
Move nLocalHostNonce into CNode, and check received nonces against all
non-fully-connected nodes. If there's a match, assume we've connected
to ourself.
2016-09-08 12:24:06 -04:00
Cory Fields
551e0887db
net: move nLastNodeId to CConnman
2016-09-08 12:24:06 -04:00
Cory Fields
6c19d92361
net: move whitelist functions into CConnman
2016-09-08 12:24:06 -04:00
Cory Fields
53347f0cb9
net: create generic functor accessors and move vNodes to CConnman
2016-09-08 12:24:06 -04:00
Cory Fields
c0569c7fa1
net: Add most functions needed for vNodes to CConnman
2016-09-08 12:12:58 -04:00
Cory Fields
8ae2dac1c6
net: move added node functions to CConnman
2016-09-08 12:12:58 -04:00
Cory Fields
502dd3a8a0
net: Add oneshot functions to CConnman
2016-09-08 12:12:57 -04:00
Cory Fields
a0f3d3cdad
net: move ban and addrman functions into CConnman
2016-09-08 12:12:57 -04:00
Cory Fields
aaf018e3b7
net: handle nodesignals in CConnman
2016-09-08 12:06:24 -04:00
Cory Fields
b1a5f43208
net: move OpenNetworkConnection into CConnman
2016-09-08 12:06:24 -04:00
Cory Fields
02137f11e2
net: Move socket binding into CConnman
2016-09-08 12:06:24 -04:00
Cory Fields
5b446dd5b1
net: Pass CConnection to wallet rather than using the global
2016-09-08 12:04:35 -04:00
Cory Fields
8d58c4d81f
net: Pass CConnman around as needed
2016-09-08 12:04:35 -04:00
Cory Fields
d7349ca50d
net: Add rpc error for missing/disabled p2p functionality
2016-09-08 12:04:35 -04:00
Cory Fields
cd16f48028
net: Create CConnman to encapsulate p2p connections
2016-09-08 12:04:35 -04:00
Cory Fields
d93b14dc5d
net: move CBanDB and CAddrDB out of net.h/cpp
...
This will eventually solve a circular dependency
2016-09-08 12:03:22 -04:00
Cory Fields
531214fb10
gui: add NodeID to the peer table
2016-09-08 12:03:22 -04:00
MarcoFalke
ddc308068d
Merge #8671 : Minimal fix to slow prevector tests as stopgap measure
...
f71d4a3
Minimal fix to slow prevector tests as stopgap measure (Jeremy Rubin)
2016-09-08 11:12:50 +02:00
Jeremy Rubin
ec81881b86
Performance Regression Fix: Pre-Allocate txChanged vector
2016-09-07 20:10:50 -04:00
MarcoFalke
ec139a5621
Merge #8673 : Trivial: Fix obvious assignment/equality error in test
...
426e7bc
Fix obvious assignment/equality error in test (Jeremy Rubin)
2016-09-07 19:36:43 +02:00
Cory Fields
d6a5dc4a2e
add waitfornewblock/waitforblock/waitforblockheight rpcs and use them for tests
...
waitfornewblock waits until a new block is received, or the timeout expires, then
returns the current block height/hash.
waitforblock waits for a specific blockhash, or until the timeout expires, then
returns the current block height/hash. If the target blockhash is the current
tip, it will return immediately.
waitforblockheight waits until the tip has reached a certain height or higher,
then returns the current height and hash.
waitforblockheight is used to avoid polling in the rpc tests.
2016-09-07 12:46:01 -04:00
Jonas Schnelli
04802930d4
[Qt][CoinControl] fix UI bug that could result in paying unexpected fee
2016-09-07 16:05:27 +02:00
Pavel Janík
125b946cb4
Do not shadow upper local variable 'send', prevent -Wshadow compiler warning.
2016-09-07 13:45:13 +02:00
Pieter Wuille
5b2ea29cf4
Merge #8594 : Do not add random inbound peers to addrman.
...
eb3596f
Do not add random inbound peers to addrman. (Gregory Maxwell)
2016-09-07 13:19:53 +02:00
Pieter Wuille
e2a1a1ee89
Merge #8606 : Fix some locks
...
144ed76
Fix some locks (Pieter Wuille)
2016-09-07 13:10:10 +02:00
Hampus Sjöberg
c015634400
qt: Adding transaction size to transaction details window
2016-09-06 22:31:36 +02:00
Hampus Sjöberg
fdf82fba31
Adding method GetTotalSize() to CTransaction
...
GetTotalSize() returns the total transaction size (including witness) in
bytes.
2016-09-06 22:30:30 +02:00
Jeremy Rubin
426e7bce0e
Fix obvious assignment/equality error in test
2016-09-06 16:22:13 -04:00
Jeremy Rubin
f71d4a3786
Minimal fix to slow prevector tests as stopgap measure
2016-09-06 16:19:25 -04:00
Wladimir J. van der Laan
d077f43f7e
Merge #8663 : trivial: remove unnecessary variable fDaemon
...
ff2ed7a
trivial: remove unnecessary variable fDaemon (mruddy)
2016-09-06 15:20:08 +02:00
Pieter Wuille
34521e4d7d
Do not store witness txn in rejection cache
2016-09-05 17:48:56 +02:00
Pieter Wuille
e82fb872ff
Merge #8651 : Predeclare PrecomputedTransactionData as struct
...
4424af5
Predeclare PrecomputedTransactionData as sturct (Pieter Wuille)
2016-09-05 13:30:09 +02:00
Suhas Daftuar
c40b034327
Clear witness with vin/vout in CWallet::CreateTransaction()
2016-09-04 20:09:13 -04:00
mruddy
ff2ed7a5bc
trivial: remove unnecessary variable fDaemon
2016-09-04 11:42:07 -04:00
Gregory Maxwell
6d0ced1865
Do not set an addr time penalty when a peer advertises itself.
...
Claims a peer makes about itself are inherently more credible.
2016-09-03 10:24:37 +00:00
Pavel Janík
7c069a7093
Do not shadow global variable
2016-09-02 20:50:59 +02:00
Wladimir J. van der Laan
cbe9ae8c69
Merge #8466 : [Trivial] Do not shadow variables in networking code
...
b7c349d
Do not shadow variables in networking code (Pavel Janík)
2016-09-02 12:51:56 +02:00
Wladimir J. van der Laan
381d0ddc8a
Merge #8449 : [Trivial] Do not shadow local variable, cleanup
...
a159f25
Remove redundand (and shadowing) declaration (Pavel Janík)
cce3024
Do not shadow local variable, cleanup (Pavel Janík)
2016-09-02 12:25:59 +02:00
Pieter Wuille
4424af5190
Predeclare PrecomputedTransactionData as sturct
2016-09-02 11:43:06 +02:00
Wladimir J. van der Laan
6f939c9080
Merge #8629 : C++11: s/boost::scoped_ptr/std::unique_ptr/
...
cdd79eb
C++11: s/boost::scoped_ptr/std::unique_ptr/ (Jorge Timón)
2016-09-02 09:56:33 +02:00
Jorge Timón
cdd79eb70f
C++11: s/boost::scoped_ptr/std::unique_ptr/
2016-09-01 19:05:07 +02:00
Pieter Wuille
854f1af22e
Make the dummy argument to getaddednodeinfo optional
2016-09-01 16:27:30 +02:00
Wladimir J. van der Laan
f061415d12
Merge #8638 : rest.cpp: change HTTP_INTERNAL_SERVER_ERROR to HTTP_BAD_REQUEST
...
f012a85
rest.cpp: change HTTP_INTERNAL_SERVER_ERROR to HTTP_BAD_REQUEST (djpnewton)
2016-09-01 15:58:43 +02:00
Wladimir J. van der Laan
0e563d89c0
Merge #8472 : Do not shadow LOCK's criticalblock variable for LOCK inside LOCK
...
33d15a3
Do not shadow LOCK's criticalblock variable for LOCK inside LOCK (Pavel Janík)
2016-09-01 14:42:00 +02:00
Pieter Wuille
19b0f33de0
Merge #8524 : Precompute sighashes
...
35fe039
Rename to PrecomputedTransactionData (Pieter Wuille)
ab48c5e
Unit test for sighash caching (Nicolas DORIER)
d2c5d04
Precompute sighashes (Pieter Wuille)
2016-09-01 12:20:43 +02:00
djpnewton
f012a857f5
rest.cpp: change HTTP_INTERNAL_SERVER_ERROR to HTTP_BAD_REQUEST
2016-09-01 22:12:19 +12:00
Wladimir J. van der Laan
84decb54f2
Merge #8612 : Check for compatibility with download in FindNextBlocksToDownload
...
887919c
Check for compatibility with download in FindNextBlocksToDownload (Pieter Wuille)
2016-08-31 17:59:56 +02:00
Wladimir J. van der Laan
abc677c9a9
Merge #8191 : Do not shadow variables in src/wallet
...
b175cb7
Do not shadow variables. (Pavel Janík)
2016-08-31 16:40:29 +02:00
Wladimir J. van der Laan
5cac8b123e
Merge #8291 : [util] CopyrightHolders: Check for untranslated substitution
...
33336e1
[util] CopyrightHolders: Check for untranslated substitution (MarcoFalke)
2016-08-31 16:17:00 +02:00
Pavel Janík
b175cb755b
Do not shadow variables.
2016-08-31 16:16:05 +02:00
Wladimir J. van der Laan
0c8875d23b
Merge #8163 : Do not shadow global RPC table variable (tableRPC)
...
de1bbe3
Do not shadow global RPC table variable (tableRPC) (Pavel Janík)
2016-08-31 16:07:58 +02:00
Wladimir J. van der Laan
df3f12d409
Merge #8626 : Berkeley DB v6 compatibility fix
...
323a5fe
Berkeley DB v6 compatibility fix (Alexey Vesnin)
2016-08-31 14:42:45 +02:00
Johnson Lau
482f852da6
Implement NULLDUMMY softfork
2016-08-31 19:38:23 +08:00
Wladimir J. van der Laan
2b23dbaee5
Merge #8611 : Reduce default number of blocks to check at startup
...
203f212
Reduce default number of blocks to check at startup (Pieter Wuille)
2016-08-30 13:38:42 +02:00
Alexey Vesnin
323a5fe06a
Berkeley DB v6 compatibility fix
...
Fixes building error looking like this:
CXX wallet/libbitcoin_wallet_a-db.o
wallet/db.cpp: In member function ‘void CDBEnv::EnvShutdown()’:
wallet/db.cpp:46:16: error: call of overloaded ‘DbEnv(int)’ is ambiguous
DbEnv(0).remove(strPath.c_str(), 0);
^
wallet/db.cpp:46:16: note: candidates are:
In file included from wallet/db.h:21:0,
from wallet/db.cpp:6:
/usr/include/db_cxx.h:916:2: note: DbEnv::DbEnv(const DbEnv&)
DbEnv(const DbEnv &);
^
/usr/include/db_cxx.h:518:2: note: DbEnv::DbEnv(DB_ENV)
DbEnv(DB_ENV *dbenv);
^
/usr/include/db_cxx.h:516:2: note: DbEnv::DbEnv(u_int32_t)
DbEnv(u_int32_t flags);
^
Makefile:5780: recipe for target 'wallet/libbitcoin_wallet_a-db.o' failed
make[2]: ** [wallet/libbitcoin_wallet_a-db.o] Error 1
2016-08-30 09:00:55 +03:00