-
Notifications
You must be signed in to change notification settings - Fork 37.8k
depends: Refresh ZeroMQ 4.3.1 patch #16927
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Some patch implementations can't handle fuzz / too much divergence from the original code. This just tweaks the context code around the patch so that less-sophisticated patch implementations (such as on Alpine Linux) can apply the patch without errors.
ACK 463a1d5 - Tested building zeromq in depends inside an Alpine container as well as on macOS. /bitcoin # make zeromq -C depends/
make: Entering directory '/bitcoin/depends'
Extracting zeromq...
/bitcoin/depends/sources/zeromq-4.3.1.tar.gz: OK
Preprocessing zeromq...
patching file src/windows.hpp
patching file src/thread.cpp
Hunk 2 FAILED 323/323.
#elif defined(ZMQ_HAVE_PTHREAD_SET_NAME)
pthread_set_name_np (descriptor, name_);
#endif
+#endif
+ return;
}
#endif
make: *** [funcs.mk:254: /bitcoin/depends/work/build/x86_64-pc-linux-gnu/zeromq/4.3.1-41472d87c95/.stamp_preprocessed] Error 1
make: Leaving directory '/bitcoin/depends'
/bitcoin # git fetch origin pull/16927/head:16927
remote: Enumerating objects: 5, done.
remote: Counting objects: 100% (5/5), done.
remote: Total 6 (delta 5), reused 5 (delta 5), pack-reused 1
Unpacking objects: 100% (6/6), done.
From https://github.com/bitcoin/bitcoin
* [new ref] refs/pull/16927/head -> 16927
/bitcoin # git checkout 16927
Switched to branch '16927'
/bitcoin # make zeromq -C depends/
make: Entering directory '/bitcoin/depends'
Extracting zeromq...
/bitcoin/depends/sources/zeromq-4.3.1.tar.gz: OK
Preprocessing zeromq...
patching file src/windows.hpp
patching file src/thread.cpp
Configuring zeromq...
checking for a BSD-compatible install... /usr/bin/install -c
....
Postprocessing zeromq...
Caching zeromq...
make: Leaving directory '/bitcoin/depends' |
Gitian builds for commit f8b0b19 (master):
Gitian builds for commit bbddbbf (master and this pull):
|
Ah, thanks for the info. I didn't realize it was as easy as using apk to install GNU patch. I wouldn't have opened if I had known, but at this point it probably won't hurt to shore up the patch since this is already in-progress. |
I think we should make sure that depends in travis uses a non-GNU patch, before merging this (if we decide that depends should support this). Otherwise this will come around and around again because the people bumping the versions are not going to test this obscure case. |
Going to merge this (to have it not miss 0.19 split-off), but reluctantly: I hope a check for this will be integrated into a CI at some point. |
463a1d5 Refresh ZeroMQ 4.3.1 patch (Nathan Marley) Pull request description: Currently in Alpine Linux (latest, 3.10) in the depends system, one of the ZeroMQ patches won't apply cleanly because the context around the patch has changed and Alpine's `patch` implementation can't handle the diff. Some patch implementations can't handle fuzz / too much divergence from the original code. This PR just tweaks the context code around the patch so that less-sophisticated patch implementations (such as on Alpine Linux) can apply the patch without errors. This partially fixes #16925 ACKs for top commit: fanquake: ACK 463a1d5 - Tested building zeromq in depends inside an [Alpine container](https://github.com/fanquake/core-review/blob/master/docker/alpine.dockerfile) as well as on macOS. Tree-SHA512: d6e3cb60835cdd090b9b864ca9cb33961687606bc9184fbbeb7a54ec23db4057b9317b65c5c276fb8c5492cb3cfcc4a7f3369f049551f4eb0915db971f2290ce
@laanwj Thanks for merging. I was going to ask how this could be accomplished but I see it's been addressed by adding busybox in another PR. 😄 |
463a1d5 Refresh ZeroMQ 4.3.1 patch (Nathan Marley) Pull request description: Currently in Alpine Linux (latest, 3.10) in the depends system, one of the ZeroMQ patches won't apply cleanly because the context around the patch has changed and Alpine's `patch` implementation can't handle the diff. Some patch implementations can't handle fuzz / too much divergence from the original code. This PR just tweaks the context code around the patch so that less-sophisticated patch implementations (such as on Alpine Linux) can apply the patch without errors. This partially fixes bitcoin#16925 ACKs for top commit: fanquake: ACK 463a1d5 - Tested building zeromq in depends inside an [Alpine container](https://github.com/fanquake/core-review/blob/master/docker/alpine.dockerfile) as well as on macOS. Tree-SHA512: d6e3cb60835cdd090b9b864ca9cb33961687606bc9184fbbeb7a54ec23db4057b9317b65c5c276fb8c5492cb3cfcc4a7f3369f049551f4eb0915db971f2290ce
ddddd89 ci: Use busybox utils for one build (MarcoFalke) Pull request description: To make sure Bitcoin Core can be built with BusyBox, see #16927 (comment) ACKs for top commit: laanwj: ACK ddddd89 Tree-SHA512: da3a4654ee7975206d04643675d309b4973a510ca344acaec97fb1ed19c43cf13489bdf236c92c4a90499ec5b3c18c3338fff096110b26abee5ffe955089f267
ddddd89 ci: Use busybox utils for one build (MarcoFalke) Pull request description: To make sure Bitcoin Core can be built with BusyBox, see bitcoin#16927 (comment) ACKs for top commit: laanwj: ACK ddddd89 Tree-SHA512: da3a4654ee7975206d04643675d309b4973a510ca344acaec97fb1ed19c43cf13489bdf236c92c4a90499ec5b3c18c3338fff096110b26abee5ffe955089f267
Summary: From [[bitcoin/bitcoin#15188 | PR15188]]: ``` Addresses https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-6250 ``` From [[bitcoin/bitcoin#16927 | PR16927]]: ``` Currently in Alpine Linux (latest, 3.10) in the depends system, one of the ZeroMQ patches won't apply cleanly because the context around the patch has changed and Alpine's patch implementation can't handle the diff. Some patch implementations can't handle fuzz / too much divergence from the original code. This PR just tweaks the context code around the patch so that less-sophisticated patch implementations (such as on Alpine Linux) can apply the patch without errors. ``` Backport of core [[bitcoin/bitcoin#15188 | PR15188]] and [[bitcoin/bitcoin#16927 | PR16927]]. Depends on D5603. Test Plan: Run the Gitian builds. Reviewers: #bitcoin_abc, deadalnix Reviewed By: #bitcoin_abc, deadalnix Differential Revision: https://reviews.bitcoinabc.org/D5607
Summary: From [[bitcoin/bitcoin#15188 | PR15188]]: ``` Addresses https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-6250 ``` From [[bitcoin/bitcoin#16927 | PR16927]]: ``` Currently in Alpine Linux (latest, 3.10) in the depends system, one of the ZeroMQ patches won't apply cleanly because the context around the patch has changed and Alpine's patch implementation can't handle the diff. Some patch implementations can't handle fuzz / too much divergence from the original code. This PR just tweaks the context code around the patch so that less-sophisticated patch implementations (such as on Alpine Linux) can apply the patch without errors. ``` Backport of core [[bitcoin/bitcoin#15188 | PR15188]] and [[bitcoin/bitcoin#16927 | PR16927]]. Depends on D5603. Test Plan: Run the Gitian builds. Reviewers: #bitcoin_abc, deadalnix Reviewed By: #bitcoin_abc, deadalnix Differential Revision: https://reviews.bitcoinabc.org/D5607
Currently in Alpine Linux (latest, 3.10) in the depends system, one of the ZeroMQ patches won't apply cleanly because the context around the patch has changed and Alpine's
patch
implementation can't handle the diff.Some patch implementations can't handle fuzz / too much divergence from the original code.
This PR just tweaks the context code around the patch so that less-sophisticated patch implementations (such as on Alpine Linux) can apply the patch without errors.
This partially fixes #16925