github etclabscore/core-geth v1.12.23
Argos (v1.12.23)

2 hours ago

P2P message handling

Backports go-ethereum's delayed p2p message decoding (#33835) and its follow-up fixes. Protocol handlers no longer decode a message into its full object form on arrival: messages carry their lists encoded, item counts and content are checked before anything is materialised, and responses are matched against an outstanding request first. Block bodies and receipts are verified against their header roots in wire form.

This supersedes the pre-decode validation added in v1.12.22 with the upstream implementation.

Upstream changes included: #30918, #32210, #33755, #33803, #33818, #33834, #33835, #33840, #33841, #33940, #34745, #34787, #34870, #34976, #35289.

Two changes are specific to this tree, since upstream no longer carries the code they apply to:

  • Propagated block messages (NewBlockMsg) get the same treatment as the rest. Upstream's series does not reach this message because post-merge geth no longer handles it.
  • The AccountRange response item limit added in v1.12.22 was derived from an unrelated constant and could reject responses that should be accepted. It is now derived from the request tracker's own byte bound.

Also in this release

These landed on master after v1.12.22 was tagged and ship for the first time here:

  • MintMe hardfork (#651) — enables PUSH0 and MCOPY at block 8784700 on the MintMe chain.
  • Dropped support for the goerli network (#653).
  • Removed unresponsive bootnodes (#616).
  • Updated GitHub Actions artifact handling to v4 (#654).

Upgrade notes

No consensus changes for Ethereum Classic or Mordor. The MintMe hardfork above affects only the MintMe chain configuration.

Recommended for all node operators, and particularly for nodes with a high volume of inbound p2p connections. This is a drop-in replacement for v1.12.22.

Don't miss a new core-geth release

NewReleases is sending notifications on new releases.