def matches(self, value, includeParents=False, includeChildren=True):
value = value.lower()
if value is None or value == "":
return False
if netaddr.valid_ipv4(value):
# 1.1
if value in self.getAddresses():
return True
# 1.2
if self.targetType == "NETBLOCK_OWNER":
if netaddr.IPAddress(value) in netaddr.IPNetwork(self.targetValue):
return True
if self.targetType == "IP_ADDRESS":
if netaddr.IPAddress(value) in \
netaddr.IPNetwork(netaddr.IPAddress(self.targetValue)):
return True
else:
for name in self.getNames():
# 2.1
if value == name:
return True
# 2.2
if includeParents and name.endswith("." + value):
return True
# 2.3
if includeChildren and value.endswith("." + name):
return True
return None
# Class for SpiderFoot Events
评论列表
文章目录