Commit graph

7801 commits

Author SHA1 Message Date
Philip Kaufmann
6715efb9ca [Qt] Payment request expiration bug fix (re-done)
- this is based on #4122 (which can be closed)

Currently a payment request is only checked for expiration upon receipt.
It should be checked again immediately before sending coins to prevent
the user from paying to an expired invoice which would then require a
customer service interaction.

- add static verifyExpired() function to PaymentServer to be able to use
  the same validation code in GUI and unit-testing code
- extend unit tests to use that function and also add an unit test which
  overflows, because payment requests allow expires as uint64, whereas we
  use int64_t for verification of expired payment requests
2015-01-15 09:08:22 +01:00
Wladimir J. van der Laan
e0cd2f5523
Merge pull request #5649
301cd2a Use text-color icons for system tray Send/Receive menu entries (Luke Dashjr)
2015-01-14 18:11:11 +01:00
Luke Dashjr
301cd2a3a9 Use text-color icons for system tray Send/Receive menu entries 2015-01-14 17:01:00 +00:00
Wladimir J. van der Laan
d1aa3c67f0
Merge pull request #5489
905711f contrib: improve optimize-pngs.py (Wladimir J. van der Laan)
42f6a0c [Qt] optimize PNG files (Jonas Schnelli)
2015-01-14 17:22:37 +01:00
Wladimir J. van der Laan
905711f0a1 contrib: improve optimize-pngs.py
- Check that image contents match pre- and post- crushing.
- Also remove use of external tool to compute sha256 in favor of hashlib.
- contrib: remove all use of shell=True in strip_pngs.py
  Using `shell=True` can be a security hazard. See e.g.
  https://docs.python.org/2/library/subprocess.html#subprocess.check_output
2015-01-14 17:19:04 +01:00
Jonas Schnelli
42f6a0c2b9 [Qt] optimize PNG files
- provide a python script
- add optimized png files
2015-01-14 17:18:48 +01:00
Wladimir J. van der Laan
eec81cbb80
Merge pull request #5637
80dd50c [Qt] group variables below initial if-clauses in AmountSpinBox::stepEnabled (Philip Kaufmann)
0fd9e2b [Qt] don't allow amount changes when AmountSpinBox is read-only (Philip Kaufmann)
2015-01-14 16:54:28 +01:00
Wladimir J. van der Laan
ddb512a321
Merge pull request #5656
06b2424 Update OS X build instructions to use Qt 5 (Michael Ford)
2015-01-14 14:20:04 +01:00
Wladimir J. van der Laan
30a5b5fa7a
Merge pull request #5642
17005bc [Qt] add payment request unit test for non matching networks (Philip Kaufmann)
080da96 [Qt] prepare paymentservertests for new unit tests (Philip Kaufmann)
2015-01-14 14:18:34 +01:00
Michael Ford
06b24240cd Update OS X build instructions to use Qt 5 2015-01-14 20:47:33 +08:00
Philip Kaufmann
17005bc0fc [Qt] add payment request unit test for non matching networks
- verify that payment request network matches client network
- add static verifyNetwork() function to PaymentServer to be able to use
  the same validation code in GUI and unit-testing code
2015-01-14 13:15:26 +01:00
Wladimir J. van der Laan
a8f897514c
Merge pull request #5654
324f64d jonasschnelli's GPG key (Jonas Schnelli)
2015-01-14 08:36:08 +01:00
Jonas Schnelli
324f64d148 jonasschnelli's GPG key 2015-01-13 21:30:01 +01:00
Philip Kaufmann
080da96c7c [Qt] prepare paymentservertests for new unit tests
- add a second PaymentRequest Test CA certificate to paymentrequestdata.h
  (serial number f0:da:97:e4:38:d7:64:16) as caCert2_BASE64
- rename existing Test CA certificate to caCert1_BASE64
- rename existing payment request data to know they belong to
  caCert1_BASE64
- update comments to reflect the changes and add a missing comment to one
  of the payment requests
2015-01-13 15:46:27 +01:00
Philip Kaufmann
80dd50ccba [Qt] group variables below initial if-clauses in AmountSpinBox::stepEnabled 2015-01-13 11:51:45 +01:00
Wladimir J. van der Laan
c5380a9045
Merge pull request #5144
b468e81 Qt: Clarify sign/verify dialog text to specifically state that these messages only prove one receives with the address in question, and makes no claim to sender of transactions (Luke Dashjr)
2015-01-13 10:02:35 +01:00
Wladimir J. van der Laan
90c71548c7
depends: remove embedded OpenSSL timestamp for determinism
Chery-picked from 0.10 branch.

