예제 #1
0
    def start_server(self):
        """Start the server"""
        try:
            self.server.bind(ADDRESS)
            self.server.listen(5)
            print("listening")
            self.server_running = True
        except OSError:
            self.messageBox(title="Error",
                            message="There was an error starting the server.")
            raise

        while self.server_running:
            try:
                print("Waiting for connection ...")
                (client, address) = self.server.accept()
                print("... connected from: ", address)
            except:
                self.messageBox(
                    title="Error",
                    message="There was an error connecting to a client.")
                raise

            try:
                clienthandler = ClientHandler(self, client, self.addressbook)
                clienthandler.start()
            except:
                self.messageBox(
                    title="Error",
                    message="There was an error starting a client handler.")
                raise
예제 #2
0
	def run(self):
		''' Run the log proxy and listen for incoming connections.
		'''
		address = (self.HOST, self.PORT)
		self.running = True
		self.serverSock = socket.socket()
		self.serverSock = SSL.Connection(self.context, self.serverSock)
		self.serverSock.bind(address)
		self.serverSock.listen(5)

		# Wait for incoming connections from clients
		while self.running:
			# Accept a new client connection 
			newsocket, fromaddr = self.serverSock.accept()
			
			# Wrap the socket up in a SSL connection for authentication and encryption
			'''connstream = ssl.wrap_socket(newsocket,
                                 server_side=True,
                                 certfile="./Keys/cert",
                                 keyfile="./Keys/key",
                                 ssl_version=ssl.PROTOCOL_TLSv1, # TODO: this should be a configurable parameter for ABLS
                                 cert_reqs=ssl.CERT_REQUIRED) # we require a certificate from the client for authentication
			'''
			#print("Client connected from {}.".format(fromaddr))
			logging.debug("Client connected from {}.".format(fromaddr))

			# Start the handler thread
			handler = ClientHandler(self, self.params, self.keyMgr, self.collector)
			handler.start()
			handler.clientList.append(ClientObject(newsocket, fromaddr, None)) # None should be connstream
			self.activeSessions.append(handler)

		self.serverSock.close()
		self.lgr.debug("- end -")
예제 #3
0
    def setupUi(self, PICK):
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        PICK.setSizePolicy(sizePolicy)

        self.clientHandler = ClientHandler()
        if self.clientHandler.isLead:
            self.clientHandler.pullVector()
        else:
            self.clientHandler.vectorManager.retrieveVectors()

        self.setupMainWindow(PICK)
        self.setupTabWidget()
        self.setupTeamTab()
        self.setupIngestionConfigurationTab()
        # self.setupDirectoryTab()
        self.setupSearchLogsTab()
        self.setupVectorConfigurationTab()
        self.setupIconConfigurationTab()
        self.setupEditVectorTab()
        self.setupVectorDbTab()

        self.updateVectorComboBoxes()

        self.verticalLayout.addWidget(self.tabWidget)

        PICK.setCentralWidget(self.mainWindow)
        self.intializeText(PICK)
        self.tabWidget.setCurrentIndex(0)
        QtCore.QMetaObject.connectSlotsByName(PICK)
예제 #4
0
 def startListen(self):
     self.serverSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
     self.serverSocket.bind(('localhost', self.serverPort))
     self.serverSocket.listen(5)
     print 'TopplogyServer listening on port', self.serverPort, '...'
     
     while True:
         clientsocket, address = self.serverSocket.accept()
         print 'Connection received from', address
         handler = ClientHandler(self, clientsocket, address)
         handler.start()
예제 #5
0
 def __init__(self):
     ClientHandler.__init__(self)
     self.desc = 'GameHandler'
     self.life = 5 #生命值
     self.moral = 1 #士气值
     self.cardDict = {} #卡牌列表
     self.cardMaxNum = 6
     self.chessDict = {} #棋子列表
     self.cardSuffix = 0
     self.chessSuffix = 0
     self.onTurn = False#是否到你出手
     self.enemy = None
     self.game = None
     self.attack = 1
     self.isDied = False
     self.remainCardNum = 33
예제 #6
0
파일: Server.py 프로젝트: thebugcode/Lab1
  def run(self):
    while(1):
      self.__socket = socket.socket();
      self.__socket.bind ((self.__host, self.__port))
      self.__socket.listen(self.__backlog)
      self.__socket.settimeout(self.__timeout)

      while(self.__alive):
        # Accept a new client
        client = self.__socket.accept()
        print "New Client:", client[0]

        # Open a new handler
        clientHandler = ClientHandler(client)
        clientHandler.start()

      self.__socket.close()
예제 #7
0
    def run(self):
        self.__stop = False
        while not self.__stop:
            self.soc.settimeout(1)
            try:
                connection, addr = self.soc.accept()
                log.warn("Client %s joined.", str(addr))
                if len(clients) == 1:
                    self.notify()
                clients.append([addr, connection])
            except socket.timeout:
                connection = None # TODO #1
 
            if connection:
                client_thread = ClientHandler(connection, addr)
                client_threads.append(client_thread)
                client_thread.start()
        self.close()
예제 #8
0
    def __init__(self, newUI=None):
        super(Hallcontrol, self).__init__()
        GlobalVal.sockt = ClientHandler()
        GlobalVal.sockt.connect()

        self.newchatUI = newUI

        self.timer = threading.Timer(0.1, self.run_timer)
        self.timer.start()
        GlobalVal.root_gui = self
예제 #9
0
try:
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM, socket.IPPROTO_TCP)
    s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
except socket.error as msg:
    print("Could not create socket. Error Code: ", str(msg[0]), "Error: ",
          msg[1])
    sys.exit(0)

print("[-] Socket Created")

# bind socket
try:
    s.bind((HOST, PORT))
    print("[-] Socket Bound to port " + str(PORT))
except socket.error as msg:
    print("Bind Failed. Error Code: {} Error: {}".format(str(msg[0]), msg[1]))
    sys.exit()

s.listen(10)
print("Listening...")

while True:
    # blocking call, waits to accept a connection
    conn, addr = s.accept()

    print("[-] Connected to " + addr[0] + ":" + str(addr[1]))

    client = ClientHandler(conn)
    client.start()

s.close()
예제 #10
0
# Dependencies
import socket
import sys
import thread
from ClientHandler import ClientHandler

# Configurations
PORT = int(sys.argv[1])

# ==========================================================
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

# Bind socket to local host and port
try:
    server.bind(('127.0.0.1', PORT))
except socket.error as msg:
    print 'Bind failed. Error Code : ' + str(msg[0]) + ' Message ' + msg[1]
    sys.exit()

# Start listening on socket
server.listen(10)
print '[CHANNEL SERVER] Socket now listening on port ' + str(PORT)

# Client handler
while True:
    clientSock, addr = server.accept()
    print 'Connected with ' + addr[0] + ':' + str(addr[1])
    ClientHandler(clientSock)

print "Server disconnected."
server.close()
예제 #11
0
 def __init__(self):
     ClientHandler.__init__(self)
     self.desc = 'MenuHandler'
예제 #12
0
fechaPrueba = str(datetime.datetime.now())
log = open(log_path + fechaPrueba + '.log', 'w')
log.write('Fecha y Hora: ' + fechaPrueba + '\n')
log.write('Nombre Archivo: ' + filename + '\n')
log.write('Tamaño Archivo: ' + str(os.path.getsize(path + filename)) + '\n')

#Se crea un socket UDP
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
#Se define el tamanio que tendra el buffer
BUFFER = 1024

#IP donde corre el servidor. Si no es en la nube o en una MV, usar localhost para correr localmente.
EC2_PUBLIC_IP = '54.226.145.99'
#UDP_IP = 'localhost'
UDP_IP = socket.gethostbyaddr(EC2_PUBLIC_IP)[0]
serverAddress = (UDP_IP, 10000)
sock.bind(serverAddress)
threads = []
#Creamos un thread para manejar las peticiones de cada cliente.
for i in range(numClientes):
    print('Esperando mensaje')
    data, address = sock.recvfrom(BUFFER)
    print('se recibio conexion de {} con la informacion {}'.format(
        address, data))
    newThread = ClientHandler(address, sock, path + filename, log)
    threads.append(newThread)

for t in threads:
    t.start()
sock.close()
예제 #13
0
def main():
    sock = Socket('localhost',8001)
    clientHandler = ClientHandler(sock)

    clientAcceptThread = threading.Thread(target=clientHandler.newClient()).start()
    clientAcceptThread.run()
예제 #14
0
from socket import *
from threading import *

from ClientHandler import ClientHandler

# service config
srv_address = 'localhost'
srv_port = 2222

srv_sock = socket(AF_INET, SOCK_STREAM)
srv_sock.bind((srv_address, srv_port))
srv_sock.listen(5)
print('Welcome to fake google drive :)')

users = []


while True:
    # get the client socket and client address when accepting the connection
    cl_sock, cl_address = srv_sock.accept()

    # we initialize the ClientThread class defined above
    client = ClientHandler(cl_sock, cl_address, users)
예제 #15
0
class Ui_PICK(object):
    def setupMainWindow(self, PICK):
        self.mainWindow = QtWidgets.QWidget(PICK)
        self.verticalLayout = QtWidgets.QVBoxLayout(self.mainWindow)

    def setupTabWidget(self):
        self.tabWidget = QtWidgets.QTabWidget(self.mainWindow)

    def setupTeamTab(self):
        self.teamConfigurationTab = TeamConfiguration(self.clientHandler)
        self.tabWidget.addTab(self.teamConfigurationTab, "")

    def setupSearchLogsTab(self):
        self.searchLogsTab = LogEntryConfiguration(self.clientHandler)
        self.tabWidget.addTab(self.searchLogsTab, "")

    def setupVectorDbTab(self):
        triggerHelper = TriggerHelper()
        self.vectorDbTab = VectorDbConfiguration(self.clientHandler,
                                                 triggerHelper)
        self.tabWidget.addTab(self.vectorDbTab, "")

    def handleVectorConfigurationTableTrigger(self):
        self.vectorConfigurationTab.updateVectorConfigurationTable()
        self.updateVectorComboBoxes()
        self.searchLogsTab.updateLogTable()

    def setupEditVectorTab(self):
        triggerHelper = TriggerHelper()
        self.editVectorTab = EditVectorConfiguration(self.clientHandler,
                                                     triggerHelper)
        self.tabWidget.addTab(self.editVectorTab, "")
        self.tabWidget.currentChanged.connect(self.onTabChange)

    def setupIngestionConfigurationTab(self):
        self.IngestionConfigurationTab = IngestionConfiguration(
            self.clientHandler)
        self.tabWidget.addTab(self.IngestionConfigurationTab, "")

    def setupVectorConfigurationTab(self):
        triggerHelper = TriggerHelper()
        self.vectorConfigurationTab = VectorConfiguration(
            self.clientHandler, triggerHelper)
        self.vectorConfigurationTab.updateVectorConfigurationTable()
        self.tabWidget.addTab(self.vectorConfigurationTab, "")

    def setupIconConfigurationTab(self):
        self.iconConfigurationTab = IconConfiguration(self.clientHandler)
        self.iconConfigurationTab.updateIconConfigurationTable()
        self.tabWidget.addTab(self.iconConfigurationTab, "")

    def handleVectorTableEntryUpdate(self, significantEvent, vectorName):
        self.editVectorTab.handleVectorTableEntryUpdate(
            significantEvent, vectorName)

    def handleSearchLogTableEntryUpdate(self, logEntry):
        self.editVectorTab.handleSearchLogTableEntryUpdate(logEntry)

    def handleRelationshipTableEntryUpdate(self, relationship, vectorName):
        self.editVectorTab.handleRelationshipTableEntryUpdate(
            relationship, vectorName)

    def onTabChange(self):
        self.updateVectorComboBoxes()
        if self.tabWidget.currentIndex() == self.tabWidget.indexOf(
                self.editVectorTab):
            self.clientHandler.requestIcons()
            self.editVectorTab.onTabChange()
        elif self.tabWidget.currentIndex() == self.tabWidget.indexOf(
                self.iconConfigurationTab):
            self.iconConfigurationTab.onTabChange()
        elif self.tabWidget.currentIndex() == self.tabWidget.indexOf(
                self.vectorConfigurationTab):
            self.vectorConfigurationTab.onTabChange()
        elif self.tabWidget.currentIndex() == self.tabWidget.indexOf(
                self.vectorDbTab):
            self.vectorDbTab.onTabChange()
        elif self.tabWidget.currentIndex() == self.tabWidget.indexOf(
                self.teamConfigurationTab):
            self.clientHandler.requestEventConfig()
        elif self.tabWidget.currentIndex() == self.tabWidget.indexOf(
                self.searchLogsTab):
            self.searchLogsTab.updateLogTable()
        elif self.tabWidget.currentIndex() == self.tabWidget.indexOf(
                self.IngestionConfigurationTab):
            self.IngestionConfigurationTab.updateLogFileTable()

    def handleRelationshipTableTrigger(self):
        self.editVectorTab.handleRelationshipTableTrigger()

    def handleVectorGraphTrigger(self):
        self.editVectorTab.handleVectorGraphTrigger()

    def updateVectorComboBoxes(self):
        self.vectorConfigurationTab.updateComboBox()
        self.editVectorTab.updateComboBox()

    def setupUi(self, PICK):
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        PICK.setSizePolicy(sizePolicy)

        self.clientHandler = ClientHandler()
        if self.clientHandler.isLead:
            self.clientHandler.pullVector()
        else:
            self.clientHandler.vectorManager.retrieveVectors()

        self.setupMainWindow(PICK)
        self.setupTabWidget()
        self.setupTeamTab()
        self.setupIngestionConfigurationTab()
        # self.setupDirectoryTab()
        self.setupSearchLogsTab()
        self.setupVectorConfigurationTab()
        self.setupIconConfigurationTab()
        self.setupEditVectorTab()
        self.setupVectorDbTab()

        self.updateVectorComboBoxes()

        self.verticalLayout.addWidget(self.tabWidget)

        PICK.setCentralWidget(self.mainWindow)
        self.intializeText(PICK)
        self.tabWidget.setCurrentIndex(0)
        QtCore.QMetaObject.connectSlotsByName(PICK)

    def intializeText(self, PICK):
        PICK.setWindowTitle("PICK Tool")
        self.tabWidget.setTabText(
            self.tabWidget.indexOf(self.teamConfigurationTab),
            "Team and Event Configuration")
        self.tabWidget.setTabText(
            self.tabWidget.indexOf(self.IngestionConfigurationTab),
            "Ingestion Configuration")
        self.tabWidget.setTabText(
            self.tabWidget.indexOf(self.vectorConfigurationTab),
            "Vector Configuration")
        self.tabWidget.setTabText(
            self.tabWidget.indexOf(self.iconConfigurationTab),
            "Icon Configuration")
        # self.tabWidget.setTabText(self.tabWidget.indexOf(self.directoryTab), "Directory Configuration")
        self.tabWidget.setTabText(self.tabWidget.indexOf(self.editVectorTab),
                                  "Edit Vector")
        self.tabWidget.setTabText(self.tabWidget.indexOf(self.searchLogsTab),
                                  "Search Logs")
        self.tabWidget.setTabText(self.tabWidget.indexOf(self.vectorDbTab),
                                  "Vector DB Configuration")