//! /debug/* handlers (only routed with --debug-api). use axum::{Json, extract::State, http::StatusCode}; use tracing::info; use crate::state::AppState; use crate::transport::firewall::FirewallRules; pub(crate) async fn get_debug_firewall(State(state): State) -> Json { Json(state.firewall.rules()) } pub(crate) async fn put_debug_firewall( State(state): State, Json(rules): Json, ) -> StatusCode { info!(inbound = ?rules.inbound, outbound = ?rules.outbound, "Firewall rules replaced"); state.firewall.set_rules(rules); StatusCode::NO_CONTENT }