def debug_scan(): from scanner.scanner import Scanner s = Scanner(debug=True, add_users=True, remove_users=True, add_keys=True, remove_keys=True) results = s.scan()
def post(self): """Kick off a scan manually""" s = Scanner(debug=False, add_users=True, remove_users=True, add_keys=True, remove_keys=True) results = s.scan() return '', HTTP_STATUS.CREATED
def __init__(self, filename, src): self.file = token.File(filename) self.scanner = Scanner(self.file, src) self.pos = None self.tok = None self.lit = None self.next_token()
def capture(self): self.ids['camera'].play = False camera = self.ids['camera'] print(camera.size, Window.size) path_to_img = os.path.join( os.path.abspath('.'), "src/IMG_{}.png".format(time.strftime("%Y%m%d_%H%M%S"))) camera.export_to_png(path_to_img) print("Captured", path_to_img) Scanner().scan(path_to_img) self.layout.new_page(ContourPage(self.layout, path_to_img))
def main(): parser = argparse.ArgumentParser() parser.add_argument("-sT", "--tcp", action="store_true", help="TCP Connect scan") parser.add_argument("-sS", "--syn", action="store_true", help="TCP Syn scan") parser.add_argument("-sN", "--null", action="store_true", help="TCP Null scan") parser.add_argument("-sF", "--fin", action="store_true", help="TCP Fin scan") parser.add_argument("-sX", "--xmas", action="store_true", help="TCP XMas scan") parser.add_argument("-sA", "--ack", action="store_true", help="TCP Ack scan") parser.add_argument("-sU", "--udp", action="store_true", help="UDP scan") parser.add_argument("-p", "--ports", nargs="*") parser.add_argument("target") args = parser.parse_args(sys.argv[1:]) if args.ports and args.ports != "top": ports = utils.parse_ports(args.ports) else: ports = utils.get_top_ports(1000) scanner = Scanner(args.target, ports) if args.tcp: scanner.scan(technique="tcp") elif args.syn: scanner.scan(technique="syn") elif args.null: scanner.scan(technique="null") elif args.fin: scanner.scan(technique="fin") elif args.xmas: scanner.scan(technique="xmas") elif args.ack: scanner.scan(technique="ack") if args.udp: scanner.scan(technique="udp")
def build_scanner(path): start = DFANode(actions.error_gen) number_regex(start) id_regex(start) symbol_regex(start) comment_regex(start) whitespace_regex(start) language = Edge().include('0', '9').include('a', 'z').include('A', 'Z') \ .include('/').include('*') \ .include(':', '<').include(',').include('(', ')').include('[').include(']').include('{').include('}') \ .include('+').include('-').include('=') \ .include('\t', '\r').include(' ').include(chr(26)) return Scanner(start, BufferReader(path, 30), language)
def main(): scanner = Scanner( dfa_file=config.DFA_JSON_FILE, keywords_file=config.KEYWORDS_FILE, input_file=config.INPUT_FILE, errors_file=config.LEXICAL_ERRORS_FILE, tokens_file=config.TOKENS_FILE, symbols_file=config.SYMBOL_TABLE_FILE, ) parser = Parser( scanner=scanner, grammar_file=config.GRAMMAR_FILE, tree_file=config.TREE_FILE, errors_file=config.PARSER_ERRORS_FILE, code_file=config.INTERMEDIATE_CODE_FILE, ) parser.run() parser.dump_data()
def main(): print("\nStarting compiler...\n\n") file = None try: if len(sys.argv) > 1: file = open(sys.argv[1], 'r') else: file = open('tests/program.po', 'r') except IOError: print("Error: File does not appear to exist.") return scanner = Scanner(file) scanner.scan() tokens = scanner.tokens_list print(*tokens, sep='\n') print("\n") parser = LL1(tokens) parser.parse()
def run(source: str, interpreter: Interpreter) -> None: scanner = Scanner(source) scanner.scan_tokens() if scanner.had_error: print(f'Error scanning') return parser = Parser(scanner.tokens) statements = parser.parse() if parser.had_error: print(f'Error parsing') for err in parser.errors: parser_error_print(err, scanner.source_lines) else: resolve_statements(statements) try: interpreter.interpret(statements) except LoxRuntimeError as err: print(f'{err.msg}')
def main(argv): config_file = 'config/config.yml' parser = argparse.ArgumentParser() parser.add_argument( "-c", "--config", help="Override the default config file. By default: config/config.yml") args = parser.parse_args() if args.config: if os.access(args.config, os.R_OK): config_file = args.config else: print("ERROR: '", args.config, "' is not readable, please check the path") exit(0) # Init the scanner scanner = Scanner(config_path=config_file) # Start the scanner scanner.start_worker()
def setUp(self): self.file = open('tests/program-old.po', 'r') self.scanner = Scanner(self.file) self.scanner.scan() self.tokens = self.scanner.tokens_list self.parser = LL1(self.tokens)
from scanner.scanner import Scanner s = Scanner('/Users/amirhasan/desktop/compiler/project/compiler/input.txt') while True: t = s.next() if t: print(t) else: break
def main(location, verbose=False): scanner = Scanner(location, verbose=verbose) scanner.start()
import sys def merge_dicts(*dict_args): result = {} for dictionary in dict_args: result.update(dictionary) return result if __name__ == "__main__": source_code_path = None try: source_code_path = sys.argv[1] except IndexError as ie_e: raise ie_e print('ERROR: You must provide a file to scan as an argument to the interpreter') sys.exit() scanned_program = Scanner(source_code_path) print('Program Scanned.') parser = Parser(scanned_program) print('Program Parsed.') print(parser.postfix_list) interpreter_dict = merge_dicts( dict((v,k) for k,v in scanned_program.identifier_dict.items()), Grammar.flattenToValueKeyed() ) print(interpreter_dict)
def setUp(self): self.file = open('tests/program-old.po', 'r') self.scanner = Scanner(self.file)
def setUp(self) -> None: script = open(os.path.join("sample_lox", "every_symbol.lox"), 'r') self.scanner = Scanner(script.read()) script.close() self.expected_tokens = [] self.expected_tokens.append(Token(TokenType.FUN, "fun", None, 1)) self.expected_tokens.append( Token(TokenType.IDENTIFIER, "funcTest", None, 1)) self.expected_tokens.append(Token(TokenType.LEFT_PAREN, "(", None, 1)) self.expected_tokens.append(Token(TokenType.IDENTIFIER, "arg", None, 1)) self.expected_tokens.append(Token(TokenType.RIGHT_PAREN, ")", None, 1)) self.expected_tokens.append(Token(TokenType.LEFT_BRACE, "{", None, 1)) self.expected_tokens.append( Token(TokenType.IDENTIFIER, "math", None, 2)) self.expected_tokens.append(Token(TokenType.EQUAL, "=", None, 2)) self.expected_tokens.append(Token(TokenType.NUMBER, "5", 5, 2)) self.expected_tokens.append(Token(TokenType.MINUS, "-", None, 2)) self.expected_tokens.append(Token(TokenType.NUMBER, "5", 5, 2)) self.expected_tokens.append(Token(TokenType.PLUS, "+", None, 2)) self.expected_tokens.append(Token(TokenType.NUMBER, "5", 5, 2)) self.expected_tokens.append(Token(TokenType.STAR, "*", None, 2)) self.expected_tokens.append(Token(TokenType.NUMBER, "5", 5, 2)) self.expected_tokens.append(Token(TokenType.SLASH, "/", None, 2)) self.expected_tokens.append(Token(TokenType.NUMBER, "5", 5, 2)) self.expected_tokens.append(Token(TokenType.SEMICOLON, ";", None, 2)) self.expected_tokens.append(Token(TokenType.CLASS, "class", None, 3)) self.expected_tokens.append(Token(TokenType.IDENTIFIER, "c", None, 3)) self.expected_tokens.append(Token(TokenType.DOT, ".", None, 3)) self.expected_tokens.append( Token(TokenType.IDENTIFIER, "func", None, 3)) self.expected_tokens.append(Token(TokenType.NUMBER, "5", 5, 4)) self.expected_tokens.append(Token(TokenType.EQUAL, "=", None, 4)) self.expected_tokens.append(Token(TokenType.NUMBER, "5", 5, 4)) self.expected_tokens.append(Token(TokenType.BANG_EQUAL, "!=", None, 4)) self.expected_tokens.append(Token(TokenType.NUMBER, "6", 6, 4)) self.expected_tokens.append(Token(TokenType.EQUAL_EQUAL, "==", None, 4)) self.expected_tokens.append(Token(TokenType.NUMBER, "6", 6, 4)) self.expected_tokens.append(Token(TokenType.GREATER, ">", None, 4)) self.expected_tokens.append(Token(TokenType.NUMBER, "4", 4, 4)) self.expected_tokens.append( Token(TokenType.GREATER_EQUAL, ">=", None, 4)) self.expected_tokens.append(Token(TokenType.NUMBER, "4", 4, 4)) self.expected_tokens.append(Token(TokenType.LESS, "<", None, 4)) self.expected_tokens.append(Token(TokenType.NUMBER, "10", 10, 4)) self.expected_tokens.append(Token(TokenType.LESS_EQUAL, "<=", None, 4)) self.expected_tokens.append(Token(TokenType.NUMBER, "10", 10, 4)) self.expected_tokens.append(Token(TokenType.STRING, '"Str"', "Str", 5)) self.expected_tokens.append(Token(TokenType.AND, "and", None, 6)) self.expected_tokens.append(Token(TokenType.ELSE, "else", None, 6)) self.expected_tokens.append(Token(TokenType.FALSE, "false", None, 6)) self.expected_tokens.append(Token(TokenType.FOR, "for", None, 6)) self.expected_tokens.append(Token(TokenType.IF, "if", None, 6)) self.expected_tokens.append(Token(TokenType.NIL, "nil", None, 6)) self.expected_tokens.append(Token(TokenType.OR, "or", None, 6)) self.expected_tokens.append(Token(TokenType.PRINT, "print", None, 6)) self.expected_tokens.append(Token(TokenType.SUPER, "super", None, 6)) self.expected_tokens.append(Token(TokenType.THIS, "this", None, 6)) self.expected_tokens.append(Token(TokenType.TRUE, "true", None, 6)) self.expected_tokens.append(Token(TokenType.WHILE, "while", None, 6)) self.expected_tokens.append(Token(TokenType.RETURN, "return", None, 8)) self.expected_tokens.append(Token(TokenType.RIGHT_BRACE, "}", None, 9)) self.expected_tokens.append(Token(TokenType.EOF, "", None, 9))
import os import sys sys.path.insert(0, os.path.join(os.path.dirname(__file__), "..", "..", "lib")) from scanner.scanner import Scanner SPLUNK_HOME = os.environ.get('SPLUNK_HOME', '') LOG_PATH = os.path.join(SPLUNK_HOME, 'var', 'log', 'vulners-lookup') s = Scanner(log_level="DEBUG", log_path=LOG_PATH) s.run()