refactor: route agent wifi clients through generic proxy

Removes the one-off proxy_wifi_clients route and the dead getApiBase()
helper; the allowlisted passthrough now covers agent wifi traffic.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
James Smith
2026-06-11 17:43:16 +01:00
parent c870f118bf
commit 67847eb708
2 changed files with 1 additions and 28 deletions
-17
View File
@@ -529,23 +529,6 @@ def proxy_passthrough(agent_id: int, subpath: str):
return api_error(f"Agent error: {e}", 502)
@controller_bp.route("/agents/<int:agent_id>/wifi/v2/clients", methods=["GET"])
def proxy_wifi_clients(agent_id: int):
"""Get the WiFi client list from a remote agent."""
agent = get_agent(agent_id)
if not agent:
return api_error("Agent not found", 404)
try:
client = create_client_from_agent(agent)
result = client.get("/wifi/v2/clients", params=request.args.to_dict())
return jsonify({"status": "success", "agent_id": agent_id, "result": result})
except (AgentHTTPError, AgentConnectionError) as e:
return api_error(f"Agent error: {e}", 502)
@controller_bp.route("/agents/<int:agent_id>/wifi/monitor", methods=["POST"])
def proxy_wifi_monitor(agent_id: int):
"""Toggle monitor mode on a remote agent's WiFi interface."""
+1 -11
View File
@@ -32,16 +32,6 @@ const WiFiMode = (function() {
// Agent Support
// ==========================================================================
/**
* Get the API base URL, routing through agent proxy if agent is selected.
*/
function getApiBase() {
if (typeof currentAgent !== 'undefined' && currentAgent !== 'local') {
return `/controller/agents/${currentAgent}/wifi/v2`;
}
return CONFIG.apiBase;
}
/**
* Get the current agent name for tagging data.
*/
@@ -1353,7 +1343,7 @@ const WiFiMode = (function() {
if (isAgentMode) {
// Route through agent proxy
response = await fetch(`/controller/agents/${currentAgent}/wifi/v2/clients?bssid=${encodeURIComponent(bssid)}&associated=true`);
response = await fetch(`/controller/agents/${currentAgent}/proxy/wifi/v2/clients?bssid=${encodeURIComponent(bssid)}&associated=true`);
} else {
response = await fetch(`${CONFIG.apiBase}/clients?bssid=${encodeURIComponent(bssid)}&associated=true`);
}