Skip to content

build: disable MPTCP listeners by default - #527

Open
ziggie1984 wants to merge 1 commit into
lightninglabs:masterfrom
ziggie1984:build-disable-mptcp
Open

ziggie1984 wants to merge 1 commit into
lightninglabs:masterfrom
ziggie1984:build-disable-mptcp

Conversation

@ziggie1984

Copy link
Copy Markdown

Change

Disable Go's automatic MPTCP listener support for poold. Pool does not
intentionally configure or depend on MPTCP, so this restores ordinary TCP
listeners while retaining an explicit operator opt-in through
GODEBUG=multipathtcp=1.

Go 1.24 and newer enable MPTCP listeners by default on supported Linux kernels.
MPTCP is a prerequisite for the Linux use-after-free path discussed in
lightningnetwork/lnd#11455
and mitigated for lnd in
lightningnetwork/lnd#11456.

Existing binaries

Operators can apply the same mitigation immediately, without rebuilding, by
starting poold with GODEBUG=multipathtcp=0 and restarting it. A patched kernel
is still required to fix the underlying kernel vulnerability; this change removes
the demonstrated MPTCP-listener prerequisite.

Validation

  • go mod tidy -diff
  • go test ./cmd/poold
  • verified multipathtcp=0 in poold's effective Go defaults

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.

2 participants