Beispiel #1
0
def run(fn):
    ctx = {'exit_code': 0}

    @_o
    def _run_async(ctx):
        try:
            yield fn()
        except Exception:
            traceback.print_exc(file=sys.stdout)
            ctx['exit_code'] = 1
        finally:
            eventloop.halt()

    launch(_run_async, ctx)
    eventloop.run()
    sys.exit(ctx['exit_code'])
Beispiel #2
0
    def __init__(self):
        self.handler = ProxyHandler(*getORPort())

        self.supportedTransports = {
            'dummy': DummyServer,
            'rot13': Rot13Server,
            'dust': DustServer,
            'obfs3': Obfs3Server,
            }

        matchedTransports = init(self.supportedTransports)
        for transport in matchedTransports:
            try:
                self.launchServer(transport, 1051)
                reportSuccess(transport, ('127.0.0.1', 1051), None)
            except TransportLaunchException:
                reportFailure(transport, 'Failed to launch')
        reportEnd()

        eventloop.run()
Beispiel #3
0
    def __init__(self):
        self.handler = SocksHandler()

        self.supportedTransports = {
            "dummy": DummyClient,
            "rot13": Rot13Client,
            "dust": DustClient,
            "obfs3": Obfs3Client,
        }

        matchedTransports = init(self.supportedTransports.keys())
        for transport in matchedTransports:
            try:
                logging.error("Launching %s" % transport)
                self.launchClient(transport, 8182)
                reportSuccess(transport, 5, ("127.0.0.1", 8182), None, None)
            except TransportLaunchException:
                reportFailure(transport, "Failed to launch")
        reportEnd()

        eventloop.run()
Beispiel #4
0
    def __init__(self):
        self.handler = SocksHandler()

        self.supportedTransports = {
            'dummy': DummyClient,
            'rot13': Rot13Client,
            'dust': DustClient,
            'obfs3': Obfs3Client,
        }

        matchedTransports = init(self.supportedTransports.keys())
        for transport in matchedTransports:
            try:
                logging.error('Launching %s' % transport)
                self.launchClient(transport, 8182)
                reportSuccess(transport, 5, ('127.0.0.1', 8182), None, None)
            except TransportLaunchException:
                reportFailure(transport, 'Failed to launch')
        reportEnd()

        eventloop.run()
Beispiel #5
0

@_o
def handle_socksDust(conn):
    print('connection')
    client = Client()
    yield client.connect('blanu.net', 7051)

    coder = yield handshake(client)

    monocle.launch(pump, conn, client, coder.encrypt)
    yield pump(client, conn, coder.decrypt)


@_o
def handshake(conn):
    ekeypair = createEphemeralKeypair()

    yield conn.write(ekeypair.public.bytes)
    epub = yield conn.read(KEY_SIZE)

    esession = makeEphemeralSession(ekeypair, epub)

    coder = lite_socket(esession)

    yield Return(coder)


add_service(Service(handle_socksDust, port=7050))
eventloop.run()
Beispiel #6
0
 def proc_wrapper():
     eventloop.queue_task(0, target, *args, **kwargs)
     eventloop.run()
Beispiel #7
0
import sys

import monocle
from monocle import _o, Return
monocle.init(sys.argv[1])

from monocle.stack import eventloop
from monocle.stack.network import add_service
from monocle.stack.network.http import HttpHeaders, HttpServer


@_o
def hello_http(req):
    content = "Hello, World!"
    headers = HttpHeaders()
    headers.add('Content-Length', len(content))
    headers.add('Content-Type', 'text/plain')
    headers.add('Connection', 'close')
    headers.add('Set-Cookie', 'test0=blar; Path=/')
    headers.add('Set-Cookie', 'test1=blar; Path=/')
    yield Return(200, headers, content)

add_service(HttpServer(hello_http, 8088))
eventloop.run()
Beispiel #8
0
 def proc_wrapper():
     launch(target, *args, **kwargs)
     eventloop.run()
