def load_page(): return { 'firewall_rules': System.firewall_rules(), 'dmz_dnat_rules': System.nat_rules(), 'local_snat_rules': System.nat_rules(nat_type='SRCNAT'), 'netmasks': list(reversed(range(24, 33))) }
def load_page(): fw_rules = System.firewall_rules() nat_rules = System.nat_rules() netmasks = list(reversed(range(24, 33))) firewall_settings = { 'firewall_rules': fw_rules, 'nat_rules': nat_rules, 'netmasks': netmasks } return firewall_settings
def update_page(form): # initial input validation for presence of zone field zone = form.get('zone', None) if (zone not in valid_zones): return INVALID_FORM, 'GLOBAL_INTERFACE', None # if firewall rule, None will be used for evaluation. action = form.get('action', None) nat_type = form.get('nat_type', None) if (nat_type is None): error, zone = _firewall_rules(zone, action, form) elif (nat_type in ['DSTNAT', 'SRCNAT']): if (nat_type == 'DSTNAT'): error, zone = _dnat_rules(zone, action, form) elif (nat_type == 'SRCNAT'): error, zone = _snat_rules(zone, action, form) else: return INVALID_FORM, zone, None # updating page data then returning. this is because we need to serve the content with the newly added # configuration item. page_data = None if not error: page_data = { 'firewall_rules': System.firewall_rules(chain=zone), 'dmz_dnat_rules': System.nat_rules(), 'local_snat_rules': System.nat_rules(nat_type='SRCNAT'), 'netmasks': list(reversed(range(24, 33))) } print(f'RETURNING: {page_data}') return error, zone, page_data