Rebased-From: c3200bcd1e7116e079aebabed3a01dc5385bfc9e
2015-01-12 16:19:24 +01:00
Wladimir J. van der Laan
868da0f40a
Merge pull request #5619
13cdce4 Catch UTXO set read errors and shutdown (Pieter Wuille)
2015-01-12 11:26:41 +01:00
Wladimir J. van der Laan
de8b9ab757
Merge pull request #5608
9161303 Introduce 10 minute block download timeout (Pieter Wuille)
2015-01-12 11:24:47 +01:00
Wladimir J. van der Laan
8d0fd46460
Merge pull request #5640
c6b7b29 Improve robustness of DER recoding code (Wladimir J. van der Laan)
2015-01-12 09:09:56 +01:00
Wladimir J. van der Laan
c6b7b29f23 Improve robustness of DER recoding code
Add some defensive programming on top of #5634.

This copies the respective OpenSSL code in ECDSA_verify in
OpenSSL pre-1.0.1k (e.g. https://github.com/openssl/openssl/blob/OpenSSL_1_0_1j/crypto/ecdsa/ecs_vrf.c#L89)
more closely.

As reported by @sergiodemianlerner.
2015-01-12 08:59:03 +01:00
Philip Kaufmann
0fd9e2bf43 [Qt] don't allow amount changes when AmountSpinBox is read-only
- before it was possible to use the steps to change e.g. amouns of
  authenticated or unauthenticated payment requests (AmountSpinBox is
  already set to read-only here) - this is now fixed
- also move the reimplemented stepEnabled() function to the
  protected section of our class, where it belongs (see Qt doc)
2015-01-10 15:02:12 +01:00
Gregory Maxwell
4f73a8f64d
Merge pull request #5634
8dccba6 fail immediately on an empty signature (Cory Fields)
dad7764 depends: bump openssl to 1.0.1k (Cory Fields)
488ed32 consensus: guard against openssl's new strict DER checks (Cory Fields)
2015-01-09 20:21:19 -08:00
Cory Fields
8dccba6a45 fail immediately on an empty signature 2015-01-09 22:06:55 -05:00
Cory Fields
dad7764a9d depends: bump openssl to 1.0.1k 2015-01-09 21:31:38 -05:00
Cory Fields
488ed32f2a consensus: guard against openssl's new strict DER checks
New versions of OpenSSL will reject non-canonical DER signatures. However,
it'll happily decode them. Decode then re-encode before verification in order
to ensure that it is properly consumed.
2015-01-09 21:31:31 -05:00
Pieter Wuille
13cdce4336 Catch UTXO set read errors and shutdown 2015-01-08 15:51:15 +01:00
Wladimir J. van der Laan
d0c97bbe70
Merge pull request #5617
c6a5ad4 Fix tests after #5413 (Wladimir J. van der Laan)
2015-01-08 13:54:17 +01:00
Wladimir J. van der Laan
c6a5ad4819
Fix tests after #5413
Pull #5413 was not rebased after deterministic signing was merged
(#5227), so the testcases had to be regenerated using UPDATE_JSON_TESTS.
2015-01-08 12:53:05 +01:00
Wladimir J. van der Laan
c8183bf8ea
Merge pull request #5589
23f3435 Rename MAX_TX_SIGOPS to MAX_STANDARD_TX_SIGOPS to match similar policy constant MAX_STANDARD_TX_SIZE (Luke Dashjr)
2015-01-08 12:38:10 +01:00
Wladimir J. van der Laan
c5e0aef5c4
Merge pull request #5604
d58c5d6 tests: run sanity checks in tests too (Cory Fields)
2015-01-08 12:07:06 +01:00
Wladimir J. van der Laan
48e1765e27
Merge pull request #5143
da918ac Make SCRIPT_VERIFY_CLEANSTACK a standardness requirement (Pieter Wuille)
b6e03cc Add SCRIPT_VERIFY_CLEANSTACK (BIP62 rule 6) (Pieter Wuille)
ae4151b No semantic change: reuse stack variable in P2SH evaluation (Pieter Wuille)
2015-01-08 12:01:22 +01:00
Wladimir J. van der Laan
e3f5727590
Merge pull request #5612
84d9199 [QA] fix zapwallettxes test (Jonas Schnelli)
2015-01-08 11:51:51 +01:00
Wladimir J. van der Laan
2eda47bc37
Merge pull request #5613
1eb1e65 Fix smartfees test for change to relay policy (Suhas Daftuar)
2015-01-08 11:42:16 +01:00
Wladimir J. van der Laan
83be8fda6d
Merge pull request #5559
e179eb3 Make the command-line-args dialog better (Thomas Zander)
2015-01-08 10:04:15 +01:00
Wladimir J. van der Laan
204d41a821
Merge pull request #5542
2ecd294 Bugfix: configure: Correctly detect "nothing to build" condition (Luke Dashjr)
b7a4ecc Bugfix: Only check for boost when building code that requires it (Luke Dashjr)
a19eeac Bugfix: configure: Check for openssl/ec.h (Luke Dashjr)
fe925e2 Use EXTRA_LIBRARIES instead of noinst_LIBRARIES so we can avoid building unused code (Cory Fields)
2015-01-08 09:32:36 +01:00
Luke Dashjr
2ecd2941ed Bugfix: configure: Correctly detect "nothing to build" condition 2015-01-07 20:19:56 +00:00
Luke Dashjr
b7a4ecc153 Bugfix: Only check for boost when building code that requires it 2015-01-07 20:19:05 +00:00
Pieter Wuille
916130348c Introduce 10 minute block download timeout
This will disconnect peers that do not transfer a block in 10 minutes, plus
5 minutes for every previously queued block with validated headers
(accomodating downstream bandwidth down to a few kilobytes per second - below
that the node would have trouble staying synchronized anyway).
2015-01-07 17:09:24 +01:00
Luke Dashjr
a19eeaced8 Bugfix: configure: Check for openssl/ec.h 2015-01-07 15:59:54 +00:00
Jonas Schnelli
84d919974b [QA] fix zapwallettxes test
- remove shell test script and add a python equivalent
2015-01-07 16:41:12 +01:00
Wladimir J. van der Laan
8e4578af0f
Merge pull request #5521
0ea28ba Reject non-final txs even in testnet/regtest (Peter Todd)
2015-01-07 16:27:33 +01:00
Suhas Daftuar
1eb1e65f09 Fix smartfees test for change to relay policy 2015-01-07 10:11:23 -05:00
Wladimir J. van der Laan
37b185c4af
Merge pull request #5611
f0b8afc tests: fix spurious windows test failures after 012598880c (Cory Fields)
2015-01-07 15:02:52 +01:00
Wladimir J. van der Laan
7625f7ff94
Merge pull request #5597
e413457 Catch LevelDB errors during flush (Pieter Wuille)
02bced1 Bugfix: only track UTXO modification after lookup (Pieter Wuille)
2015-01-07 13:03:41 +01:00
Wladimir J. van der Laan
d79adc1ab1
Merge pull request #5535
1c52aad Require sufficent priority for relay of free transactions (Pieter Wuille)
2015-01-07 13:01:56 +01:00
Cory Fields
f0b8afc88b tests: fix spurious windows test failures after 012598880c
on rare occasions, rand() was returning duped values, causing duplicate
transactions.

BuildMerkleTree happily used these, but CPartialMerkleTree caught them and
returned a null merkle root.

Rather than taking changes with rand(), use the loop counter to guarantee
unique values.

At sipa's request, also remove the remaining uses of rand().
2015-01-06 20:18:12 -05:00
Cory Fields
fe925e221f Use EXTRA_LIBRARIES instead of noinst_LIBRARIES so we can avoid building unused code 2015-01-06 20:00:25 +00:00
Wladimir J. van der Laan
729ba31749
Merge pull request #5513
856e862 namespace: drop most boost namespaces and a few header cleanups (Cory Fields)
9b1ab86 namespace: drop boost::assign altogether here (Cory Fields)
a324199 namespace: remove boost namespace pollution (Cory Fields)
2015-01-06 20:32:45 +01:00
Wladimir J. van der Laan
3b95808428
Merge pull request #5520
bdb6a71 IsNull doesn't change CBlockLocator, add const hint (Pavel Janík)
1b37333 Remove no longer needed declaration of CBlockLocator (Pavel Janík)
2015-01-06 20:01:00 +01:00