add 'ignore' to the config

This commit is contained in:
Evgeny Zinoviev 2021-12-28 01:13:47 +03:00
parent 91177bcf42
commit 37ec4be9af
3 changed files with 5 additions and 5 deletions

View File

@ -7,7 +7,7 @@ logger = logging.getLogger(__name__)
class Worker(Thread):
def __init__(self, name, host, opened=None, concurrency=None, timeout=None):
def __init__(self, name, host, opened=None, ignore=None, concurrency=None, timeout=None):
Thread.__init__(self)
assert concurrency is not None
@ -16,6 +16,7 @@ class Worker(Thread):
self.name = name
self.concurrency = concurrency
self.opened = opened
self.ignore = ignore
scanner_kw = {}
if timeout is not None:
@ -32,7 +33,7 @@ class Worker(Thread):
return self.scanner.results
def is_expected(self, port):
return (self.opened is not None) and (port in self.opened)
return ((self.opened is not None) and (port in self.opened)) or ((self.ignore is not None) and (port in self.ignore))
def get_host(self):
return self.scanner.host

View File

@ -18,7 +18,7 @@ if __name__ == '__main__':
level=(logging.DEBUG if args.verbose else logging.INFO))
results = Results()
worker = Worker(args.host, args.host, [],
worker = Worker(args.host, args.host, [], [],
concurrency=args.threads,
timeout=args.timeout)
worker.start()

View File

@ -3,7 +3,6 @@ import logging
import yaml
import math
from pprint import pprint
from argparse import ArgumentParser
from lib.worker import Worker
from lib.results import Results
@ -54,7 +53,7 @@ def main():
workers = []
for name, data in config['servers'].items():
w = Worker(name, data['host'], data['opened'],
w = Worker(name, data['host'], data['opened'], data['ignore'],
concurrency=int(data['concurrency']) if 'concurrency' in data else args.concurrency,
timeout=int(data['timeout']) if 'timeout' in data else args.timeout)
workers.append(w)