(value)
| 8330 | const sev = _LDAP_SEV_STYLE[f.severity] || 'text-gray-400'; |
| 8331 | return `<tr class="border-t border-slate-800 align-top"> |
| 8332 | <td class="px-2 py-1 ${sev} uppercase">${escapeHtml(f.severity || '')}</td> |
| 8333 | <td class="px-2 py-1 ${sev}">${escapeHtml(f.code || '')}</td> |
| 8334 | <td class="px-2 py-1 font-mono text-gray-400">${escapeHtml((f.src || '') + ' → ' + (f.dst || ''))}</td> |
| 8335 | <td class="px-2 py-1 text-gray-400 whitespace-normal">${escapeHtml(f.message || '')}</td> |
| 8336 | </tr>`; |
| 8337 | }).join('') + |
| 8338 | '</tbody></table>'; |
| 8339 | } else { |
| 8340 | html += '<p class="text-sm text-green-400/80">No findings — LDAP/AD traffic looks clean (or none seen on this segment).</p>'; |
| 8341 | } |
| 8342 | out.innerHTML = html; |
| 8343 | } catch (e) { |
| 8344 | out.innerHTML = '<p class="text-sm text-red-400">Failed: ' + escapeHtml(e.message) + '</p>'; |
| 8345 | } finally { |
| 8346 | _ndBusy(btn, false); |
| 8347 | } |
| 8348 | } |
no outgoing calls
no test coverage detected