github ZL154/JellyfinSecurity v2.5.6.1
v2.5.6.1 - GeoIP loader fix (pre-release for #51)

latest releases: v2.5.20, v2.5.19, v2.5.18...
pre-releaseone month ago

v2.5.6.1 — Pre-release for issue #51 testing.

Single fix, published as a pre-release so the catalog stays on v2.5.6 stable while the reporter validates the GeoIP loader change. Not added to manifest.json — install manually if you want to test.

What's fixed

  • Issue #51 (Iperalex) — Security diagnostic showed GeoIP: Fail (ASN=False, Country=False) even with valid .mmdb files configured. The lazy-init in GeoIpService only fired inside Resolve(ip). DiagnosticsService checks AsnAvailable / CountryAvailable before anything calls Resolve, and SuspiciousLoginDetector short-circuits on !AsnAvailable && !CountryAvailable before calling Resolve. Result: the readers were never opened, the diagnostic stayed Fail forever, and the suspicious-login detector silently disabled itself.
  • Fix: the AsnAvailable / CountryAvailable getters now call ReloadIfConfigChanged() themselves, so any caller that checks availability also gets the first-touch load. ReloadIfConfigChanged is a no-op when paths haven't changed, so steady-state per-read cost is negligible.

How to test

  1. Download Jellyfin.Plugin.TwoFactorAuthv2.5.6.1.zip from this release.
  2. Stop Jellyfin or unload the plugin.
  3. Drop the new Jellyfin.Plugin.TwoFactorAuth.dll over the file in your existing Jellyfin Security_2.5.6.0/ folder.
  4. Restart Jellyfin.
  5. Open the plugin → Diagnostics tab. Expect: GeoIP: OK (ASN=True Country=True).
  6. If it still says Fail, container logs should show [2FA] Failed to open GeoLite2-ASN at <path> or similar — paste that into the issue.

Upgrade path

This is a pre-release. When v2.5.7 (or v2.5.6.2 stable) ships, it will bundle this fix and you should upgrade normally.

Don't miss a new JellyfinSecurity release

NewReleases is sending notifications on new releases.