901 - added ACL list to observations.py as its own observation space with the ACL attributes and the position of the ACL rule in the ACL list, added ImplicitFirewallRule to enums.py and added acl_implicit_rule, max_acl_list to primaite_env.py

This commit is contained in:
SunilSamra
2023-06-09 15:17:20 +01:00
parent 7382ed26b3
commit afc133cbc5
4 changed files with 105 additions and 4 deletions

View File

@@ -77,7 +77,7 @@ class AccessControlList:
# If there has been no rule to allow the IER through, it will return a blocked signal by default
return True
def add_rule(self, _permission, _source_ip, _dest_ip, _protocol, _port):
def add_rule(self, _permission, _source_ip, _dest_ip, _protocol, _port, _position):
"""
Adds a new rule.
@@ -87,10 +87,10 @@ class AccessControlList:
_dest_ip: the destination IP address
_protocol: the protocol
_port: the port
_position: position to insert ACL rule into ACL list
"""
new_rule = ACLRule(_permission, _source_ip, _dest_ip, _protocol, str(_port))
hash_value = hash(new_rule)
self.acl[hash_value] = new_rule
self.acl.insert(_position, new_rule)
def remove_rule(self, _permission, _source_ip, _dest_ip, _protocol, _port):
"""