Example #1
0
    def dh_key_exchange(self, client, coder):
        while True:
            try:
                print("waiting dh params..")
                raw_data = ClientManager.get_msg(client)
                print("get msg " + str(raw_data))

                if "dh_params" in raw_data:
                    ClientManager.send_msg(
                        client,
                        *ClientManager.build_response(coder.get_dh_params()))
                    print("Waiting for client's public key")
                    client_key_msg = ClientManager.get_msg(client)
                    print("Public key received")
                    if "public_key" not in client_key_msg:
                        raise Exception(
                            "Waiting for client public key for encryption")
                    coder.calc_shared_key(client_key_msg["public_key"])
                    return
                elif coder.shared_key is None:
                    raise Exception("Missing client public key for encryption")

            except Exception as e:
                print("Server exception " + str(e))
                ClientManager.send_msg(
                    client,
                    *ClientManager.build_response(
                        error_msg("dh_params", str(e))))
Example #2
0
 def __init__(self,
              address,
              neighbours=[],
              gateways=[],
              defaultGateway=None):
     self.address = address
     self.defaultGateway = defaultGateway
     self.cManager = cm.ClientManager(self, neighbours, gateways)
Example #3
0
    def init(self, subtype, conf):
        cfgip = str(conf.get("configsvr", "host"))
        cfgport = int(conf.get("configsvr", "port"))
        self.m_config = ConfigClient.ConfigClent(self, subtype,
                                                 Base.SVR_TYPE_SRS, cfgip,
                                                 cfgport)

        self.m_connectorServer = ConnectorServer.ConnectorServer(self)
        self.m_centerClients = ClientManager.ClientManager(self)
        self.m_playerManager = PlayerManager.PlayerManager(self)
Example #4
0
from ClientManager import *
SELF_IP = "127.0.0.1"
TRACKER_PORT = 3456


seeders_manager = seeder_communication_manager()
clients_manager = ClientManager(SELF_IP, TRACKER_PORT, seeders_manager)

clients_manager.wait_for_connections()
Example #5
0
import ClientManager
import Logger
import Configurations
import time
import os, shutil
import glob
import re

if __name__ == '__main__':
    os.system('reset')

    Logger.Logger('-' * 50)

    #REVERT TEST CLIENTS TO PROPER SNAPSHOT
    for vm in Configurations.VmNameList:
        ClientManager.Revert(vm, Configurations.VmSnapshot)

#POWER ON TEST CLIENTS
    for vm in Configurations.VmNameList:
        ClientManager.StartVM(vm)
    time.sleep(Configurations.OsStartupTimeout)

    #COPY REQUIRED FILES TO CLIENTS
    for vm in Configurations.VmNameList:
        ClientManager.CreateDirectoryOnGuest(vm, Configurations.ClientPath)
        for cfile in Configurations.ClientFilesPath:
            ClientManager.CopyFromHostToGuest(
                vm, cfile,
                Configurations.ClientPath + cfile.split('/')[-1:][0])

#COLLECT IPs FROM CLIENTS AND GET THEM TO PADVISH SERVER
Example #6
0
	#Sub - methods
	def submitParsingRequest(self,
							parsingRequest):

		gearmanClient = Client(ClientManager.JOB_SERVER_ADDRESS_LIST,
								parsingRequest)
		gearmanClient.run()
		gearmanClient = None
		

	def readStatus(self,
					requestSequenceNumber="all"):

		return self._parsingRequestQueue.getStatus(requestSequenceNumber)


if __name__=="__main__":
	_clientManager = ClientManager()
	_runMode = constants.RUN_MODE_DAEMON

	if(len(sys.argv) > 1):
		if(sys.argv[1]=="-f"):
			_runMode = constants.RUN_MODE_FOREGROUND

	#try:
	_clientManager.start(_runMode)
	#except Exception:
	#	_clientManager.stop()
	#	exit(0)
	
Example #7
0
    def authorization(self, client, instances, coder):
        while True:
            print("client's authorization...")
            try:
                raw_data = ClientManager.get_msg(client, coder)
                print("get msg " + str(raw_data))

                if raw_data is None or RequestType.AUTHORIZE not in raw_data:
                    ClientManager.send_msg(
                        client,
                        *ClientManager.build_response(
                            error_msg(RequestType.AUTHORIZE,
                                      "You are not authorized"), coder))
                    continue

                array = json.loads(raw_data[RequestType.AUTHORIZE])
                access_rights = None
                admin = instances.DATA_BASE.get_admin(array[DataType.LOGIN])

                if admin is not None and self.psw_equals(
                        admin[DataType.PASSWORD], array[DataType.PASSWORD]):
                    access_rights = DataType.ACCESS_ADMIN
                else:
                    viewer = instances.DATA_BASE.get_viewer(
                        array[DataType.LOGIN])
                    if viewer is not None and self.psw_equals(
                            viewer[DataType.PASSWORD],
                            array[DataType.PASSWORD]):
                        access_rights = DataType.ACCESS_VIEWER

                if access_rights is None:
                    ClientManager.send_msg(
                        client,
                        *ClientManager.build_response(
                            error_msg(RequestType.AUTHORIZE,
                                      "Wrong login or password"), coder))
                else:
                    ClientManager.send_msg(
                        client,
                        *ClientManager.build_response(
                            {
                                RequestType.AUTHORIZE:
                                admin if admin is not None else viewer,
                                DataType.ACCESS:
                                access_rights,
                                DataType.CODE:
                                DataType.CODE_SUCCESS
                            }, coder))

                    ClientManager.run(client, instances, access_rights, coder)

            except ConnectionAbortedError as e:
                client.close()
                return
            except Exception as e:
                print("Server exception " + str(e))
                ClientManager.send_msg(
                    client,
                    *ClientManager.build_response(
                        error_msg(RequestType.AUTHORIZE, str(e)), coder))
Example #8
0
 def __init__(self):
     self.m_conn = ClientManager.ClientManager(self)