Beispiel #1
0
    def __init__(self,tenant_index=0,tenant_name=None):
        
        self.tenant_index = int(tenant_index) 
        self.tenant_name = "default"
        if tenant_name:
            self.tenant_name = tenant_name
        
        self.cert_file = '/etc/smithproxy/certs/default/srv-cert.pem'
        self.key_file = '/etc/smithproxy/certs/default/srv-key.pem'

        self.context = SSL.Context()
        self.context.load_cert(self.cert_file,keyfile=self.key_file)

        self.service_port = 65000 + self.tenant_index
        self.bend_port = 64000 + self.tenant_index

        self.l_server = SOAPpy.ThreadingSOAPServer(("0.0.0.0", self.service_port),ssl_context = self.context)
        self.r_server = SOAPpy.SOAPProxy("http://localhost:%d/" % (self.bend_port,))

        self.l_server.registerFunction( SOAPpy.MethodSig(self.ping, keywords=0, context=1) )
        self.l_server.registerFunction( SOAPpy.MethodSig(self.whoami, keywords=0, context=1) )
        self.l_server.registerFunction( SOAPpy.MethodSig(self.authenticate, keywords=0, context=1) )
        
        self.l_server.registerFunction( SOAPpy.MethodSig(self.admin_login, keywords=0, context=1) )
        self.l_server.registerFunction( SOAPpy.MethodSig(self.admin_token_list, keywords=0, context=1) )
        
        self.l_server.registerFunction( SOAPpy.MethodSig(self.admin_keepalive, keywords=0, context=1) )
        self.l_server.registerFunction( SOAPpy.MethodSig(self.admin_logout, keywords=0, context=1) )


        self.create_logger()
        self.load_config()
Beispiel #2
0

def list_rockets():
    #return repr([rockets.index(x) for x in rockets if x])
    global rockets
    return repr(rockets.keys())


def server_reset():
    global rockets
    rockets = {}
    print "Server Reset!"


if __name__ == "__main__":
    ip = "127.0.0.1"
    port = 51285
    if len(sys.argv) > 1:
        ip = sys.argv[1]
    if len(sys.argv) > 2:
        port = int(sys.argv[2])
    server = SOAPpy.ThreadingSOAPServer((ip, port))
    server.registerFunction(register)
    server.registerFunction(unregister)
    server.registerFunction(command)
    server.registerFunction(num_rockets)
    server.registerFunction(get_command)
    server.registerFunction(server_reset)
    server.registerFunction(list_rockets)
    server.serve_forever()
Beispiel #3
0
    def prepare(self, tenant_name="default", tenant_index=0, clear_shm=None):
        super(AuthManager, self).prepare(tenant_name, tenant_index, clear_shm)

        self.server = SOAPpy.ThreadingSOAPServer(("localhost", self.bend_port))