]> Git Repo - VerusCoin.git/log
VerusCoin.git
9 years agobump version to 0.11.2
Wladimir J. van der Laan [Sat, 7 Nov 2015 23:55:26 +0000 (00:55 +0100)]
bump version to 0.11.2

9 years agoAlways flush block and undo when switching to new file
Pieter Wuille [Wed, 4 Nov 2015 23:16:49 +0000 (00:16 +0100)]
Always flush block and undo when switching to new file

Previously, the undo weren't being flushed during a reindex because
fKnown was set to true in FindBlockPos. That is the correct behaviour
for block files as they aren't being touched, but undo files are
touched.

This changes the behaviour to always flush when switching to a new file
(even for block files, though that isn't really necessary).

Rebased-From: 22e780737db57bcb18b3824eb8158e19a4775cb6
Github-Pull: #6948

9 years agoMerge pull request #6825
Wladimir J. van der Laan [Fri, 6 Nov 2015 11:24:37 +0000 (12:24 +0100)]
Merge pull request #6825

af6edac *: alias -h for --help (Daniel Cousens)
131d7f9 Change URLs to https in debian/control (Matt Corallo)
7ce2c91 Update debian/changelog and slight tweak to debian/control (Matt Corallo)
4fbfebe Correct spelling mistakes in doc folder (Mitchell Cash)
e42bf16 Clarification of unit test build instructions. (Eric Lombrozo)
54f9dee Update bluematt-key, the old one is long-since revoked (Matt Corallo)
bfc6154 [Trivial] Fixed typo when referring to a previous section in depends/README.md [skip ci] (Chris Kleeschulte)
9e45157 build: disable -Wself-assign (Wladimir J. van der Laan)
33d6825 Bugfix: Allow mining on top of old tip blocks for testnet (fixes testnet-in-a-box use case) (Luke Dashjr)
87a797a build: Remove dependency of bitcoin-cli on secp256k1 (Wladimir J. van der Laan)
a33cd5b [trivial] Fix rpc message "help generate" (MarcoFalke)
6fd0019 Drop "with minimal dependencies" from description (Zak Wilcox)
2394f4d Split bitcoin-tx into its own package (Zak Wilcox)
1e672ae Include bitcoin-tx binary on Debian/Ubuntu (Zak Wilcox)
b3eaa30 [Qt] Raise debug window when requested (MarcoFalke)
01878c9 Fix locking in GetTransaction. (Alex Morcos)
9b9acc2 Fix spelling of Qt (Diego Viola)

9 years agoMerge pull request #6884
Wladimir J. van der Laan [Thu, 5 Nov 2015 11:17:51 +0000 (12:17 +0100)]
Merge pull request #6884

f720c5f Enable policy enforcing GetMedianTimePast as the end point of lock-time constraints (Mark Friedenbach)
a1d3c6f Add rules--presently disabled--for using GetMedianTimePast as endpoint for lock-time calculations (Mark Friedenbach)

9 years agoMerge pull request #6945
Wladimir J. van der Laan [Thu, 5 Nov 2015 09:51:41 +0000 (10:51 +0100)]
Merge pull request #6945

0af5b8e Squashed 'src/leveldb/' changes from 7d41e6f..20ca81f (Pieter Wuille)

9 years agoUpdate LevelDB
Pieter Wuille [Wed, 4 Nov 2015 22:48:07 +0000 (23:48 +0100)]
Update LevelDB

9 years agoSquashed 'src/leveldb/' changes from 7d41e6f..20ca81f
Pieter Wuille [Wed, 4 Nov 2015 22:48:07 +0000 (23:48 +0100)]
Squashed 'src/leveldb/' changes from 7d41e6f..20ca81f

20ca81f Merge pull request #9
7aa105e leveldb: Win32WritableFile without memory mapping

git-subtree-dir: src/leveldb
git-subtree-split: 20ca81f08fb7fa108923a091668e447dcf5c6b9d

9 years agoEnable policy enforcing GetMedianTimePast as the end point of lock-time constraints
Mark Friedenbach [Wed, 3 Jun 2015 22:01:47 +0000 (15:01 -0700)]
Enable policy enforcing GetMedianTimePast as the end point of lock-time constraints

Transactions are not allowed in the memory pool or selected for inclusion in a block until their lock times exceed chainActive.Tip()->GetMedianTimePast(). However blocks including transactions which are only mature under the old rules are still accepted; this is *not* the soft-fork required to actually rely on the new constraint in production.

9 years agoAdd rules--presently disabled--for using GetMedianTimePast as endpoint for lock-time...
Mark Friedenbach [Wed, 3 Jun 2015 19:55:45 +0000 (12:55 -0700)]
Add rules--presently disabled--for using GetMedianTimePast as endpoint for lock-time calculations

The lock-time code currently uses CBlock::nTime as the cutoff point for time based locked transactions. This has the unfortunate outcome of creating a perverse incentive for miners to lie about the time of a block in order to collect more fees by including transactions that by wall clock determination have not yet matured. By using CBlockIndex::GetMedianTimePast from the prior block instead, the self-interested miner no longer gains from generating blocks with fraudulent timestamps. Users can compensate for this change by simply adding an hour (3600 seconds) to their time-based lock times.

If enforced, this would be a soft-fork change. This commit only adds the functionality on an unexecuted code path, without changing the behaviour of Bitcoin Core.

9 years agoDo not allow blockfile pruning during reindex.
Alex Morcos [Mon, 19 Oct 2015 18:43:04 +0000 (14:43 -0400)]
Do not allow blockfile pruning during reindex.

Also clarify startup message.

Github-Pull: #6856
Rebased-From: d3b09f6bac738958b6bf5711bcb5291049b7466d

9 years agoMerge pull request #6707
Wladimir J. van der Laan [Fri, 23 Oct 2015 11:34:57 +0000 (13:34 +0200)]
Merge pull request #6707

6af25b0 Add BIP65 to getblockchaininfo softforks list (Peter Todd)
ba1da90 Show softfork status in getblockchaininfo (Wladimir J. van der Laan)
70a427b CLTV: Add more tests to improve coverage (Esteban Ordano)
c5a27f4 Add RPC tests for the CHECKLOCKTIMEVERIFY (BIP65) soft-fork (Peter Todd)
5e82e1c Add CHECKLOCKTIMEVERIFY (BIP65) soft-fork logic (Peter Todd)
6ea5ca4 Enable CHECKLOCKTIMEVERIFY as a standard script verify flag (Peter Todd)
4fa7a04 Replace NOP2 with CHECKLOCKTIMEVERIFY (BIP65) (Peter Todd)
6ec08db Move LOCKTIME_THRESHOLD to src/script/script.h (Peter Todd)
684636b Make CScriptNum() take nMaxNumSize as an argument (Peter Todd)

9 years agoSet TCP_NODELAY on P2P sockets.
Gregory Maxwell [Wed, 21 Oct 2015 23:52:29 +0000 (23:52 +0000)]
Set TCP_NODELAY on P2P sockets.

Nagle appears to be a significant contributor to latency now that the static
 sleeps are gone.  Most of our messages are relatively large compared to
 IP + TCP so I do not expect this to create enormous overhead.

This may also reduce traffic burstyness somewhat.

Conflicts:
src/net.cpp

Rebased-From: a4e28b3d1e5c95eb0c87f144851cd65048c3e0bc
Github-Pull: #6867

9 years ago*: alias -h for --help
Daniel Cousens [Sun, 18 Oct 2015 10:02:36 +0000 (21:02 +1100)]
*: alias -h for --help

9 years agoChange URLs to https in debian/control
Matt Corallo [Fri, 9 Oct 2015 22:32:05 +0000 (15:32 -0700)]
Change URLs to https in debian/control

9 years agoUpdate debian/changelog and slight tweak to debian/control
Matt Corallo [Fri, 9 Oct 2015 20:40:36 +0000 (13:40 -0700)]
Update debian/changelog and slight tweak to debian/control

9 years agoCorrect spelling mistakes in doc folder
Mitchell Cash [Sat, 17 Oct 2015 10:10:45 +0000 (20:10 +1000)]
Correct spelling mistakes in doc folder

- OSX —> OS X
- XCode —> Xcode
- github —> GitHub
- homebrew —> Homebrew
- gitian —> Gitian
- Other miscellaneous obvious spelling fixes and whitespace removal

9 years agoMake fee aware of min relay in pruning.py RPC test
Alex Morcos [Fri, 16 Oct 2015 20:54:03 +0000 (16:54 -0400)]
Make fee aware of min relay in pruning.py RPC test

Rebased-From: b6d5e32e0e5b038c6ff7e2ab5221b10727722341
Github-Pull: #6841

9 years agobuild: make sure OpenSSL heeds noexecstack
Wladimir J. van der Laan [Mon, 19 Oct 2015 10:03:04 +0000 (12:03 +0200)]
build: make sure OpenSSL heeds noexecstack

This passes `-Wa,--noexecstack` to the assembler when building
platform-specific assembly files, to signal that a non-executable stack
can be used. This is the same approach as used by Debian
(see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=430583)

Rebased-From: bfcdc21a5da25ec1aa4aecc4cd8960dfa1c11781
Github-Pull: #6852

9 years agoAdd historical release notes for October 2015 bugfix releases
Micha [Wed, 14 Oct 2015 20:05:26 +0000 (23:05 +0300)]
Add historical release notes for October 2015 bugfix releases

[skip ci]

Rebased-From: d57586f91c6cfe7480ae87b81a041009776a33af
Github-Pull: #6832

9 years agoClarification of unit test build instructions.
Eric Lombrozo [Sat, 10 Oct 2015 10:46:35 +0000 (06:46 -0400)]
Clarification of unit test build instructions.

9 years agoUpdate bluematt-key, the old one is long-since revoked
Matt Corallo [Mon, 12 Oct 2015 21:25:51 +0000 (14:25 -0700)]
Update bluematt-key, the old one is long-since revoked

9 years ago[Trivial] Fixed typo when referring to a previous section in
Chris Kleeschulte [Thu, 8 Oct 2015 19:21:54 +0000 (15:21 -0400)]
[Trivial] Fixed typo when referring to a previous section in
depends/README.md [skip ci]

9 years agobuild: disable -Wself-assign
Wladimir J. van der Laan [Thu, 1 Oct 2015 16:38:54 +0000 (18:38 +0200)]
build: disable -Wself-assign

Prevent these warnings in clang 3.6:

    ./serialize.h:96:9: warning: explicitly assigning value of variable of type 'uint64_t' (aka 'unsigned long') to itself [-Wself-assign]
        obj = (obj);
        ~~~ ^  ~~~

9 years agoBugfix: Allow mining on top of old tip blocks for testnet (fixes testnet-in-a-box...
Luke Dashjr [Thu, 9 Apr 2015 11:50:18 +0000 (11:50 +0000)]
Bugfix: Allow mining on top of old tip blocks for testnet (fixes testnet-in-a-box use case)

9 years agobuild: Remove dependency of bitcoin-cli on secp256k1
Wladimir J. van der Laan [Mon, 28 Sep 2015 08:36:33 +0000 (10:36 +0200)]
build: Remove dependency of bitcoin-cli on secp256k1

bitcoin-cli (in contrast to bitcoin-tx, which does signing ops)
shouldn't need secp256k1, and indeed it doesn't.

9 years ago[trivial] Fix rpc message "help generate"
MarcoFalke [Fri, 4 Sep 2015 09:05:17 +0000 (11:05 +0200)]
[trivial] Fix rpc message "help generate"

9 years agoDrop "with minimal dependencies" from description
Zak Wilcox [Thu, 17 Sep 2015 09:17:24 +0000 (10:17 +0100)]
Drop "with minimal dependencies" from description

Five boost libs plus libcrypto are needed; I don't think that quite passes for minimal.

9 years agoSplit bitcoin-tx into its own package
Zak Wilcox [Thu, 17 Sep 2015 06:23:04 +0000 (07:23 +0100)]
Split bitcoin-tx into its own package

Reverts the change putting it in the bitcoind deb.

9 years agoInclude bitcoin-tx binary on Debian/Ubuntu
Zak Wilcox [Sat, 29 Aug 2015 17:52:44 +0000 (18:52 +0100)]
Include bitcoin-tx binary on Debian/Ubuntu

Currently left out of Matt's PPA.  Debian's package for unstable already has it.

9 years ago[Qt] Raise debug window when requested
MarcoFalke [Mon, 7 Sep 2015 09:00:59 +0000 (11:00 +0200)]
[Qt] Raise debug window when requested

* Raise the debug window when hidden behind other windows
* Switch to the debug window when on another virtual desktop
* Show the debug window when minimized

This change is a conceptual copy of 5ffaaba and 382e9e2

9 years agoFix locking in GetTransaction.
Alex Morcos [Thu, 17 Sep 2015 21:43:34 +0000 (17:43 -0400)]
Fix locking in GetTransaction.

GetTransaction needs to lock cs_main until ReadBlockFromDisk completes, the data inside CBlockIndex's can change since pruning.  This lock was held by all calls to GetTransaction except rest_tx.

9 years agoFix spelling of Qt
Diego Viola [Tue, 22 Sep 2015 07:25:26 +0000 (04:25 -0300)]
Fix spelling of Qt

9 years agodoc: Add Luke Dashjr to credits in release notes
Wladimir J. van der Laan [Mon, 12 Oct 2015 18:58:31 +0000 (20:58 +0200)]
doc: Add Luke Dashjr to credits in release notes

Somehow missed...

9 years agodoc: update release notes for 0.11.1rc2
Wladimir J. van der Laan [Sun, 11 Oct 2015 08:46:43 +0000 (10:46 +0200)]
doc: update release notes for 0.11.1rc2

9 years agoBump minrelaytxfee default
Wladimir J. van der Laan [Fri, 9 Oct 2015 17:36:32 +0000 (19:36 +0200)]
Bump minrelaytxfee default

To bridge the time until a dynamic method for determining this fee is
merged.

This is especially aimed at the stable releases (0.10, 0.11) because
full mempool limiting, as will be in 0.12, is too invasive and risky to
backport.

Github-Pull: #6793
Rebased-From: 28e3249e53b8ef7516636df0f1406466a513095d 4e2efb3c5fde4b1e332cc032e3dc4082ec4e3cac

9 years agonet: Disable upnp by default
Wladimir J. van der Laan [Fri, 9 Oct 2015 17:56:44 +0000 (19:56 +0200)]
net: Disable upnp by default

Common sentiment is that the miniupnpc codebase likely contains further
vulnerabilities.

I'd prefer to get rid of the dependency completely, but a compromise for
now is to at least disable it by default.

Github-Pull: #6795
Rebased-From: 21d27ebad5721bc61c62bc72dc3ab3197f9da268

9 years agoBump version to 0.11.1
Wladimir J. van der Laan [Fri, 9 Oct 2015 16:17:57 +0000 (18:17 +0200)]
Bump version to 0.11.1

9 years agodoc: #6077 was reverted, don't mention in release notes
Wladimir J. van der Laan [Fri, 9 Oct 2015 13:40:34 +0000 (15:40 +0200)]
doc: #6077 was reverted, don't mention in release notes

Reported by sipa

9 years agoqt: Update translations before 0.11.1
Wladimir J. van der Laan [Fri, 9 Oct 2015 13:30:20 +0000 (15:30 +0200)]
qt: Update translations before 0.11.1

9 years agodoc: Update release notes for 0.11.1
Wladimir J. van der Laan [Fri, 9 Oct 2015 13:18:43 +0000 (15:18 +0200)]
doc: Update release notes for 0.11.1

9 years agoMerge pull request #6785
Wladimir J. van der Laan [Fri, 9 Oct 2015 12:57:56 +0000 (14:57 +0200)]
Merge pull request #6785

36f14bf In (strCommand == "tx"), return if AlreadyHave() (Tom Harding)

9 years agoUpdate miniupnpc to 1.9.20151008
Wladimir J. van der Laan [Fri, 9 Oct 2015 11:16:44 +0000 (13:16 +0200)]
Update miniupnpc to 1.9.20151008

This version of miniupnpc fixes a buffer overflow in the XML (ugh)
parser during initial network discovery.

http://talosintel.com/reports/TALOS-2015-0035/

The commit fixing the vulnerability is:
https://github.com/miniupnp/miniupnp/commit/79cca974a4c2ab1199786732a67ff6d898051b78

Reported by timothy on IRC.

Github-Pull: 6789
Rebased-From: 0cca0248f030ea32bd8de778b5a2782e0d191978

9 years agoIn (strCommand == "tx"), return if AlreadyHave()
Tom Harding [Mon, 24 Aug 2015 21:02:24 +0000 (14:02 -0700)]
In (strCommand == "tx"), return if AlreadyHave()

The main effect is to exit processing for recently-rejected hashes,
in case they are pushed to us without prior advertisement.  This
behavior was seen in the wild.

An additional effect is to do early checks for mempool or mapOrphan
existence.  No logging or nDoS tracking is needed for failures of
these checks.

9 years agoAdd BIP65 to getblockchaininfo softforks list
Peter Todd [Sun, 27 Sep 2015 18:32:10 +0000 (14:32 -0400)]
Add BIP65 to getblockchaininfo softforks list

Rebased-From: 54a200ac9ad8909303ccf1ac49c291e0c2b5fb23

9 years agoShow softfork status in getblockchaininfo
Wladimir J. van der Laan [Sat, 27 Jun 2015 06:03:34 +0000 (08:03 +0200)]
Show softfork status in getblockchaininfo

Rebased-From: 5ed10793c2df970d07cecd760c42205e68779e83

9 years agoCLTV: Add more tests to improve coverage
Esteban Ordano [Fri, 3 Jul 2015 01:38:34 +0000 (18:38 -0700)]
CLTV: Add more tests to improve coverage

Four cases included:

* The CLTV operand type mismatches the tx locktime. In the script it is
  1 (interpreted as block height), but in the tx is 500000000
  (interpreted as date)
* The stack is empty when executing OP_CLTV
* The tx is final by having only one input with MAX_INT sequence number
* The operand for CLTV is negative (after OP_0 OP_1 OP_SUB)

Rebased-From: cb54d17355864fa08826d6511a0d7692b21ef2c9

9 years agoAdd RPC tests for the CHECKLOCKTIMEVERIFY (BIP65) soft-fork
Peter Todd [Sun, 28 Jun 2015 18:42:17 +0000 (14:42 -0400)]
Add RPC tests for the CHECKLOCKTIMEVERIFY (BIP65) soft-fork

bip65-cltv.py is based on the earlier BIP66 soft-fork RPC test
implemented by Pieter Wuille's 819bcf9b9902319176cdb1d476cacfee9b3727ec

bip65-cltv-p2p.py is based on the earlier BIP66 P2P test by Suhas
Daftuar's d76412b068d95454732aa3def95decf35251759a

Rebased-From: 308257856099e82e91881ba97f741d840184727c

9 years agoAdd CHECKLOCKTIMEVERIFY (BIP65) soft-fork logic
Peter Todd [Sun, 28 Jun 2015 18:30:50 +0000 (14:30 -0400)]
Add CHECKLOCKTIMEVERIFY (BIP65) soft-fork logic

Based on the earlier BIP66 soft-fork logic implemented by Pieter
Wuille's 5a47811da5158df763aa2fca09ce646ee0c51e7b

Rebased-From: 287f54fc90c29301faede8d4ac2ea24a91441917

9 years agoEnable CHECKLOCKTIMEVERIFY as a standard script verify flag
Peter Todd [Wed, 17 Dec 2014 05:31:44 +0000 (00:31 -0500)]
Enable CHECKLOCKTIMEVERIFY as a standard script verify flag

Transactions that fail CLTV verification will be rejected from the
mempool, making it easy to test the feature. However blocks containing
"invalid" CLTV-using transactions will still be accepted; this is *not*
the soft-fork required to actually enable CLTV for production use.

Rebased-From: ffd75adce01a78b3461b3ff05bcc2b530a9ce994

9 years agoReplace NOP2 with CHECKLOCKTIMEVERIFY (BIP65)
Peter Todd [Mon, 29 Sep 2014 07:44:25 +0000 (03:44 -0400)]
Replace NOP2 with CHECKLOCKTIMEVERIFY (BIP65)

<nLockTime> CHECKLOCKTIMEVERIFY -> <nLockTime>

Fails if tx.nLockTime < nLockTime, allowing the funds in a txout to be
locked until some block height or block time in the future is reached.

Only the logic and unittests are implemented; this commit does not have
any actual soft-fork logic in it.

Thanks to Pieter Wuille for rebase.

Credit goes to Gregory Maxwell for the suggestion of comparing the
argument against the transaction nLockTime rather than the current
time/blockheight directly.

Rebased-From: bc60b2b4b401f0adff5b8b9678903ff8feb5867b

9 years agoMove LOCKTIME_THRESHOLD to src/script/script.h
Peter Todd [Mon, 29 Sep 2014 05:02:59 +0000 (01:02 -0400)]
Move LOCKTIME_THRESHOLD to src/script/script.h

Will now be needed by CHECKLOCKTIMEVERIFY code.

Rebased-From: 48e9c57cf06352f890eac4285ae022d8746cf3fd

9 years agoMake CScriptNum() take nMaxNumSize as an argument
Peter Todd [Mon, 29 Sep 2014 05:00:01 +0000 (01:00 -0400)]
Make CScriptNum() take nMaxNumSize as an argument

While the existing numeric opcodes are all limited to 4-byte bignum
arguments, new opcodes will need different limits.

Rebased-From: 99088d60d8a7747c6d1a7fd5d8cd388be1b3e138

9 years agoTest LowS in standardness, removes nuisance malleability vector.
Gregory Maxwell [Tue, 6 Oct 2015 03:19:12 +0000 (03:19 +0000)]
Test LowS in standardness, removes nuisance malleability vector.

This adds SCRIPT_VERIFY_LOW_S to STANDARD_SCRIPT_VERIFY_FLAGS which
 will make the node require the canonical 'low-s' encoding for
 ECDSA signatures when relaying or mining.

Consensus behavior is unchanged.

The rational is explained in a81cd96805ce6b65cca3a40ebbd3b2eb428abb7b:
 Absent this kind of test ECDSA is not a strong signature as given
 a valid signature {r, s} both that value and {r, -s mod n} are valid.
 These two encodings have different hashes allowing third parties a
 vector to change users txids.  These attacks are avoided by picking
 a particular form as canonical and rejecting the other form(s); in
 the of the LOW_S rule, the smaller of the two possible S values is
 used.

If widely deployed this change would eliminate the last remaining
 known vector for nuisance malleability on boring SIGHASH_ALL
 p2pkh transactions.  On the down-side it will block most
 transactions made by sufficiently out of date software.

Unlike the other avenues to change txids on boring transactions this
 one was randomly violated by all deployed bitcoin software prior to
 its discovery.  So, while other malleability vectors where made
 non-standard as soon as they were discovered, this one has remained
 permitted.  Even BIP62 did not propose applying this rule to
 old version transactions, but conforming implementations have become
 much more common since BIP62 was initially written.

Bitcoin Core has produced compatible signatures since a28fb70e in
 September 2013, but this didn't make it into a release until 0.9
 in March 2014; Bitcoinj has done so for a similar span of time.
 Bitcoinjs and electrum have been more recently updated.

This does not replace the need for BIP62 or similar, as miners can
 still cooperate to break transactions.  Nor does it replace the
 need for wallet software to handle malleability sanely[1]. This
 only eliminates the cheap and irritating DOS attack.

[1] On the Malleability of Bitcoin Transactions
Marcin Andrychowicz, Stefan Dziembowski, Daniel Malinowski, Łukasz Mazurek
http://fc15.ifca.ai/preproceedings/bitcoin/paper_9.pdf

Rebased-From: b196b685c9089b74fd4ff3d9a28ea847ab36179b
Github-Pull: #6769

9 years agoMerge pull request #6750
Wladimir J. van der Laan [Tue, 6 Oct 2015 14:18:32 +0000 (16:18 +0200)]
Merge pull request #6750

5094a81 Move recentRejects initialization to top of InitBlockIndex (Wladimir J. van der Laan)
ec9b6c3 Keep track of recently rejected transactions (Peter Todd)
6eed52e Only use randomly created nonces in CRollingBloomFilter. (Pieter Wuille)
83671ef Make CRollingBloomFilter set nTweak for you (Peter Todd)
25cf122 Reuse vector hashing code for uint256 (Pieter Wuille)
2983fe0 Add uint256 support to CRollingBloomFilter (Peter Todd)

9 years agoMove recentRejects initialization to top of InitBlockIndex
Wladimir J. van der Laan [Fri, 31 Jul 2015 15:55:05 +0000 (17:55 +0200)]
Move recentRejects initialization to top of InitBlockIndex

This avoids that premature return in the condition that a new chain is initialized
results in NULL pointer errors due to recentReject not being constructed.

Also add assertions where it is used.

(cherry picked from commit a8d0407c4fcf7c4e8ed0e8edabd204f7a4efa477)

9 years agoKeep track of recently rejected transactions
Peter Todd [Fri, 17 Jul 2015 10:46:48 +0000 (06:46 -0400)]
Keep track of recently rejected transactions

Nodes can have divergent policies on which transactions they will accept
and relay.  This can cause you to repeatedly request and reject the same
tx after its inved to you from various peers which have accepted it.
Here we add rolling bloom filter to keep track of such rejections,
clearing the filter every time the chain tip changes.

Credit goes to Alex Morcos, who created the patch that this code is
based on.

Original code by Peter Todd. Refactored to not construct the
filter at startup time by Pieter Wuille.

(cherry picked from commit 0847d9cb5fcd2fdd5a21bde699944d966cf5add9)

9 years agoOnly use randomly created nonces in CRollingBloomFilter.
Pieter Wuille [Mon, 27 Jul 2015 16:58:00 +0000 (18:58 +0200)]
Only use randomly created nonces in CRollingBloomFilter.

(cherry picked from commit d741371d7d27e228aa64c618c50b23fb5449c3e1)

9 years agoMake CRollingBloomFilter set nTweak for you
Peter Todd [Sun, 19 Jul 2015 19:43:34 +0000 (04:43 +0900)]
Make CRollingBloomFilter set nTweak for you

While CBloomFilter is usually used with an explicitly set nTweak,
CRollingBloomFilter is only used internally. Requiring every caller to
set nTweak is error-prone and redundant; better to have the class handle
that for you with a high-quality randomness source.

Additionally when clearing the filter it makes sense to change nTweak as
well to recover from a bad setting, e.g. due to insufficient randomness
at initialization, so the clear() method is replaced by a reset() method
that sets a new, random, nTweak value.

(cherry picked from commit d2d7ee0e863b286e1c9f9c54659d494fb0a7712d)

9 years agoReuse vector hashing code for uint256
Pieter Wuille [Mon, 27 Jul 2015 16:38:45 +0000 (18:38 +0200)]
Reuse vector hashing code for uint256

(cherry picked from commit a3d65fedaa18686f0cc007d0a13dba6545250300)

9 years agoAdd uint256 support to CRollingBloomFilter
Peter Todd [Fri, 17 Jul 2015 10:42:43 +0000 (06:42 -0400)]
Add uint256 support to CRollingBloomFilter

(cherry picked from commit bbe41088c61f2ad328766e851ffe6169aa80935a)

9 years agoqt: periodic translation update
Wladimir J. van der Laan [Tue, 29 Sep 2015 10:54:05 +0000 (12:54 +0200)]
qt: periodic translation update

9 years agoMerge pull request #6703
Wladimir J. van der Laan [Wed, 23 Sep 2015 12:09:42 +0000 (14:09 +0200)]
Merge pull request #6703

45bfa13 PARTIAL: typofixes (found by misspell_fixer) (Veres Lajos)
21c406e add support for miniupnpc api version 14 (Pavel Vasin)
13bd5a7 rpc-tests: re-enable rpc-tests for Windows (Cory Fields)
ccc4ad6 net: Set SO_REUSEADDR for Windows too (Cory Fields)
1f6772e add unit test for CNetAddr::GetGroup. (Alex Morcos)
13642a5 Fix masking of irrelevant bits in address groups. (Alex Morcos)
6b51b9b Replace boost::reverse_lock with our own. (Casey Rodarmor)
626c5e6 Make sure we re-acquire lock if a task throws (Casey Rodarmor)
4877053 Add missing files to files.md (fanquake)
f171fee Handle leveldb::DestroyDB() errors on wipe failure (Adam Weiss)
c5b89fe Fix race condition on test node shutdown (Casey Rodarmor)
4a37410 Handle no chain tip available in InvalidChainFound() (Ross Nicoll)
f6d29a6 Use unique name for AlertNotify tempfile (Casey Rodarmor)
e6adac7 Delay initial pruning until after wallet init (Adam Weiss)
e0020d4 Make sure LogPrint strings are line-terminated (J Ross Nicoll)
7ff9d12 Make sure LogPrintf strings are line-terminated (Wladimir J. van der Laan)
5a39133 build: fix libressl detection (Cory Fields)
f6355e6 Avoid leaking file descriptors in RegisterLoad (Casey Rodarmor)
60457d3 locking: fix a few small issues uncovered by -Wthread-safety (Cory Fields)
a496e11 Remove bash test note from rpc-tests readme (fanquake)
49c6a64 tests: Remove old sh-based test framework (Wladimir J. van der Laan)
a37567d Add autogen.sh to source tarball. (randy-waterhouse)
1f4d7cf travis: for travis generating an extra build (Cory Fields)

9 years ago[QT] fix thin space word wrap line brake issue
Jonas Schnelli [Fri, 18 Sep 2015 11:51:28 +0000 (13:51 +0200)]
[QT] fix thin space word wrap line brake issue

The thin space QT html hack results in cut-off chars/nums after a line break.

Avoid word wrap line breaks by using a smaller font and a line break before each alternative value)

Rebased-From: 24cb7c7bbba224dcb73fcf69296f5ef4734f745f
Github-Pull: #6694

9 years agoPARTIAL: typofixes (found by misspell_fixer)
Veres Lajos [Sat, 8 Aug 2015 23:17:27 +0000 (00:17 +0100)]
PARTIAL: typofixes (found by misspell_fixer)

Upstream: 9f68ed6b6d1a9c6436ce37913666165f2b180ee3 (PR #6539)

9 years agoadd support for miniupnpc api version 14
Pavel Vasin [Sun, 23 Aug 2015 20:53:49 +0000 (23:53 +0300)]
add support for miniupnpc api version 14

The value of new arg ttl is set to 2 as it's recommended default.

9 years agorpc-tests: re-enable rpc-tests for Windows
Cory Fields [Tue, 25 Aug 2015 16:03:28 +0000 (12:03 -0400)]
rpc-tests: re-enable rpc-tests for Windows

9 years agonet: Set SO_REUSEADDR for Windows too
Cory Fields [Thu, 20 Aug 2015 19:50:13 +0000 (15:50 -0400)]
net: Set SO_REUSEADDR for Windows too

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.

9 years agoadd unit test for CNetAddr::GetGroup.
Alex Morcos [Wed, 19 Aug 2015 18:34:56 +0000 (14:34 -0400)]
add unit test for CNetAddr::GetGroup.

9 years agoFix masking of irrelevant bits in address groups.
Alex Morcos [Fri, 14 Aug 2015 19:23:37 +0000 (14:23 -0500)]
Fix masking of irrelevant bits in address groups.

9 years agoReplace boost::reverse_lock with our own.
Casey Rodarmor [Thu, 3 Sep 2015 16:53:00 +0000 (12:53 -0400)]
Replace boost::reverse_lock with our own.

9 years agoMake sure we re-acquire lock if a task throws
Casey Rodarmor [Mon, 17 Aug 2015 21:30:46 +0000 (17:30 -0400)]
Make sure we re-acquire lock if a task throws

9 years agoAdd missing files to files.md
fanquake [Thu, 13 Aug 2015 13:09:01 +0000 (21:09 +0800)]
Add missing files to files.md

typo

9 years agoHandle leveldb::DestroyDB() errors on wipe failure
Adam Weiss [Wed, 12 Aug 2015 23:32:20 +0000 (19:32 -0400)]
Handle leveldb::DestroyDB() errors on wipe failure

Add error checking to CLevelDBWrapper for errors from
leveldb::DestroyDB().  Without it, if unlink() or DeleteFileW() fail to
delete files, they will fail silent.  If they fail to delete any files,
CLevelDBWrapper will silently open and read the existing database.

Typically any permissions issues would be caught by leveldb as it churns
through many files as part of its compaction process, but it is
conceivable that this could cause problems on Windows with anti-virus
and indexing software.

9 years agoFix race condition on test node shutdown
Casey Rodarmor [Mon, 3 Aug 2015 18:51:12 +0000 (14:51 -0400)]
Fix race condition on test node shutdown

9 years agoHandle no chain tip available in InvalidChainFound()
Ross Nicoll [Sat, 4 Jul 2015 19:14:03 +0000 (20:14 +0100)]
Handle no chain tip available in InvalidChainFound()

Handle the case where no chain tip is available, in InvalidChainFound(). This fixes a null pointer deference when running unit tests, if the genesis block or block validation code is broken.

9 years agoUse unique name for AlertNotify tempfile
Casey Rodarmor [Thu, 6 Aug 2015 03:10:14 +0000 (23:10 -0400)]
Use unique name for AlertNotify tempfile

9 years agoDelay initial pruning until after wallet init
Adam Weiss [Tue, 30 Jun 2015 17:22:48 +0000 (13:22 -0400)]
Delay initial pruning until after wallet init

Don't prune until any wallet rescanning has taken place to avoid
potentially pruning blocks that the wallet rescan may need.

9 years agoMake sure LogPrint strings are line-terminated
J Ross Nicoll [Sat, 29 Aug 2015 16:40:13 +0000 (17:40 +0100)]
Make sure LogPrint strings are line-terminated

9 years agoMake sure LogPrintf strings are line-terminated
Wladimir J. van der Laan [Fri, 31 Jul 2015 14:41:06 +0000 (16:41 +0200)]
Make sure LogPrintf strings are line-terminated

Fix the cases where LogPrint[f] was accidentally called without line
terminator, which resulted in concatenated log lines.

(see e.g. #6492)

9 years agobuild: fix libressl detection
Cory Fields [Sat, 1 Aug 2015 03:15:56 +0000 (23:15 -0400)]
build: fix libressl detection

Checking libcrypto for a function after we've already found a (possibly
different) libcrypto is not what we want to do here.

pkg-config might've found a cross lib while AC_CHECK_LIB may find a different
or native one.

Run a link-test against the lib that's already been found instead.

9 years agoAvoid leaking file descriptors in RegisterLoad
Casey Rodarmor [Tue, 28 Jul 2015 18:01:00 +0000 (14:01 -0400)]
Avoid leaking file descriptors in RegisterLoad

This is pretty trivial, but if there's an error here we'll leak a file
descriptor. Changed it to always close the file.

9 years agolocking: fix a few small issues uncovered by -Wthread-safety
Cory Fields [Tue, 16 Jun 2015 08:02:25 +0000 (04:02 -0400)]
locking: fix a few small issues uncovered by -Wthread-safety

- rpcwallet: No need to lock twice here
- openssl: Clang doesn't understand selective lock/unlock here. Ignore it.
- CNode: Fix a legitimate (though very unlikely) locking bug.

9 years agoRemove bash test note from rpc-tests readme
fanquake [Wed, 15 Jul 2015 08:28:49 +0000 (16:28 +0800)]
Remove bash test note from rpc-tests readme

9 years agotests: Remove old sh-based test framework
Wladimir J. van der Laan [Mon, 13 Jul 2015 06:50:16 +0000 (08:50 +0200)]
tests: Remove old sh-based test framework

This removes the `conflictedbalance.sh` test as well, but that test has
been broken for a long time and isn't part of any scripts.
What it does is, IMO, sufficiently tested by other tests.

9 years agoAdd autogen.sh to source tarball.
randy-waterhouse [Sat, 11 Jul 2015 03:39:45 +0000 (15:39 +1200)]
Add autogen.sh to source tarball.

9 years agotravis: for travis generating an extra build
Cory Fields [Wed, 2 Sep 2015 01:45:23 +0000 (21:45 -0400)]
travis: for travis generating an extra build

9 years agoDo not store more than 200 timedata samples.
Pavel Janík [Tue, 11 Aug 2015 13:57:52 +0000 (15:57 +0200)]
Do not store more than 200 timedata samples.

Github-Pull: #6545
Rebased-From: 8be371db340b03dc03142c1bb3390fdfc84f56b4

9 years agoconsensus: cache the openssl EC_GROUP to avoid a race condition for each CECKey insta...
Cory Fields [Tue, 18 Aug 2015 04:54:19 +0000 (00:54 -0400)]
consensus: cache the openssl EC_GROUP to avoid a race condition for each CECKey instantiation

Github-Pull: #6571
Rebased-From: 1d1073c2d3231a9de4adbc2bc46846fc20b34f9e

9 years agoBe even stricter in processing unrequested blocks
Suhas Daftuar [Tue, 2 Jun 2015 19:17:36 +0000 (15:17 -0400)]
Be even stricter in processing unrequested blocks

Github-Pull: #6224
Rebased-From: bfc30b34374d71928acee5ff41282f09cedfd5e4 6b1066fab41523d25d75b45a10e4b0f61d7c61d0 04b5d235f1560b8285591b963d3636f7ddf74563 59b49cd07482494d9a99068af502be9ceda41ed2

9 years agoRevert "Cache transaction validation successes"
Pieter Wuille [Tue, 28 Jul 2015 18:15:46 +0000 (20:15 +0200)]
Revert "Cache transaction validation successes"

This reverts commit bc484ef8db02715e283e4cddd2c972316c0688dd.

9 years agoCache transaction validation successes
Pieter Wuille [Tue, 28 Apr 2015 17:27:16 +0000 (10:27 -0700)]
Cache transaction validation successes

Conflicts:
src/main.cpp
src/test/test_bitcoin.cpp

Github-Pull: #6077
Rebased-From: 17b11428c135203342aff38cabc8047e673f38ac 517e6dd25618522c716e64859554b0f29c6e65d0

9 years agoDepends: bump to qt 5.5
Cory Fields [Thu, 23 Jul 2015 21:10:15 +0000 (17:10 -0400)]
Depends: bump to qt 5.5

Github-Pull: #6471
Rebased-From: fe997dfd121e3d82464908940753b77ebf61a10d 5189fe3d88b7d0154758379a877533fe364dec87 ab67dd7818ff2d0910f3fd9bfca9412d85de4424 ecd6a89381a34d4bcd07593a2e377656d070a7ed 060b3d377b0a0d318f630beb7fe4d8f41b99981c

9 years agoqt: Force TLS1.0+ for SSL connections
Wladimir J. van der Laan [Mon, 6 Jul 2015 18:06:16 +0000 (20:06 +0200)]
qt: Force TLS1.0+ for SSL connections

Github-Pull: #6384
Rebased-From: 15e26a6a9afe299b9ca6fced73b876644365879b

9 years agoFix warning introduced by #6412
Wladimir J. van der Laan [Mon, 20 Jul 2015 15:10:02 +0000 (17:10 +0200)]
Fix warning introduced by #6412

SOCKET are defined as unsigned integers, thus always >=0.

Rebased-From: 89289d875da108c42ca013f33597eda46cb6eb53

9 years agoTest whether created sockets are select()able
Pieter Wuille [Thu, 9 Jul 2015 22:23:27 +0000 (18:23 -0400)]
Test whether created sockets are select()able

Conflicts:
src/net.cpp

Rebased-From: d422f9b1fdb42a51aadaa1bbc157542dca2feb17

9 years agoqt: periodic translations update
Wladimir J. van der Laan [Fri, 17 Jul 2015 07:35:29 +0000 (09:35 +0200)]
qt: periodic translations update

9 years agoUpdated URL location of netinstall for Debian
฿tcDrak [Tue, 14 Jul 2015 22:33:49 +0000 (23:33 +0100)]
Updated URL location of netinstall for Debian

Github-Pull: #6439
Rebased-From: 09d4ddf1c5841b757c2676d508a68baa2dbdc4c7

9 years agoopenssl: avoid config file load/race
Cory Fields [Tue, 14 Jul 2015 21:38:03 +0000 (17:38 -0400)]
openssl: avoid config file load/race

Github-Pull: #6438
Rebased-From: d4b1d5a8baf18e4c8d62846360c0c1c0c9331d70

9 years agoqt: update forgotten emit to Q_EMIT in macdockiconhandler.mm
Wladimir J. van der Laan [Wed, 15 Jul 2015 13:09:31 +0000 (15:09 +0200)]
qt: update forgotten emit to Q_EMIT in macdockiconhandler.mm

Leftover from #6433

Rebased-From: ce183dce2e13c23ed279f4d9dae281e8e5977ebd

9 years agoqt: define QT_NO_KEYWORDS
Wladimir J. van der Laan [Tue, 14 Jul 2015 11:59:05 +0000 (13:59 +0200)]
qt: define QT_NO_KEYWORDS

QT_NO_KEYWORDS prevents Qt from defining the `foreach`, `signals`,
`slots` and `emit` macros.

Avoid overlap between Qt macros and boost - for example #undef hackiness
in #6421.

Conflicts:
src/qt/addressbookpage.cpp
src/qt/peertablemodel.cpp
src/qt/receivecoinsdialog.cpp
src/qt/rpcconsole.cpp

Rebased-From: d29ec6c2301e593d577126d1ca85b93307b32bf1
Github-Pull: #6433

This page took 0.075785 seconds and 4 git commands to generate.