lib_ssl
in depends, as well as SSL lib detection from the build system. It’s something that I’d optimistically like to do for 0.20.0
.
grep -rnI bip70
only finds matches in release notes so it looks good to me
Concept ACK
build_msvc/README.md
as well?
Can the ssl libs be removed from the msvc build in build_msvc/README.md as well? @sipsorcery Any chance you can take a look here, and put together some changes I can cherry-pick in?
Concept ACK
Looks like there are still some extra SSL related symbols sneaking into the binaries for the Windows and Linux builds
That’s strange! How is this possible if it doesn’t link to OpenSSL? Can you list which ones?
Concept ACK
+22 −2,079
- very nice to see! :)
That’s strange! How is this possible if it doesn’t link to OpenSSL? Can you list which ones? @laanwj The following gists contain the output of
nm -C src/qt/bitcoin-qt | grep -i ssl
after doing a depends build with this PR. I have cleaned up the output somewhat (check the revision for the symbols I’ve trimmed). A bunch of these will also disappear once we remove thenetwork
module from the Qt build.
./ci/
)
The following gists contain the output of nm -C src/qt/bitcoin-qt | grep -i ssl after doing a depends build with this PR
None of those symbols are in bitcoind
, right?
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.
Reviewers, this pull request conflicts with the following ones:
If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.
@laanwj The following gists contain the output of nm -C src/qt/bitcoin-qt | grep -i ssl after doing a depends build with this PR.
Huh. I’m really confused. Can we be sure that Qt isn’t doing an internal build of OpenSSL? (e.g. like the fallback it has for image format parsers)
Or is it gasp linking to the system OpenSSL?
A bunch of these will also disappear once we remove the network module from the Qt build.
Yeah. I guess we don’t need Qt networking at all right now. Though maybe in the future, when the GUI is separate and communicates with a backend?
None of those symbols are in bitcoind, right?
Some of them are, because we still using OpenSSL crypto in bitcoind
.
Huh. I’m really confused. Can we be sure that Qt isn’t doing an internal build of OpenSSL? (e.g. like the fallback it has for image format parsers)
I don’t think it is. I’m also working on slimming down our OpenSSL
build in a branch on top of these changes. Which should make it a lot clearer what is being built and included.
225@@ -226,13 +226,6 @@ AC_ARG_ENABLE([zmq],
226 [disable ZMQ notifications])],
227 [use_zmq=$enableval],
228 [use_zmq=yes])
229-AC_ARG_ENABLE([bip70],
--enable-bip70
into an error. That way it’s obvious to those who are currently manually overriding.
--enable-bip70
.
482@@ -483,24 +483,6 @@ void OptionsModel::setDisplayUnit(const QVariant &value)
483 }
484 }
485
486-bool OptionsModel::getProxySettings(QNetworkProxy& proxy) const
50 QT_END_NAMESPACE
51
52-// BIP70 max payment request size in bytes (DoS protection)
53-static const qint64 BIP70_MAX_PAYMENTREQUEST_SIZE = 50000;
54-
55 class PaymentServer : public QObject
1@@ -2,10 +2,6 @@
2 // Distributed under the MIT software license, see the accompanying
3 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
4
5-#if defined(HAVE_CONFIG_H)
1@@ -2,10 +2,6 @@
2 // Distributed under the MIT software license, see the accompanying
3 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
4
5-#ifdef HAVE_CONFIG_H
Rebased on master and #17191. Reverted the HAVE_CONFIG_H
deletions and swapped to throwing an error on --enable-bip70
rather than dropping the check entirely as suggested by theuni.
Also re-ordered the commits so the removal steps are a bit more logical and added another change so that we are now only building OpenSSLs lib_crypto
(no longer building lib_ssl
).
Gitian builds for commit a22b62481aae95747830bd3c0db3227860b12d8e (master):
504b30745cfcaa639fa31adb227d5295...
bitcoin-0.19.99-aarch64-linux-gnu-debug.tar.gz7240079a85bb6f811dd03a562cb5cec0...
bitcoin-0.19.99-aarch64-linux-gnu.tar.gz7ab54dd61264a27b97c63f00e8824227...
bitcoin-0.19.99-arm-linux-gnueabihf-debug.tar.gzf0b9cc0ac4154af510a7850043916c43...
bitcoin-0.19.99-arm-linux-gnueabihf.tar.gz07c609eec4daef18deab8f5792a92a28...
bitcoin-0.19.99-i686-pc-linux-gnu-debug.tar.gz59e534df6418f834e27a1d8466c1f3b7...
bitcoin-0.19.99-i686-pc-linux-gnu.tar.gz0fce9ce999ee0d36675198ed6a167a57...
bitcoin-0.19.99-osx-unsigned.dmgccf49d4b45f5f5f454985dbf86442ce8...
bitcoin-0.19.99-osx64.tar.gz4dfb939f00b19f9f51888bd3487c513f...
bitcoin-0.19.99-riscv64-linux-gnu-debug.tar.gz0423de4e9fbfef2c480fd96b24d0e1d9...
bitcoin-0.19.99-riscv64-linux-gnu.tar.gze02b25cb7d7b5821cd1a551374b0d08e...
bitcoin-0.19.99-win64-debug.zipc641e3b2be613a67d81373a04bcc82e4...
bitcoin-0.19.99-win64-setup-unsigned.exe87f5a9bfa8033378d693b4601e1cab06...
bitcoin-0.19.99-win64.zip05ed69dc49af3e829d2cae1c3d38559a...
bitcoin-0.19.99-x86_64-linux-gnu-debug.tar.gzf3d3fd9ab39d0838fc979479a0f9e9f1...
bitcoin-0.19.99-x86_64-linux-gnu.tar.gz3462df0e2054965ac2079fea2ce8f8b7...
bitcoin-0.19.99.tar.gz1a678dea5e782769ecc10087fc82bbf0...
bitcoin-core-linux-0.20-res.yml58a813e8b9e2c8dfa7e707a4b014ba50...
bitcoin-core-osx-0.20-res.yml84c78b74a1d8d581303d4baeb0f82017...
bitcoin-core-win-0.20-res.yml9a2e8a0f61b627d1c0161a1eb41c5e9d...
linux-build.log07e746700e4809b9f977600a49bee0be...
osx-build.logd779bab7117f8e7fe5a63bd20c5396ad...
win-build.logGitian builds for commit 75a3c6727ff2dcc6bf542030fa9b0ee94233e605 (master and this pull):
c98c2760a79d5adc7da6958ce50e503e...
bitcoin-0.19.99-aarch64-linux-gnu-debug.tar.gz8c2ce7e6657eab20266b057d211c7b74...
bitcoin-0.19.99-aarch64-linux-gnu.tar.gze6233f0d62c02cd6c5cf9f62d16b21ba...
bitcoin-0.19.99-arm-linux-gnueabihf-debug.tar.gzcbef4827001c138381fcdd4db4bb9a6c...
bitcoin-0.19.99-arm-linux-gnueabihf.tar.gz91b6c840fa8a465cabe5539e9ead6c88...
bitcoin-0.19.99-i686-pc-linux-gnu-debug.tar.gzba525b6d9c4141f7c0c91a60eccdca7e...
bitcoin-0.19.99-i686-pc-linux-gnu.tar.gzb5380be1916945ed36c78cb671159081...
bitcoin-0.19.99-osx-unsigned.dmgc5c15e0b240656f499e29a38841c7044...
bitcoin-0.19.99-osx64.tar.gz5f55435a7c27c385f46f789207cadb60...
bitcoin-0.19.99-riscv64-linux-gnu-debug.tar.gzca1c18103fb0877da496026fcd13da87...
bitcoin-0.19.99-riscv64-linux-gnu.tar.gz0330e427fff6092dc4057a9361ab849a...
bitcoin-0.19.99-win64-debug.zipbb2bf8342a4c09bcaec86d4f3c14cee2...
bitcoin-0.19.99-win64-setup-unsigned.exe3223878569dac1b029b04d4eeccec7d6...
bitcoin-0.19.99-win64.zip6a5ba6a9c2b21196be0183ef23b72076...
bitcoin-0.19.99-x86_64-linux-gnu-debug.tar.gz3a01566e7d3a56f157bace42b58149f9...
bitcoin-0.19.99-x86_64-linux-gnu.tar.gz359b790ad2b4badbf90384d3c21b96ab...
bitcoin-0.19.99.tar.gz4f04d1373169e03fd19369e3cc2893f8...
bitcoin-core-linux-0.20-res.yml9391cff9539d3b5c1cd5f365a96f399b...
bitcoin-core-linux-0.20-res.yml.diff2464863774d1f29e98bcf57cc09763cd...
bitcoin-core-osx-0.20-res.yml2ff044442ec9d7a1d6bbc782062befd3...
bitcoin-core-osx-0.20-res.yml.diffb5c5061c71617b667512d504ee24c178...
bitcoin-core-win-0.20-res.yml5a78179b93f76aa91368280051f310ae...
bitcoin-core-win-0.20-res.yml.diffe4577617e3fa77dca31e274d1b6e14c6...
linux-build.log45a9ab8ff0a1ebf3f92fdcc45890fb7d...
linux-build.log.diff1cedcc592a830625201b4fa282cbd123...
osx-build.logd5f2c555195d9bb6edf1d6a4421e9851...
osx-build.log.diff58e6e553690ade4f14fd61890f4a65fe...
win-build.log0ee24d4b187a90d9116bc3f2fd8bfb5e...
win-build.log.diff
This was added in #9475 to fix LibreSSL compatibility for
BIP70, so is no longer required.
More info available from:
https://doc.qt.io/qt-5/ssl.html#enabling-and-disabling-ssl-support
This was originally added in #9366 to fix the gui build, as
Protobuf would also define these macros. Now that we're no-longer
using Protobuf, remove the additional check.
63@@ -67,15 +64,9 @@ class SendCoinsRecipient
64 CAmount amount;
65 // If from a payment request, this is used for storing the memo
66 QString message;
67-
68-#ifdef ENABLE_BIP70
69- // If from a payment request, paymentRequest.IsInitialized() will be true
70- PaymentRequestPlus paymentRequest;
71-#else
72 // If building with BIP70 is disabled, keep the payment request around as
47@@ -48,7 +48,6 @@ QString TransactionDesc::FormatTxStatus(const interfaces::WalletTx& wtx, const i
48 }
49 }
50
51-#ifndef ENABLE_BIP70
52 // Takes an encoded PaymentRequest as a string and tries to find the Common Name of the X.509 certificate
53 // used to sign the PaymentRequest.
54 bool GetPaymentRequestMerchant(const std::string& pr, QString& merchant)
ACK 8c6081a
Reviewed code, built and ran tests. Two nits but this works.
ACK 8c6081a884cd0969160955ce8687d4d4ed074db3
Signature:
0-----BEGIN PGP SIGNED MESSAGE-----
1Hash: SHA512
2
3ACK 8c6081a884cd0969160955ce8687d4d4ed074db3
4-----BEGIN PGP SIGNATURE-----
5
6iQGzBAEBCgAdFiEE+rVPoUahrI9sLGYTzit1aX5ppUgFAlwqrYAACgkQzit1aX5p
7pUjKSgv/exTwf/JSsLIdKgCml6kmBoF0kadbbWndiUR7azT5wlTQcWV/+c9McOxO
8clD0f1Sci5Fks1Dy9N5SIEoVpjh29CYSInYnbu3rQTagb4+DYi1kVtVgp0j7E1lD
9eHxTD4VJIbz1rdnseGs6xJA5KU8bkZekDrwIO4u7qRZWP4ikK2dwwf96MoMt42KI
10x7w6apQaSkyBjAxTVa665xOpV+PugO0CcdbMudVq3v8awC1ITrcRUH3Fp2egnuJn
11ithoI7FONpQH9+ipFxQ3KO0shJWYk45nw0EMATjBZO+Amhzif1gTJacbeozC6sZs
12u4jplY3sHH2pYlPdIhs3FAaHO1Cia/lwfV+k2GvXD/2Ym5qGX63ZhPYo483wghtO
133av1EsgdHdxx62TWgQChPi/5lC0DU/h5M+vnHQYE/bhzvViUrqPzyODG1NoBhKIE
14JoX5SWQE7XmvCrsjhbMS/91YevGUe61AFjUwx4ITyr3zh8VGH43YOc9BZRDOyvSC
15ZUO0vK0l
16=K4mK
17-----END PGP SIGNATURE-----
Timestamp of file with hash 962930a6f6f662ed694e7153800aef1dfae989ffe2d302c9f2c6c70952527e09 -
fanquake
emilengler
MarcoFalke
laanwj
practicalswift
hebasto
DrahtBot
theuni
jtimon
fjahr
Labels
GUI
Build system
Milestone
0.20.0