Skip to content

Conversation

fanquake
Copy link
Member

@fanquake fanquake commented Jan 19, 2023

This class is the counterpart to CHashVerifier, in that it
writes data to an underlying source stream,
while keeping a hash of the written data.

Github-Pull: bitcoin#26909
Rebased-From: da6c7ae
The previous logic would call it once for serializing into the filestream,
and then again for serializing into the hasher. If AddrMan was changed
in between these calls by another thread, the resulting peers.dat would
be corrupt with non-matching checksum and data.
Fix this by using HashedSourceWriter, which writes the data
to the underlying stream and keeps track of the hash in one go.

Github-Pull: bitcoin#26909
Rebased-From: 5eabb61
@DrahtBot
Copy link
Contributor

DrahtBot commented Jan 19, 2023

The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

Reviews

See the guideline for information on the review process.

Type Reviewers
ACK instagibbs
Stale ACK MarcoFalke

If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.

@maflcko
Copy link
Member

maflcko commented Jan 19, 2023

ACK 412cd1a 👬

Show signature

Signature:

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

ACK 412cd1a34e035c1a2f35f4b4ac14eb192835950c 👬
-----BEGIN PGP SIGNATURE-----

iQGzBAEBCgAdFiEE+rVPoUahrI9sLGYTzit1aX5ppUgFAlwqrYAACgkQzit1aX5p
pUiz6gwAoNzijbCNloDVVJ7Ds33zFamQZr8PrN05T+q08mATepW9Hxr3vbd8vXbD
F6WDQFaXcnF5q/ULgDQBGFibXmxIkRiL+O/QN/4y0lDNxy/0xu/oSRyaWwhUPtHs
FAdpqrHOlqRhwfF1CBDrd/4V8feo5NfP1ehCBx5jwbasCjZ6J/lOStIPuxq7pU5k
xkoQZrb8OaKRQW4VsVRBJ72SQqrVC3dQu6zVGKxmFtaiOfzMUq1w95ZnWFF8bt32
wPZpsIvJRiNP1lwKx6tzi+9FfKWDgSZxgyGFxKfajEY9lkGgo5Q65JIrmWeZi8MO
Tzdx8x2fhcSJISqFFKL+Aoy6buGJjuuVxgMnmNUdALnNrmq9vmdJxZuOZoNTjfQB
587z6wqz/RSrulMahOnNP09kqXoZx273zV66pUiVwMt6cltjcNJh8cpywEKAYfEr
echfqkYbe/FvjoQm12i98vG9WqUrcYcbv9wtbPBFSGsWH61+Lf0JMXwAN/VToF3i
oHNy55Vn
=E5XQ
-----END PGP SIGNATURE-----

Additional include fixes are required to make the 23.x branch compile
using GCC 13.
@fanquake
Copy link
Member Author

Compiling 23.x (3987687) with GCC 13 requires additional include fixes to what is already backported, so I've added a commit with them.

fanquake added a commit to fanquake/bitcoin that referenced this pull request Jan 20, 2023
Additional include fixes are required to make the 23.x branch compile
using GCC 13.

Github-Pull: bitcoin#26921
Rebased-From: af86266
@instagibbs
Copy link
Member

Only extra commit/change is af86266

ACK 52376d9

@DrahtBot DrahtBot requested a review from maflcko February 16, 2023 15:23
@fanquake
Copy link
Member Author

Also merging this to unbreak the GCC 13 build.

@fanquake fanquake merged commit 0567787 into bitcoin:23.x Feb 16, 2023
@fanquake fanquake deleted the 23_2_backports branch February 16, 2023 16:02
jamesdorfman added a commit to jamesdorfman/elements that referenced this pull request Sep 25, 2023
@bitcoin bitcoin locked and limited conversation to collaborators Feb 16, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants