from flask import Blueprint, request, jsonify, current_app from services.combocore.ncm import get_routes, derive_eth0_cidr_gw bp = Blueprint("cc_ncm_v1", __name__) @bp.post("/routes") def api_routes(): body = request.get_json(silent=True) or {} host = body.get("host", "").strip() if not host: return jsonify({"ok": False, "error": "host required"}), 400 cfg = current_app.config routes = get_routes(host, cfg["CORE_API_USER"], cfg["CORE_API_PASS"], cfg["VERIFY_SSL"], cfg["REQUEST_TIMEOUT"]) return jsonify({"ok": True, "routes": routes}) @bp.post("/oam") def api_oam_eth0(): body = request.get_json(silent=True) or {} host = body.get("host", "").strip() if not host: return jsonify({"ok": False, "error": "host required"}), 400 cfg = current_app.config routes = get_routes(host, cfg["CORE_API_USER"], cfg["CORE_API_PASS"], cfg["VERIFY_SSL"], cfg["REQUEST_TIMEOUT"]) cidr, gw = derive_eth0_cidr_gw(routes) return jsonify({"ok": True, "cidr": cidr, "gw": gw})