Beispiel #9
0
def main(args):
    parser = argparse.ArgumentParser(description="runs monocle tests")
    parser.add_argument('--verbose',
                        '-v',
                        action='store_true',
                        default=False,
                        help="verbose mode")
    parser.add_argument('stack', help="monocle stack to use")
    parser.add_argument('paths',
                        nargs=argparse.REMAINDER,
                        help="args for nosetests")
    args = parser.parse_args()

    monocle.init(args.stack)
    from monocle.stack import eventloop

    hook = rewrite.make_assertion_hook()
    sys.meta_path.insert(0, hook)

    class State(object):
        debug = False

        def trace(self, msg):
            if self.debug:
                print(msg)

    class Config(object):
        _assertstate = State()

    class Session(object):
        config = Config()

        def isinitpath(self, fn):
            return False

    hook.session = Session()

    paths = set()
    all_tests = []
    test_files = []

    for path in args.paths:
        if os.path.isfile(path):
            paths.add(os.path.dirname(path))
            file = os.path.basename(path)
            all_tests.append(file[:-3])
            test_files.append(path)
        elif os.path.isdir(path):
            for top, dirs, files in os.walk(path):
                for file in files:
                    if file.endswith(".py"):
                        paths.add(top)
                        all_tests.append(file[:-3])
                        test_files.append(os.path.join(top, file))
        else:
            print("Unknown file or directory", path)
            return

        sys.path.extend(paths)
        imported_tests = []
        hook.fnpats = test_files

        for test in all_tests:
            try:
                m = __import__(test, globals(), locals())
                if hasattr(m, "test"):
                    imported_tests.extend(m.test.__globals__['_tests'])
            except Exception as e:
                print(test, str(e))
        _tests.extend(set(imported_tests))

    random.shuffle(_tests)

    monocle.launch(run, _tests, args.verbose)
    eventloop.run()
Beispiel #10
0
def main(args):
    parser = argparse.ArgumentParser(
        description="runs monocle tests")
    parser.add_argument('--verbose', '-v', action='store_true', default=False,
                        help="verbose mode")
    parser.add_argument('stack', help="monocle stack to use")
    parser.add_argument('paths', nargs=argparse.REMAINDER, help="args for nosetests")
    args = parser.parse_args()

    monocle.init(args.stack)
    from monocle.stack import eventloop

    hook = rewrite.make_assertion_hook()
    sys.meta_path.insert(0, hook)

    class State(object):
        debug = False

        def trace(self, msg):
            if self.debug:
                print(msg)

    class Config(object):
        _assertstate = State()

    class Session(object):
        config = Config()

        def isinitpath(self, fn):
            return False

    hook.session = Session()

    paths = set()
    all_tests = []
    test_files = []

    for path in args.paths:
        if os.path.isfile(path):
            paths.add(os.path.dirname(path))
            file = os.path.basename(path)
            all_tests.append(file[:-3])
            test_files.append(path)
        elif os.path.isdir(path):
            for top, dirs, files in os.walk(path):
                for file in files:
                    if file.endswith(".py"):
                        paths.add(top)
                        all_tests.append(file[:-3])
                        test_files.append(os.path.join(top, file))
        else:
            print("Unknown file or directory", path)
            return

        sys.path.extend(paths)
        imported_tests = []
        hook.fnpats = test_files

        for test in all_tests:
            try:
                m = __import__(test, globals(), locals())
                if hasattr(m, "test"):
                    imported_tests.extend(m.test.__globals__['_tests'])
            except Exception as e:
                print(test, str(e))
        _tests.extend(set(imported_tests))

    random.shuffle(_tests)

    monocle.launch(run, _tests, args.verbose)
    eventloop.run()
Beispiel #11
0
 def proc_wrapper():
     eventloop.queue_task(0, target, *args, **kwargs)
     eventloop.run()