from connexion import NoContent
from flask import Flask, request, Response
from jsonschema import validate
-from var_declaration import policy_instances, policy_types, policy_status, policy_fingerprint, forced_settings
+from var_declaration import policy_instances, policy_types, policy_status, policy_fingerprint, forced_settings, hosts_set
from utils import calcFingerprint
-from maincommon import *
+from maincommon import extract_host_name
# API Function: Health check
def get_healthcheck():
+ extract_host_name(hosts_set, request)
+
if ((r := check_modified_response()) is not None):
return r
# API Function: Get all policy type ids
def get_all_policy_types():
+ extract_host_name(hosts_set, request)
+
if ((r := check_modified_response()) is not None):
return r
- return (list(policy_instances.keys()), 200)
+ res = list(policy_instances.keys())
+ res = list(map(int, res))
+ return (res, 200)
# API Function: Get a policy type
def get_policy_type(policy_type_id):
+ extract_host_name(hosts_set, request)
+
if ((r := check_modified_response()) is not None):
return r
# API Function: Delete a policy type
def delete_policy_type(policy_type_id):
+ extract_host_name(hosts_set, request)
+
if ((r := check_modified_response()) is not None):
return r
# API Function: Create a policy type
def create_policy_type(policy_type_id):
+ extract_host_name(hosts_set, request)
+
if ((r := check_modified_response()) is not None):
return r
+ try:
+ val=int(policy_type_id)
+ except:
+ return Response("The policy type id is not an int", 400, mimetype='text/plain')
+
policy_type_id=str(policy_type_id)
if (policy_type_id in policy_instances.keys()):
# API Function: Get all policy ids for a type
def get_all_policy_identities(policy_type_id):
+ extract_host_name(hosts_set, request)
+
if ((r := check_modified_response()) is not None):
return r
# API Function: Get a policy instance
def get_policy_instance(policy_type_id, policy_instance_id):
+ extract_host_name(hosts_set, request)
+
if ((r := check_modified_response()) is not None):
return r
# API function: Delete a policy
def delete_policy_instance(policy_type_id, policy_instance_id):
+ extract_host_name(hosts_set, request)
+
if ((r := check_modified_response()) is not None):
return r
# API function: Create/update a policy
def create_or_replace_policy_instance(policy_type_id, policy_instance_id):
+ extract_host_name(hosts_set, request)
+
if ((r := check_modified_response()) is not None):
return r
# API function: Get policy status
def get_policy_instance_status(policy_type_id, policy_instance_id):
+ extract_host_name(hosts_set, request)
+
if ((r := check_modified_response()) is not None):
return r