Skip to content

build: Go 1.27.3 (CVE-2026-111943) - #14

Closed
Kilombino wants to merge 1 commit into
paulscode:blake2b-nextfrom
Kilombino:go-1.27.3
Closed

Kilombino wants to merge 1 commit into
paulscode:blake2b-nextfrom
Kilombino:go-1.27.3

Conversation

@Kilombino

Copy link
Copy Markdown

Upstream lnd v0.21.5-beta.rc1 is built with Go 1.27.3 because of CVE-2026-111943 (golang/go#82345): Go's crypto/x509 now rejects certificate chains through a set of compromised intermediates. Binaries built with 1.27.2 still trust them, which matters for every outbound HTTPS call the node makes: fee.url and the bridge's price sources.

This cherry-picks upstream's toolchain bump (6389391) onto blake2b-next:

  • release/CI/Docker toolchain 1.27.2 → 1.27.3 everywhere make check-go-version looks (Makefile, Dockerfiles, workflows incl. fork.yml, .golangci.yml, lnrpc, tools, mobile docs);
  • go.mod language version 1.26.8 → 1.26.10 in all modules, as upstream;
  • scripts/native-ubuntu.sh: Go 1.27.3 with the official linux-amd64/arm64 SHA-256 from go.dev.

Conflicts were only the version strings (the fork was on 1.27.2, upstream on 1.27.1); the fork's own content in those files is kept. ./cmd/lnd builds with Go 1.27.3 (go version lnd → go1.27.3).

Not included: the rest of v0.21.5 (revocation validation order, TLV decoder allocations, fee.url ceiling, commit fee floor). A trial merge conflicts in lnwallet/channel.go, htlcswitch/link.go, peer/brontide.go and rpcserver.go, so it's better merged by you when v0.21.5 is final. Happy to help with it.

Keep lnd compatible with the previous stable Go release by updating the language version in every tracked go.mod file to Go 1.26.10.

Move build and release tooling to Go 1.27.3, including CI, Docker images, the Makefile, protobuf generation, the linter configuration, and mobile build documentation. Update the installation documentation and official Linux archive checksums for Go 1.26.10 as well.

(cherry picked from commit d67c9ed)
(cherry picked from commit 6389391)
@paulscode

Copy link
Copy Markdown
Owner

Thanks, merged by hand as b6c4f6a on blake2b-next (the merge button needs a workflow permission my token doesn't have, since the PR touches .github/workflows). The Fork checks failure was a test flake, not the bump: TestLinkHeldBounded/too_many floods 1001 held messages, the mailbox also caps at 1000, and on a busy runner its cap disconnects the peer first through a path the test's mock ignored. That's fixed in ace886e. The checksums match go.dev, and the full fork.yml job passes under 1.27.3. This ships as 0.21.4-beta-blake2b.21.1.

@paulscode paulscode closed this Oct 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants