Skip to content

Commit 2ef3edc

Browse files
authored
Add files via upload
1 parent 69522d3 commit 2ef3edc

1 file changed

Lines changed: 30 additions & 8 deletions

File tree

PacketFilter.py

Lines changed: 30 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
11

22
class PacketFilter():
33

4-
def __init__(self, ip_whitelist_filter=[], ip_blacklist_filter=[], IPv4=False, TCP=False, UDP=False, ICMP=False):
4+
def __init__(self, ip_whitelist_filter=[], ip_blacklist_filter=[], IPv4=False, TCP=False, UDP=False, ICMP=False, DNS=False):
55
self.ip_whitelist_filter = ip_whitelist_filter
66
self.ip_blacklist_filter = ip_blacklist_filter
77
self.IPv4 = IPv4
88
self.TCP = TCP
99
self.UDP = UDP
1010
self.ICMP = ICMP
11-
filters = [self.IPv4, self.TCP, self.UDP, self.ICMP]
11+
self.DNS = DNS
12+
filters = [self.IPv4, self.TCP, self.UDP, self.ICMP, self.DNS]
1213
assert sum(filters) <= 1, "You have to set just one protocol filter."
1314
if(len(self.ip_whitelist_filter) > 0 or len(self.ip_blacklist_filter) > 0):
1415
self.set_IPv4_filter(True)
@@ -59,24 +60,39 @@ def TCP_filter(pkt):
5960
else:
6061
return False
6162

63+
def DNS_filter(pkt):
64+
if(pkt.haslayer("DNS")):
65+
return True
66+
else:
67+
return False
68+
6269
def ICMP_filter(pkt):
6370
if(pkt.haslayer("ICMP")):
6471
return True
6572
else:
6673
return False
6774

6875
if(self.get_IPv4_filter() is True):
69-
results.append(IPv4_filter(pkt))
76+
res = IPv4_filter(pkt)
77+
results.append(res)
7078
if(len(self.get_ip_blacklist_filter()) > 0):
71-
results.append(ip_blacklist_filter(pkt, self.get_ip_blacklist_filter()))
79+
res = ip_blacklist_filter(pkt, self.get_ip_blacklist_filter())
80+
results.append(res)
7281
if(len(self.get_ip_whitelist_filter()) > 0):
73-
results.append(ip_whitelist_filter(pkt, self.get_ip_whitelist_filter()))
82+
res = ip_whitelist_filter(pkt, self.get_ip_whitelist_filter())
83+
results.append(res)
7484
if(self.get_TCP_filter() is True):
75-
results.append(TCP_filter(pkt))
85+
res = TCP_filter(pkt)
86+
results.append(res)
7687
if(self.get_UDP_filter() is True):
77-
results.append(UDP_filter(pkt))
88+
res = UDP_filter(pkt)
89+
results.append(res)
7890
if(self.get_ICMP_filter() is True):
79-
results.append(ICMP_filter(pkt))
91+
res = ICMP_filter(pkt)
92+
results.append(res)
93+
if(self.get_DNS_filter() is True):
94+
res = DNS_filter(pkt)
95+
results.append(res)
8096
if(False in results):
8197
return False
8298
else:
@@ -113,6 +129,12 @@ def set_ICMP_filter(self, val):
113129
def get_ICMP_filter(self):
114130
return self.ICMP
115131

132+
def set_DNS_filter(self, val):
133+
self.DNS = val
134+
135+
def get_DNS_filter(self):
136+
return self.DNS
137+
116138
def get_ip_whitelist_filter(self):
117139
return self.ip_whitelist_filter
118140

0 commit comments

Comments
 (0)