Process a batch of headers, once a sync via this mechanism has started
Declared in <headerssync.h>
ProcessingResult
ProcessNextHeaders(
std::span<CBlockHeader const> received_headers,
bool full_headers_message);
received_headers: headers that were received over the network for processing. Assumes the caller has already verified the headers are continuous, and has checked that each header satisfies the proof-of-work target included in the header (but not necessarily verified that the proof-of-work target is correct and passes consensus rules). full_headers_message: true if the message was at max capacity, indicating more headers may be available ProcessingResult.pow_validated_headers: will be filled in with any headers that the caller can fully process and validate now (because these returned headers are on a chain with sufficient work) ProcessingResult.success: set to false if an error is detected and the sync is aborted; true otherwise. ProcessingResult.request_more: if true, the caller is suggested to call NextHeadersRequestLocator and send a getheaders message using it.
The processing result, including any headers ready for validation.
| Name | Description |
|---|---|
| received_headers | Continuous headers received from the peer to process. |
| full_headers_message | True if the message was at max capacity (more may follow). |