sipa
commented at 10:37 PM on March 27, 2015:
member
Included libsecp256k1 changes (multiple authors):
Converted some runtime initialization to static constants.
Convert all code to strict C89 (+ long long, + __int128).
Get rid of variable-length string conversion code.
Introduce a compact storage type, and use it for precomputed tables.
Extra benchmarks.
More x86_64 assembly (speeds up signing mostly).
Fast byteswapping inside hash functions.
Make the built-in RFC6979 nonce generator support additional entropy.
Use RFC6979 as test RNG.
qt: avoid hard-coding font names
They may not contain all necessary characters for a language
73cd4edb4f
[QA] fix httpbasic keep-alive test1a25a7edf8
Merge pull request #5674
1a25a7e [QA] fix httpbasic keep-alive test (Jonas Schnelli)
7d2cb48 Restore RPC HTTP keepalives to default. (Gregory Maxwell)
a0abff2755
Merge pull request #5671
73cd4ed qt: avoid hard-coding font names (Cory Fields)
52954e6 qt: fix broken unicode chars on osx 10.10 (Cory Fields)
f5ad78b qt: fonts: allow SubstituteFonts to filter based on user's language (Cory Fields)
e1aecae33a
Get rid of DetectShutdownThread
The main thread spends time waiting for the DetectShutdownThread.
So why not just run this waiting loop function in the main thread?
One thread-stack less saves 4MB of virtual memory on 32-bit, and 8MB on
64-bit.
28ee7e8b8c
osx: bump build sdk to 10.9f0172bf91e
osx packaging: move background image to .background to match gitian builds
Also increase temp dmg filesize to account for a bigger background image
88a797320a
osx packaging: switch background image to background.tiff
Also do a bit of cleanup:
- Make the background name a variable so it's easier to change
- Add proper make dependencies
997cab78cb
osx packaging: update DS_Store after background changes48bebcca79
add new osx dmg background picture95ef87c75e
Merge pull request #5684
f0172bf osx: bump build sdk to 10.9 (Cory Fields)
ab64022d54
Merge pull request #5651
1d84aea Coin Control: Use U+2248 "ALMOST EQUAL TO" rather than a simple tilde (which may be mistaken for a negative sign) (Luke Dashjr)
7b782f5 RPCWallet: Notate all account stuff as deprecated (Luke Dashjr)
2511a39cca
Merge pull request #5695
5fdc5b0 depends: latest config.guess and config.sub (Michael Ford)
23ef5b77a4
Merge pull request #5506
7873633 Squashed 'src/secp256k1/' changes from bccaf86..50cc6ab (Pieter Wuille)
1a9576d Use libsecp256k1's RFC6979 implementation (Pieter Wuille)
6b5f5294bb
Removed main.h dependency from rpcserver.cpp
Rebased by @laanwj:
- update for RPC methods added since 84d13ee: setmocktime,
invalidateblock, reconsiderblock. Only the first, setmocktime, required a change,
the other two are thread safe.
4401b2d7c5
Trim RPC command table
- invalidateblock and reconsiderblock were defined doubly
- remove no-longer-used threadSafe, as locks have been pushed down
5ebe0956b3
Merge pull request #5683
95ef87c add new osx dmg background picture (Jonas Schnelli)
48bebcc osx packaging: update DS_Store after background changes (Cory Fields)
997cab7 osx packaging: switch background image to background.tiff (Cory Fields)
88a7973 osx packaging: move background image to .background to match gitian builds (Cory Fields)
c7b22aa0ac
Change Coin Control first column label55eade9d46
Merge pull request #5720
55eade9 Change Coin Control first column label (fsb4000)
6bbca99 LSSharedFileListItemResolve() was deprecated in Mac OS X 10.10, use LSSharedFileListItemCopyResolvedURL() instead (Cory Fields)
5f04d1d0d7
Format build flags in src/Makefile.am.72ac792b4a
Merge pull request #5234
72ac792 Format build flags in src/Makefile.am. (randy-waterhouse)
d781d4725c
Merge pull request #5707
14d023f change hardcoded character constants to a set of descriptive named constants for database keys (Earlz)
6af674ecdc
[Qt] allow unit changes for read-only BitcoinAmountField
- fixes #5725
fdf80ea7b1
Remove bootstrap.md
See #5455
86731603d4
remove sig_canonical.json and sig_noncanonical.jsond6bed1514c
Improve gitian build guide
Point to the Debian 7.7 installer
Fix wording now that we only use a single image
Remove bitcoin checkout steps, they are covered in release-process
bfc29dcdc5
Fix typo - sentence starts with capital letter91a9fe094b
Fix typo3800135ad3
Remove whitespaces before double colon in errors and logs5262fde0ec
TRIVIAL: fix misleading commentbd2b73bb9b
depends: fix typos5a809ef0f0
Suggest --disable-wallet when libdb_cxx headers are missingfaf0af49f5
Fix README link from util.sh -> util.py.34c61813a4
fix _code_ snippet in gitian-building.md
Trivial typo-like fix
1fa89a54e8
Changed pronouns for correctness and inclusivityee932025c1
Change "insane" to "absurd" (referring to high fees) in text strings and identifiers.
Note that this will also require translation changes in Transifex for the key
"A fee higher than %1 is considered an insanely high fee." which is now
"A fee higher than %1 is considered an absurdly high fee."
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
1371e6f5db
Change IsDERSignature to BIP66 implementation80ad135a5e
Example unit tests from BIP66092e9fe5fb
BIP66 changeover logic5a47811da5
Add RPC test for DERSIG BIP switchover logic819bcf9b99
Increase coverage of DERSIG edge casesbf6cdebdc5
Merge pull request #5731
ee93202 Changed pronouns for correctness and inclusivity (bikinibabe)
1fa89a5 fix _code_ snippet in gitian-building.md (UdjinM6)
34c6181 Fix README link from util.sh -> util.py. (Matt Bogosian)
faf0af4 Suggest --disable-wallet when libdb_cxx headers are missing (Luke Dashjr)
5a809ef depends: fix typos (Michael Ford)
bd2b73b TRIVIAL: fix misleading comment (Vitalii Demianets)
5262fde Remove whitespaces before double colon in errors and logs (Pavel Janík)
3800135 Fix typo (Pavel Janík)
91a9fe0 Fix typo - sentence starts with capital letter (Pavel Janík)
bfc29dc Improve gitian build guide (Michael Ford)
d6bed15 remove sig_canonical.json and sig_noncanonical.json (Manuel Araoz)
8673160 Remove bootstrap.md (Michael Ford)
a62649731f
Replace difficulty readjustment blocks with Interval()f4b2078f72
Use separate SignatureChecker for CMutableTransaction858809a33e
Avoid storing a reference passed to SignatureChecker constructors9fddceda44
Merge pull request #5719
9fddced Avoid storing a reference passed to SignatureChecker constructors (Pieter Wuille)
858809a Use separate SignatureChecker for CMutableTransaction (Pieter Wuille)
f425050546
Merge pull request #5729
fdf80ea [Qt] allow unit changes for read-only BitcoinAmountField (Philip Kaufmann)
9c4a5a5067
Merge pull request #5713
bf6cdeb Increase coverage of DERSIG edge cases (Pieter Wuille)
819bcf9 Add RPC test for DERSIG BIP switchover logic (Pieter Wuille)
5a47811 BIP66 changeover logic (Pieter Wuille)
092e9fe Example unit tests from BIP66 (Pieter Wuille)
80ad135 Change IsDERSignature to BIP66 implementation (Pieter Wuille)
41e6e4caba
Merge pull request #5675
2d9b0b7 Fix priority calculation in CreateTransaction (Alex Morcos)
4e2b1fff98
Merge pull request #5647
3ff735c Increase block download timeout base from 10 to 20 minutes. (Gregory Maxwell)
6ee87f9bc5
Merge pull request #5732
1371e6f Change "insane" to "absurd" (referring to high fees) in text strings and identifiers. (Daira Hopwood)
e5f1f5a263
Merge pull request #5286
44e9a6b Update the 'test_IsStandard' unit test (Flavien Charlon)
a930658 Change the default maximum OP_RETURN size to 80 bytes (Flavien Charlon)
fcf646c9b0
Acquire CCheckQueue's lock to avoid race condition
This fixes a potential race condition in the CCheckQueueControl constructor,
which was looking directly at data in CCheckQueue without acquiring its lock.
Remove the now-unnecessary friendship for CCheckQueueControl
cf008ac8c3
Split logic to undo txin's off DisconnectBlock.
Instead, create a separate function that applies the undo operation of a
CTxInUndo object onto a CCoinsViewCache. This method is used from
DisconnectBlock.
eb1c2cd37f
build: fix newer boost build with c++11a2b04ddfe6
c++11: MOVEONLY: move function definitions out of the header
These need to be moved out of the header in order to resolve a circular
dependency between CWallet and CTxWallet. See next commit.
bbacd88204
c++11: MOVEONLY: break circular dependency in wallet
c++11 (libc++'s stdlib implementation anyway) doesn't allow for map types to be
forward-declared. for example:
class foo;
std::map<int, foo> bar; // error, foo has not been defined.
class foo{};
Since CWallet and CWalletTx are inter-dependent, but only std::map<*,CWalletTx>
is used, forward-declare CWallet instead and define CWalletTx first.
Despite the mangled git diff, this change only amounts to moving ~320 lines in
a single chunk.
3447cf87e2
c++11: don't forward-declare types used in maps5a6155ccfa
c++11: These look like user-defined literals.
Add a space to keep the compiler happy
7f991e364e
Merge pull request #5711
5ebe095 Trim RPC command table (Wladimir J. van der Laan)
4401b2d Removed main.h dependency from rpcserver.cpp (Eric Lombrozo)
87ecfb0f96
Merge pull request #5509
7f991e3 c++11: These look like user-defined literals. (Cory Fields)
5a6155c c++11: don't forward-declare types used in maps (Cory Fields)
3447cf8 c++11: MOVEONLY: break circular dependency in wallet (Cory Fields)
bbacd88 c++11: MOVEONLY: move function definitions out of the header (Cory Fields)
a2b04dd build: fix newer boost build with c++11 (Cory Fields)
31dedb463b
[Qt] prevent amount overflow problem with payment requests
Bitcoin amounts are stored as uint64 in the protobuf messages (see
paymentrequest.proto), but CAmount is defined as int64_t. Because
of that we need to verify that single and accumulated amounts are
in a valid range and no variable overflow has happened.
- fixes #5624 (#5622)
Thanks @SergioDemianLerner for reporting that issue and also supplying us
with a possible solution.
- add static verifyAmount() function to PaymentServer and move the logging
on error into the function
- also add a unit test to paymentservertests.cpp
a6516686dc
Merge pull request #5319
35f7227 Clean up wallet encryption code. (Daniel Kraft)
93b7544501
minor rework of SendMoney in rpcwallet
- rework the function to not log errors but use throw JSONRPCError
- remove a check for IsLocked() that is done in sendtoaddress and
sendfrom RPC calls already
- cache GetBalance() return value, because it's possibly used twice
25cf6f3d41
fix getblocktemplate lock issue
getblocktemplate didn't have a wallet lock before #5711 and IMO there is no need for LEAVE/ENTER critical section.
Fix getblocktemplate_proposals test by mining one block
This triggers the tested node to no longer be in initial
download, allowing the call to getblocktemplate() to succeed.
1cb2a00cb8
[Qt] add bitcoin logo to about screend67a642392
Add more information to errors in ReadBlockFromDisk
A lot of times, disk corruption problems appear here.
To facilitate debugging and troubleshooting, add position information
to the error messages.
f5791c6ae3
Merge pull request #5756
1cb2a00 Fix getblocktemplate_proposals test by mining one block (Suhas Daftuar)
5d901d8ece
fix jonasschnelli's gitian key
There where two keys in the keyfile and it also had a missing "-key" in the filename.
See: http://bitcoinstats.com/irc/bitcoin-dev/logs/2015/02/05#l1423162105
65f10e0ffc
Merge pull request #5721
cf008ac Acquire CCheckQueue's lock to avoid race condition (Suhas Daftuar)
fb6140b54b
Ignore getaddr messages on Outbound connections.
The only time when a client sends a "getaddr" message is when he
esatblishes an Outbound connection (see ProcessMessage() in
src/main.cpp). Another bitcoin client is expected to receive a
"getaddr" message only on Inbound connection. Ignoring "gettaddr"
requests on Outbound connections can resolve potential privacy issues
(and as was said such request normally do not happen anyway).
dca799e1db
Sanitize command strings before logging them.
Normally bitcoin core does not display any network originated strings without
sanitizing or hex encoding. This wasn't done for strcommand in many places.
This could be used to play havoc with a terminal displaying the logs,
especially with printtoconsole in use.
Thanks to Evil-Knievel for reporting this issue.
28d4cff0ed
Merge pull request #5770
28d4cff Sanitize command strings before logging them. (Gregory Maxwell)
32a8b6a9d7
[Qt] use qint64 in BitcoinGUI::setNumBlocks
- as QDateTime.secsTo() returns a qint64 also store in a qint64 and not in
an integer
47ee8cf091
[Qt] remove unused getNumBlocksAtStartup() from ClientModeldeda3e156d
Merge pull request #5753
d67a642 [Qt] add bitcoin logo to about screen (Jonas Schnelli)
Fix NegateSignatureS to not duplicate last byte of S
NegateSignatureS is called with a signature without a hashtype, so
do not save the last byte and append it after S negation.
Updates the two tests which were affected by this bug.
6f50dbd2fd
Add test for DER-encoding edge case
The fix to NegateSignatureS caused a test which had been failing
in IsValidSignatureEncoding to then fail in IsLowDERSignature.
Add new test so the original check remains exercised.
78c6bedb9c
Add fanquake PGP key99437c51ba
Merge #5787: Add fanquake PGP key
99437c5 Add fanquake PGP key (Michael Ford)
9bd8c9b131
gitian: don't add . to tar list
Since permissions and timestamps are changed for the sake of determinism,
. must not be added to the archive. Otherwise, tar may try to modify pwd when
extracting.
0c6ab676ee
Merge #5790: gitian: don't add . to tar list
0c6ab67 gitian: don't add . to tar list (Cory Fields)
c70cdbc393
Fix filename for testing QT.f9a8fc4b1a
Merge #5792: Fix filename for testing QT.
f9a8fc4 Fix filename for testing QT. (Jonathan Brown)
d8ed3bd8ee
openssl: abstract out OPENSSL_cleanse
This makes it easier for us to replace it if desired, since it's now only in
one spot. Also, it avoids the openssl include from allocators.h, which
essentially forced openssl to be included from every compilation unit.
1630219d90
doc: Add note-to-self about SHA256SUMS to release-process.mda77021a763
Merge #5710: Add more information to errors in ReadBlockFromDisk
f5791c6 Add more information to errors in ReadBlockFromDisk (Wladimir J. van der Laan)
175d86e633
Add list of implemented BIPsb63ae56269
Rename Interval() to DifficultyAdjustmentInterval()e5ece053da
Merge #5784: Fix usage of NegateSignatureS in script_tests
78c6bed Add test for DER-encoding edge case (Suhas Daftuar)
6f50dbd Fix NegateSignatureS to not duplicate last byte of S (Suhas Daftuar)
e3a3cd7a28
Merge #5799: Rename Interval() to DifficultyAdjustmentInterval()
e5ece05 Rename Interval() to DifficultyAdjustmentInterval() (Shaul Kfir)
8d0418720c
Merge #5366: No longer check osx compatibility in RenameThread
850c570 No longer check osx compatibility in RenameThread (Michael Ford)
47a79bb880
Update debian changelog and control file544e64e975
Merge #5803: Update debian changelog and control file
544e64e Update debian changelog and control file (Matt Corallo)
ea98509fa5
[Qt, Win] honor current network when creating autostart link
- creates a "Bitcoin (testnet).lnk" when on testnet or a "Bitcoin
(regtest).lnk, when on regtest
- fixes #5778
9673c35daf
[Qt, Linux] honor current network when creating autostart link6cb4a52535
Merge #5689: openssl: abstract out OPENSSL_cleanse
1630219 openssl: abstract out OPENSSL_cleanse (Cory Fields)
07f4386b38
Merge #5706: fix crash: RPC \
e5d9d77 fix crash: createmultisig and addmultisigaddress (fsb4000)
a026a56c4e
Revert "Make nicer pull request merge messages"
This reverts commit 1078fb08851442bcd7750c3d5015dc1fe7e4d927 (and thus
pull #5623). It has various issues:
- Pull request names get cut off at ", see e.g. a026a56
- Merge script no longer copes with pulls that have a milestone
attached, due to a duplicate 'title' in JSON that is not handled by the
ad-hoc parsing.
aaba10f275
[GUI] Move fee dialog minimise button away from "Transaction Fee"
Its original placement was causing confusion among some users.
de5403f878
Add unit tests for next difficulty calculations
Split GetNextWorkRequired() into two functions to allow the difficulty calculations to
be tested without requiring a full blockchain.
Add unit tests to cover basic difficulty calculation, plus each of the min/max actual
time, and maximum difficulty target conditions.
34e5015cd2
Merge pull request #5708
b63ae56 Add list of implemented BIPs (Pieter Wuille)
8b298ca7d7
build: disable reduced exports by default
This is really a packager's option. While it's helpful to encourage devs to
test this option for daily builds, it's not reliable in several real-world
use-cases. Some older libstdc++ runtimes (freebsd 9, debian wheezy, for
example) fail to properly catch exceptions due to mismatched type_info.
See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=19664 for more info.
3ee028f131
build: remove libstdc++ backwards-compat
Backwards-compatibility for libstdc++ is not limited to straightforward abi
changes. Symbol visibility also needs to be taken into consideration, and
that really can't be addressed simply.
Instead, just static-link libstdc++ for backwards-compat.
aa3673064c
build: change reduce exports/static libstdc++ options for gitian and travis
For Gitian releases:
- Windows builds remain unchanged. libstdc++ was already linked statically.
- OSX builds remain unchanged. libstdc++ is tied to the SDK and not worth
messing with.
- Linux builds now statically link libstdc++.
For Travis:
- Match the previous behavior by adding --enable-reduce-exports as
necessary.
- Use static libstdc++ for the full Linux build.
06715165f9
gitian: fix x86_64 build with static libstdc++c95ac83e51
build: fix typo in configure help3448b132c4
Better fingerprinting protection for non-main-chain getdatas.
With headers-first we can compare against the best header timestamp, rather
than using checkpoints which require code updates to maintain.
Code to avoid calling Perfmon too often is only needed when perfmon is actually going to get called.
This is not intended to make any functional difference in the addition of entropy to the random pool.
32eaf8a3de
depends: always use static qt5 for linuxd23b0a2711
make CMessageHeader a dumb storage class
It shouldn't know or care about bitcoind's chain param selection
eec37136fd
Merge pull request #5824
32eaf8a WIN32 Seed Cleanup: Move nLastPerfmon behind win32 ifdef. Code to avoid calling Perfmon too often is only needed when perfmon is actually going to get called. This is not intended to make any functional difference in the addition of entropy to the random pool. (21E14)
25d713c941
qt: Don't save geometry for options and about/help window
These dialogs will be something that people occasionally open, not keep
open during their session, so just popping it up in a sensible place
is good enough. Remembering only creates potential issues, like spawning
it outside the current screen area.
On Ubuntu this causes the dialogs to be positioned in the
middle of the main dialog, so I didn't add code for that. YMMV.
Inspired by github pull #5777 by @L-Cranston-Shadow
keys: remove libsecp256k1 verification until it's actually supported
This was added a while ago for testing purposes, but was never intended to be
used. Remove it until upstream libsecp256k1 decides that verification is
stable/ready.
16a58a8644
contrib/init/bitcoind.openrc: Compatibility with previous OpenRC init script variables3c6d594e64
d23b0a2 depends: always use static qt5 for linux (Cory Fields)
3448b13 build: fix typo in configure help (Cory Fields)
c95ac83 gitian: fix x86_64 build with static libstdc++ (Cory Fields)
0671516 build: change reduce exports/static libstdc++ options for gitian and travis (Cory Fields)
aa36730 build: remove libstdc++ backwards-compat (Cory Fields)
3ee028f build: disable reduced exports by default (Cory Fields)
f8e68f7bfb
Merge pull request #5775
deda3e1 [Qt] remove unused getNumBlocksAtStartup() from ClientModel (Philip Kaufmann)
47ee8cf [Qt] use qint64 in BitcoinGUI::setNumBlocks (Philip Kaufmann)
3dfcdf46c2
startup script for centos, with documentation.723664b5db
Reinitialize state in between individual unit tests.
This changes the TestingSetup fixture to be per-unit-test rather than global.
Most tests don't need it, so it's only invoked in a few.
51598b2631
[Qt] Code-movement-only: Format confirmation message in sendcoinsdialog90a43c1e93
Merge pull request #5830
6f1274c qt: Don't save geometry for options and about/help window (Wladimir J. van der Laan)
215475aa00
QT: remove unused parameter84a05b843b
[Qt] fix a issue where "command line options"-action overwrite "Preference"-action (on OSX)
- fixes #5800
9bbb880be4
Add correct bool combiner for net signals9519a9a420
Limit message sizes before transfer
This introduces a fixed limit for the size of p2p messages, and enforces it
before download.
ba04c4a780
Merge pull request #5813
34e5015 Add unit tests for next difficulty calculations (Ross Nicoll)
ee9f2bfa7b
Merge pull request #5843
ba04c4a Limit message sizes before transfer (Pieter Wuille)
51377c2dbe
build: Endian compatibility
- Detect endian instead of stopping configure on big-endian
- Add `byteswap.h` and `endian.h` header for compatibility with
Windows and other operating systems that don't come with them
- Update `crypto/common.h` functions to use compat
endian header
4414f5ffe1
src/hash.cpp: endian compatibility3ca5852dc2
src/main.cpp: endian compatibility in packet checksum check556814ec4e
src/net.cpp: endian compatibility in EndMessagedec84cae2a
src/primitives/block.cpp: endian compatibility in GetHash81aeb28436
src/primitives/transaction.h: endian compatibility in serialization4f92773f92
src/script/script.h: endian compatibility for PUSHDATA sizes4e853aa163
src/serialize.h: base serialization level endianness neutrality
Serialization type-safety and endianness compatibility.
01f9c3449a
src/netbase.h: Fix endian in CNetAddr serialization
We've chosen to htons/ntohs explicitly on reading and writing
(I do not know why). But as READWRITE already does an endian swap
on big endian, this means the port number gets switched around,
which was what we were trying to avoid in the first place. So
to make this compatible, serialize it as FLATDATA.
Don't ever serialize a size_t or long, their sizes are platform
dependent.
9f4fac98c4
Add serialize float/double tests62b30f09ac
Replace CBlockHeader::GetHash with call to SerializeHash
Removes variability between LE and BE.
As suggested by @sipa.
a0ae79d775
Run unit tests in different orders
Set the BOOST_TEST_RANDOM environment variable, to
run unit tests in different orders for each test in the
test matrix that runs tests.
69866436be
Merge pull request #5510
a0ae79d Replace CBlockHeader::GetHash with call to SerializeHash (Wladimir J. van der Laan)
62b30f0 Add serialize float/double tests (Wladimir J. van der Laan)
9f4fac9 src/txmempool.cpp: make numEntries a uint32_t (Wladimir J. van der Laan)
f4e6487 src/arith_256.cpp: bigendian compatibility (Wladimir J. van der Laan)
aac3205 src/netbase.h: Fix endian in CNetAddr serialization (Wladimir J. van der Laan)
01f9c34 src/serialize.h: base serialization level endianness neutrality (Wladimir J. van der Laan)
4e853aa src/script/script.h: endian compatibility for PUSHDATA sizes (Wladimir J. van der Laan)
4f92773 src/primitives/transaction.h: endian compatibility in serialization (Wladimir J. van der Laan)
81aeb28 src/primitives/block.cpp: endian compatibility in GetHash (Wladimir J. van der Laan)
dec84ca src/net.cpp: endian compatibility in EndMessage (Wladimir J. van der Laan)
556814e src/main.cpp: endian compatibility in packet checksum check (Wladimir J. van der Laan)
3ca5852 src/hash.cpp: endian compatibility (Wladimir J. van der Laan)
4414f5f build: Endian compatibility (Wladimir J. van der Laan)
7c3fbc34ae
Merge pull request #5151
eec3713 make CMessageHeader a dumb storage class (Cory Fields)
2f10aa0fa1
Merge pull request #5793
6cb4a52 [Qt, Linux] honor current network when creating autostart link (Philip Kaufmann)
9673c35 [Qt, Win] honor current network when creating autostart link (Philip Kaufmann)
d26f0b263c
Merge pull request #5855
6986643 Run unit tests in different orders (Gavin Andresen)
d7989c04f6
Merge pull request #5858
9bbb880 [Qt] fix a issue where "command line options"-action overwrite "Preference"-action (on OSX) (Jonas Schnelli)
513e025239
[Qt] rework setNumBlocks to have blockDate as parameter
- reduces some functional overhead and simplifies the code
8517e9709e
Merge pull request #5776
8517e97 [Qt] rework setNumBlocks to have blockDate as parameter (Philip Kaufmann)
f50120ab4d
Merge pull request #5442
dca799e Ignore getaddr messages on Outbound connections. (Ivan Pustogarov)
c1b723c30a
Merge pull request #5852
51598b2 Reinitialize state in between individual unit tests. (Pieter Wuille)
cdae53e456
tests: change main and wallet tests to BOOST_FIXTURE_TEST_SUITE
Avoid this travis error:
test_bitcoin: chainparams.cpp:330: const CChainParams& Params():
Assertion `pCurrentParams' failed.
unknown location(0): fatal error in "subsidy_limit_test": signal:
SIGABRT (application abort requested)
test/allocator_tests.cpp(116): last checkpoint
8cbe1f4f58
test: Remove UNITTEST params
UNITTEST parameter are not used by any current tests, and the model
(modifyable parameters) is inconvenient when unit-testing. As
they are stored in a global structure eevery test
would have to (re)set up its own parameters.
For consistency it is also better to test with MAIN parameters.
59bd89f116
test: remove fSkipProofOfWork
Not used, and REGTEST already allows creating blocks at
the lowerst possible difficulty.
3aa0130b96
fix possible block db breakage during re-index
When re-indexing, there are a few cases where garbage data may be skipped in
the block files. In these cases, the indices are correctly written to the index
db, however the pointer to the next position for writing in the current block
file is calculated by adding the sizes of the valid blocks found.
As a result, when the re-index is finished, the index db is correct for all
existing blocks, but the next block will be written to an incorrect offset,
likely overwriting existing blocks.
Rather than using the sum of all valid blocks to determine the next write
position, use the end of the last block written to the file. Don't assume that
the current block is the last one in the file, since they may be read
out-of-order.
bb6acff079
Help messages correctly formatted (79 chars)
Help messages are formatted programmatically with FormatParagraph
in order not to break existing strings in Transifex.
The new format works even if the translation of the strings
modifies the lenght of the message.
Sqashed 6 commits in a single one.
Help messages correctly formatted for SVGA text mode (132 chars)
Help messages are formatted programmatically with FormatParagraph
in order not to break existing strings in Transifex.
The new format should work even if the translation of the strings
modifies the lenght of the message.
Fix - syntax error
Correct formatting for 79 chars
Correctly based on C++ functions
Removed spare spaces from option strings
Fix - syntax error
1fdb9fa3f9
Fix - bitcoin-qt usage message
. Closes the bug from commit e179eb3d9bfec7e67908242c71c87b716a41c97c
("bitcoin-qt -help" did not show any message)
. Move all the options in init.cpp (there were already some
options related to bitcoin-qt)
f75470794b
Merge pull request #5864
bb6acff fix possible block db breakage during re-index (Cory Fields)
Initialization: set Boost path locale in main thread
The path locale is lazy initialized and to avoid deinitialization errors
in multithreading environments, it is set explicitly by the main thread.
317e66c741
Merge pull request #5871
3aa0130 test: remove fSkipProofOfWork (Wladimir J. van der Laan)
59bd89f test: Remove UNITTEST params (Wladimir J. van der Laan)
e564e63ef0
[QT] fix OSX dock icon window reopening
fixes #5878
89e70e931d
tests: add a BasicTestingSetup and apply to all tests
Make sure that chainparams and logging is properly initialized. Doing
this for every test may be overkill, but this initialization is so
simple that that does not matter.
This should fix the travis issues.
92fd887fd4
Merge pull request #5883
92fd887 tests: add a BasicTestingSetup and apply to all tests (Wladimir J. van der Laan)
164d7b674b
Merge pull request #5859
9519a9a Add correct bool combiner for net signals (Pieter Wuille)
dd4ffcec0e
[Move Only] Move wallet related things to src/wallet/
could once be renamed from /src/wallet to /src/legacywallet.
50c72f23ad
fix InvalidateBlock to repopulate setBlockIndexCandidatesa9af415887
add RPC test for InvalidateBlock88f6c8c365
BUGFIX: Stack around the variable 'rv' was corruptede96c5184e7
Merge pull request #5879
88f6c8c add RPC test for InvalidateBlock (Alex Morcos)
a9af415 fix InvalidateBlock to repopulate setBlockIndexCandidates (Alex Morcos)
84a7789b29
Merge pull request #5884
e96c518 BUGFIX: Stack around the variable 'rv' was corrupted (fsb4000)
7077fe6dd4
Subtract fee from amount
Fixes #2724 and #1570.
Adds the
automatically-subtract-the-fee-from-the-amount-and-send-whats-left
feature to the GUI and RPC (sendtoaddress,sendmany).
292623adf5
rpcwallet/sendmany: Just take an array of addresses to subtract fees from, rather than an Object with all values being identical40a757331a
qa/rpc-tests/wallet: Tests for sendmany1d9b378c30
Reorder travis builds for faster response5abe2cf110
[QT] some mac specifiy cleanup (memory handling, unnecessary code)8b60808c1e
Fix InvalidateBlock to add chainActive.Tip to setBlockIndexCandidatescd3d67cf3b
1d9b378 qa/rpc-tests/wallet: Tests for sendmany (Luke Dashjr)
40a7573 rpcwallet/sendmany: Just take an array of addresses to subtract fees from, rather than an Object with all values being identical (Luke Dashjr)
292623a Subtract fee from amount (Cozz Lovan)
90a43c1 [Qt] Code-movement-only: Format confirmation message in sendcoinsdialog (Cozz Lovan)
df5c246ba3
Merge pull request #5847
723664b startup script for centos, with documentation. (joshr)
f238add26a
Merge pull request #5880
8b60808 [QT] some mac specifiy cleanup (memory handling, unnecessary code) (Jonas Schnelli)
89e70e9 [QT] fix OSX dock icon window reopening (Jonas Schnelli)
226f880498
depends: fix a static qt5 crash when using certain versions of libxcb
See here for background: https://bugreports.qt.io/browse/QTBUG-34748
libxcb temporarily had an abi breakage which caused crashes when qt was
compiled against a non-compatible version. Building qt with -qt-xcb should have
shielded us from this issue, except that incompatible headers were used when
building qt's wrapper.
Make sure those headers aren't picked up by qt's build.
Details:
qt's build adds a wrapper around the xcb libs when -qt-xcb is used. This is
done to avoid having to link to a handful of different libs, which may not be
api/abi stable. This build depends on include-order, so that its files are
found before the real libxcb headers.
Our build (for other reasons related to qt's complicated build-system) injects
our prefix into CXXFLAGS. Because libxcb is found in this path, that reverses
the include-order, negating the purpose of the wrapper.
To fix, libxcb's includes are simply moved to a subdir. pkg-config ensures that
they're still found properly when needed.
To make things even more interesting, this behavior in qt's .pro files is broken:
INCLUDEPATH += $$QMAKE_CFLAGS_XCB
The INCLUDEPATH variable is processed by qmake which automatically prefixes each
entry with "-I". The QMAKE_CFLAGS_XCB variable comes from pkg-config and
already contains -I, making the path look like "-I-I/path/to/xcb/headers".
To work around that, CFLAGS/CXXFLAGS are used here rather than INCLUDEPATH.
bb44d9e754
Merge pull request #5915
bb44d9e depends: fix a static qt5 crash when using certain versions of libxcb (Cory Fields)
5bd3a92da2
Reduce fingerprinting through timestamps in 'addr' messages.
Suggested by Jonas Nick.
9c2737901b
Merge pull request #5860
9c27379 Reduce fingerprinting through timestamps in 'addr' messages. (Pieter Wuille)
93a8c46807
Merge pull request #5360
71acb86 print the caught error instead of raising an error (Heath)
29fef0b903
Merge pull request #5149
adaa568 Add script to verify all merge commits are signed (Matt Corallo)
c7abfa595d
allocators: split allocators and pagelocker
Pagelocker is only needed for secure (usually wallet) operations, so don't make
the zero-after-free allocator depend on it.
d7d187e8a4
Merge #5810: MOVEONLY-ISH: allocators: split allocators and pagelocker
d7d187e allocators: split allocators and pagelocker (Cory Fields)
3811a5025e
Merge pull request #5745
50c72f2 [Move Only] Move wallet related things to src/wallet/ (Jonas Schnelli)
05f17d4eaa
refactor: move bdb (bitdb) interaction from init.cpp to wallet.cpp
this will remove db.h from init.cpp
2bb1c87700
Merge #5758: refactor: move BDB (bitdb / db.h) interaction from init.cpp to wallet.cpp
2bb1c87 refactor: move bdb (bitdb) interaction from init.cpp to wallet.cpp (Jonas Schnelli)
f3948a30cd
Abstract out Ctransaction-specific signing into TransactionSignatureCreator18051c7fbd
use constant references for strings in functions in wallet/*.*341e2385d5
Add a NODE_GETUTXO service bit and document NODE_NETWORK.
Stop translating the NODE_* names as they are technical and cannot be translated.
5983a4e50f
wallet: move crypter to walleta354a59f1f
Merge pull request #5877
317e66c Initialization: set Boost path locale in main thread (dexX7)
28cc24f961
Merge pull request #5938
a354a59 wallet: move crypter to wallet (Cory Fields)
46ba7a74a5
Merge pull request #5933
341e238 use constant references for strings in functions in wallet/*.* (Philip Kaufmann)
45d6d0bce5
Merge pull request #5429
5abe2cf Reorder travis builds for faster response (Pieter Wuille)
03106221d4
Merge pull request #5208
18051c7 Abstract out Ctransaction-specific signing into TransactionSignatureCreator (Pieter Wuille)
2afd919f21
Merge pull request #5890
cd3d67c Fix InvalidateBlock to add chainActive.Tip to setBlockIndexCandidates (Alex Morcos)
22cfe23196
don't trickle for whitelisted nodesfc720207e0
Includes: Refactor: Move CValidationInterface and CMainSignals out of main26c16d9de9
Includes: MOVEONLY: move more method definitions out of wallet.heca0b1ea62
Includes: Do not include main.h from any other header8a893c949b
Merge pull request #5681
8a893c9 Includes: Do not include main.h from any other header (Jorge Timón)
eca0b1e Includes: MOVEONLY: move more method definitions out of wallet.h (Jorge Timón)
26c16d9 Includes: Refactor: Move CValidationInterface and CMainSignals out of main (Jorge Timón)
8d2fbfa491
Fix --disable-wallet build after merge of #5681cbb2cf5522
Consensus: Refactor: Decouple pow.o from chainparams.od698ef690f
Merge pull request #5812
d698ef6 Consensus: Refactor: Decouple pow.o from chainparams.o (Jorge Timón)
bd00611 Consensus: Refactor: Introduce Consensus::Params class (Jorge Timón)
687f10d9ec
Merge pull request #5942
fc72020 don't trickle for whitelisted nodes (Ruben de Vries)
6a1fbc4921
Merge pull request #5876
5983a4e Add a NODE_GETUTXO service bit and document NODE_NETWORK. Stop translating the NODE_* names as they are technical and cannot be translated. (Mike Hearn)
8e4fd0cc31
Update libsecp256k1.223d8630b0
Switch test case signing to RFC6979 extra entropy
Instead of manually tweaking the deterministic nonce post-generation,
pass the test case number in as extra entropy to RFC6979.
437ada3e55
gmaxwell
commented at 12:25 AM on March 28, 2015:
contributor
ACK.
I was uncomfortable with (and complained about) the "test nonce" approach used previously as it used seriously insecure linearly related nonces... this was fine for tests but it seemed like a matter of time before someone wanted to use it to derandomize regular signing (and, indeed, someone recently asked about that).
laanwj
commented at 11:19 AM on April 1, 2015:
member
ACK to bitcoin core changes, haven't been able to review all secp256k1 changes.
laanwj added the label Improvement on Apr 1, 2015
sipa
commented at 5:55 PM on April 1, 2015:
member
Would it be interesting to have a more automated way for verifying that the contents of the subtree directory matches the contents of the listed commit of the subtree repository?
laanwj
commented at 10:21 AM on April 2, 2015:
member
Yes, a script that compares our secp256k1 directory with an upstream repository would be useful.
Probably amounts to one, fairly complicated, git diff statement but my knowledge of git subtrees is not enough to come up with it.
theuni
commented at 5:24 PM on April 2, 2015:
member
upstream secp256k1 commit is 1897b8e
git diff 1897b8e origin/pr/5952:src/secp256k1
sipa
commented at 7:04 PM on April 2, 2015:
member
Another way is checking the git tree id:
(in master)
$ git ls-tree master src/secp256k1
040000 tree 3b675a638355f8ccad0474900fed0bffcda8e62a src/secp256k1
(in secp256k1, with 50cc6ab the commit id of the last secp256k1 import)
$ git show --format=raw 50cc6ab | head -n2
commit 50cc6ab0625efda6dddf1dc86c1e2671f069b0d8
tree 3b675a638355f8ccad0474900fed0bffcda8e62a
laanwj
commented at 7:51 AM on April 8, 2015:
member
Checked the subtree using #5965's git-subtree-check.sh script.
src/secp256k1 in HEAD was last updated to upstream commit 1897b8e90bbbdcd919427c9a8ae35b420e919d8f (tree 1c8df9fa9ddfb2b035ac0327fe074b634e458f56)
src/secp256k1 in HEAD currently refers to tree 1c8df9fa9ddfb2b035ac0327fe074b634e458f56
GOOD
ACK
laanwj merged this on Apr 8, 2015
laanwj closed this on Apr 8, 2015
laanwj referenced this in commit eb87f84d18 on Apr 8, 2015
I did a first pass review of all changes, but the number of changes is huge! Most of them are simply the removal of a variable declaration from its first use. However, many reviewers of this commit would be helpful.
gmaxwell
commented at 3:57 PM on April 11, 2015:
contributor
@SergioDemianLerner This is a subtree merge from the libsecp256k1 repository ( https://github.com/bitcoin/secp256k1/ ), merging in months of work; you can see the individual changes there (and the review process there). The big stirring you're reffering to was the change of the codebase to be strict standards conformant C89.
It's much easier to review from its actual repository because e.g. with the changes split out you can verify various changes that shouldn't have changed the binaries didn't and such.
sipa
commented at 7:26 PM on April 11, 2015:
member
In addition, with the script added in #5965 you can verify that the subtree
corresponds to the result of the commits in the external repository.
This is a metadata mirror of the GitHub repository
bitcoin/bitcoin.
This site is not affiliated with GitHub.
Content is generated from a GitHub metadata backup.
generated: 2026-04-19 09:15 UTC
This site is hosted by @0xB10C More mirrored repositories can be found on mirror.b10c.me