Skip to content

ProtocolLib2PacketEvents v1.0.8 — Encryption Request Fix

Pre-release
Pre-release

Choose a tag to compare

@Namnarak Namnarak released this 12 Oct 18:02
e60fe2e

ProtocolLib2PacketEvents v1.0.8 — Premium Encryption Request Hotfix

Pre-release — authentication-sensitive: intended for the official PacketEvents 2.13.0 bridge and FastLoginPlus pre-login authentication on Leaf 1.21.11.

Fix

  • Fix NullPointerException: wrappper.bufferLock is null while FastLoginPlus sends LOGIN.SERVER.ENCRYPTION_REQUEST through ProtocolLib2PacketEvents. This previously caused Cannot send encryption packet. Falling back to cracked login.
  • PacketContainer(PacketType) uses constructor-free allocation; PacketEvents requires an initialized final bufferLock and registry holder. For the security-sensitive encryption request, use PacketEvents' own public constructor, setting shouldAuthenticate=true. For other synthesized packet wrappers, transfer mandatory per-instance runtime state from a normally initialized PacketWrapper (unique lock per packet).
  • Preserve v1.0.7's dedicated PacketEvents User + Channel transport for LOGIN_START. Does not disable FastLoginPlus, alter AuthMe policies or bypass Premium checks.

Build and verification

  • Commit: e60fe2e1ccdac4536e466c05112f18cba14c598e
  • GitHub Actions: https://github.com/CyoriaSMP-Team/ProtocolLib2PacketEvents/actions/runs/38287721460 — passed.
  • Local tests: 24 tests, 0 failed, 0 errors, 1 skipped; shaded JAR built successfully on Java 25.
  • Live CyoriaSMP Home Server deployment 2026-10-13: normal managed Minecraft restart, PacketEvents bridge enabled for 437 packet types, AuthMe 6.0.1 and FastLoginPlus detected each other, CyoriaCore 3.0.5 and 8/8 CYC modules enabled, server started successfully in 76.21s. No bufferLock exception during that startup.

Security validation still outstanding

The reported v1.0.7 exception was triggered by FishNet login, not on server startup. End-to-end legitimate Java Premium and Cracked logins, Bedrock/Floodgate cases, and session identity continuity must still be tested; no one should infer complete authentication correctness from a successful startup alone. Backups of P2P v1.0.7, FastLoginPlus/AuthMe config, and a consistent AuthMe DB snapshot are stored on the Home Server at /home/namkrub-home-server/Projects/Minecraft/P2P-BufferLock-Hotfix-20261013/rollback/.

Use a managed Minecraft restart to replace networking hooks; Bukkit /reload must not be used for this binary upgrade.