From ce0ee859d670008ba00075c995adf22ead89ace3 Mon Sep 17 00:00:00 2001 From: Erdnusschokolade <96622762+Erdnusschokolade@users.noreply.github.com> Date: Thu, 21 May 2026 19:36:17 +0200 Subject: [PATCH] Fix: Untagged Ports column included non-member ports The hardware bitmask format encodes both "untagged members" and "non-members" in the upper 10 bits (per doc/vlan.md). The existing fetchVLAN() correctly masks this with the membership bitmask before display, but loadVlanTable() did not, causing non-member ports to appear in the Untagged Ports column. Tested on KeepLiNK KP-9000-6XH-X. --- html/vlan.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/html/vlan.js b/html/vlan.js index 245b7e6..d0288ca 100644 --- a/html/vlan.js +++ b/html/vlan.js @@ -119,7 +119,7 @@ async function loadVlanTable() { var s = await vresp.json(); var m = parseInt(s.members, 16); var members = m & 0x3FF; - var untag = (m >> 10) & 0x3FF; + var untag = ((m >> 10) & 0x3FF) & members; var tagged = members & ~untag; var pvid = parseInt(s.pvid, 16) & 0x3FF; var tr = document.createElement('tr');