Skip to content

Vendors: pin MafiaNet v0.17.0 for in-session MTU black-hole recovery - #269

Merged
Segfaultd merged 1 commit into
developfrom
chore/mafianet-0.17.0
Sep 1, 2026
Merged

Vendors: pin MafiaNet v0.17.0 for in-session MTU black-hole recovery#269
Segfaultd merged 1 commit into
developfrom
chore/mafianet-0.17.0

Conversation

@Segfaultd

@Segfaultd Segfaultd commented Sep 1, 2026

Copy link
Copy Markdown
Member

Bumps the MafiaNet pin from v0.16.0 (667fa4e9) to v0.17.0 (9b0e240c).

v0.16.0's 1400-byte MTU cap fixed tunnelled players on paths the handshake can probe; v0.17.0 adds the deferred follow-up for the ones it can't: a tunnel that black-holes large datagrams on the return path only (OpenVPN's defaults do exactly this — no UDP fragmentation, direction-asymmetric drops, OpenVPN/openvpn#823), or a path that shrinks mid-session. The reliability layer now detects the black-hole signature, steps the connection's MTU down the handshake's own ladder, and re-splits every queued message that no longer fits — instead of resending the same too-large datagram until the connection times out. Ordinary packet loss can never trigger a step-down.

Wire-compatible: RAKNET_PROTOCOL_VERSION stays at 7, no message ids move, and the split/reassembly wire format is unchanged (the new bookkeeping is sender-side only), so mixed 0.15/0.16/0.17 peers interoperate and a server-side bump helps players who have not updated. Release notes: https://github.com/MafiaHub/MafiaNet/releases/tag/v0.17.0

Verified locally: a reconfigure fetches the pinned commit and MafiaNetStatic, Framework, and FrameworkServer all build clean against it.

Summary by CodeRabbit

  • Updates
    • Updated the bundled MafiaNet networking component to version 0.17.0.
    • Maintained compatibility with the existing network protocol.
    • Improved in-session detection of network MTU black-hole conditions.

@coderabbitai

coderabbitai Bot commented Sep 1, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Team

Run ID: b013c706-acd9-43da-a7fe-1c3ff8f72886

📥 Commits

Reviewing files that changed from the base of the PR and between a97cefe and 92e5120.

📒 Files selected for processing (1)
  • cmake/MafiaNetPin.cmake

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.


Walkthrough

The CMake MafiaNet dependency pin changes from v0.16.0 to v0.17.0. The release comment changes to describe in-session MTU black-hole detection. RAKNET protocol version 7 compatibility remains.

Changes

MafiaNet dependency update

Layer / File(s) Summary
Update MafiaNet pin
cmake/MafiaNetPin.cmake
The pinned commit changes to v0.17.0. The comment changes to “in-session MTU black-hole detection”.

Estimated code review effort: 1 (Trivial) | ~2 minutes

Merge Risk: ⚪ Minimal · up to 92e51

This updates MafiaNet to provide in-session MTU black-hole recovery without changing the wire protocol or message format. The change is localized and no actionable merge-blocking risk remains after normal checks and review.

Poem

A rabbit checks the CMake line
The newer pin now fits just fine
MTU shadows learn to flee
Protocol seven stays in key
Hop, hop, the build moves cleanly crescentine

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly identifies the vendor dependency update to MafiaNet v0.17.0 and its in-session MTU black-hole recovery purpose.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage

Explanation

No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0 files. (1 skipped: 1 unsupported.)

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/mafianet-0.17.0

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@Segfaultd
Segfaultd merged commit 341eab4 into develop Sep 1, 2026
6 checks passed
@Segfaultd
Segfaultd deleted the chore/mafianet-0.17.0 branch September 1, 2026 09:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants