Beispiel #1
0
class SFSource(PacketSource):
    def __init__(self, dispatcher, args):
        PacketSource.__init__(self, dispatcher)

        m = re.match(r'(.*):(.*)', args)
        if m == None:
            raise PacketSourceException("bad arguments")

        (host, port) = m.groups()
        port = int(port)

        self.io = SocketIO(host, port)
        self.prot = SFProtocol(self.io, self.io)

    def cancel(self):
        self.done = True
        self.io.cancel()

    def open(self):
        self.io.open()
        self.prot.open()
        PacketSource.open(self)

    def close(self):
        self.io.close()

    def readPacket(self):
        return self.prot.readPacket()

    def writePacket(self, packet):
        self.prot.writePacket(packet)
Beispiel #2
0
class SFSource(PacketSource):
    def __init__(self, dispatcher, args):
        PacketSource.__init__(self, dispatcher)

        m = re.match(r'(.*):(.*)', args)
        if m == None:
            raise PacketSourceException("bad arguments")

        (host, port) = m.groups()
        port = int(port)

        self.io = SocketIO(host, port)
        self.prot = SFProtocol(self.io, self.io)

    def cancel(self):
        self.done = True
        self.io.cancel()

    def open(self):
        self.io.open()
        self.prot.open()
        PacketSource.open(self)

    def close(self):
        self.io.close()

    def readPacket(self):
        return self.prot.readPacket()

    def writePacket(self, packet):
        self.prot.writePacket(packet)
Beispiel #3
0
    def __init__(self, dispatcher, args):
        PacketSource.__init__(self, dispatcher)

        m = re.match(r'(.*):(.*)', args)
        if m == None:
            raise PacketSourceException("bad arguments")

        (host, port) = m.groups()
        port = int(port)

        self.io = SocketIO(host, port)
        self.prot = SFProtocol(self.io, self.io)
Beispiel #4
0
def main( **opts):

	global g_INIT_KEY
	global g_DEBUG_LEVEL
	global key1Hash, key2Hash, keyBothHash

	optStr = sfp.getOptStr()
	optList, args = getopt.getopt(sys.argv[1:], optStr, ['level=', 'output-file='] )

	opts = {}
	for optKey, optVal in optList : opts[optKey] = optVal
		
	SERVER_IP 		= args[0]
	SERVER_PORT 	= int( args[1] )
	winClassName 	= args[2]

	g_INIT_KEY	= '*,*'
	if len( args ) > 3 :
		g_INIT_KEY = DELIMETER_BUS.join( args[3:] )
	
	key1Hash = {}
	key2Hash = {}
	keyBothHash = { '*,*':[] }

	w = gsWindow( winClassName, SERVER_IP, SERVER_PORT, **opts ) 
	win32gui.PumpMessages()
Beispiel #5
0
    def __init__(self, dispatcher, args):
        PacketSource.__init__(self, dispatcher)

        m = re.match(r'(.*):(.*)', args)
        if m == None:
            raise PacketSourceException("bad arguments")

        (host, port) = m.groups()
        port = int(port)

        self.io = SocketIO(host, port)
        self.prot = SFProtocol(self.io, self.io)
Beispiel #6
0
def main():

    global g_INIT_KEY
    global key1Hash, key2Hash, keyBothHash

    optStr = sfp.getOptStr()
    optList, args = getopt.getopt(sys.argv[1:], optStr + 't:r',
                                  ['level=', 'output-file='])

    opts = {}
    for optKey, optVal in optList:
        opts[optKey] = optVal

    SERVER_IP = args[0]
    SERVER_PORT = int(args[1])
    g_INIT_KEY = args[2]  #g_INIT_KEY	= '0,*,*'	# heartbeat,key1,key2
    winClassName = args[len(args) - 1]

    key1Hash = {}
    key2Hash = {}
    keyBothHash = {'*,*': []}

    w = gsWindow(winClassName, SERVER_IP, SERVER_PORT, **opts)
    win32gui.PumpMessages()
Beispiel #7
0
class busThread(threading.Thread):
    def __init__(self, server_ip, server_port, **opts):

        self.server_ip = server_ip
        self.server_port = server_port

        threading.Thread.__init__(self)

        self.sock = None
        self.sf = None

        global g_INIT_KEY
        self.regKey = g_INIT_KEY.strip()

        self.heartBeatSec = int(g_INIT_KEY.split(',')[0])  # sec,key1,key2
        self.sendHeartSec = 0

        # '-l' : flush mode
        opts['-l'] = 1

        #self.opts	= {}
        self.opts = opts
        self.connectToServer(
            -1)  # nMaxRetryCnt : -1 , retry connect until connecting to BUS

    def kill(self):
        self.close()

    def close(self):
        global g_OUT_FILE
        global SHUTDOWN

        self.sf.close()
        if g_OUT_FILE: g_OUT_FILE.close()

        SHUTDOWN = True

    def connectToServer(
        self, nMaxRetryCnt
    ):  # nMaxRetryCnt : -1 , retry connect until connecting to BUS

        if self.sock: self.sf.close()

        self.sock = socket(AF_INET, SOCK_STREAM)

        retryCnt = 0
        while 1:
            try:
                self.sock.connect((self.server_ip, self.server_port))
            except Exception, e:
                __LOG__.Trace(
                    "%-10s| #[%d]fail connectToServer : %s" %
                    ('CRITICAL', retryCnt + 1, str(e)), logging.CRITICAL)
                time.sleep(5)

                if nMaxRetryCnt > 0:
                    retryCnt += 1
                    if retryCnt >= nMaxRetryCnt: return False
                continue

            __LOG__.Trace(
                "%-10s| Succ connectToServer [%s:%d]" %
                ('INFO', self.server_ip, self.server_port), logging.INFO)
            break

        self.sf = sfp.SFProtocol(sfp.SFP_CH_T, **self.opts)  #, self.opts
        self.sf.setFD(self.sock)

        regStr = '%s' % self.regKey  # hearBeat,key2,key2
        self.sf.write(' ', 'REG', regStr + '\n')

        return True
Beispiel #8
0
    SERVER_PORT = int(args[1])
    g_INIT_KEY = args[2]  #g_INIT_KEY	= '0,*,*'	# heartbeat,key1,key2
    winClassName = args[len(args) - 1]

    key1Hash = {}
    key2Hash = {}
    keyBothHash = {'*,*': []}

    w = gsWindow(winClassName, SERVER_IP, SERVER_PORT, **opts)
    win32gui.PumpMessages()


if __name__ == "__main__":

    try:
        optStr = sfp.getOptStr()
        optList, args = getopt.getopt(
            sys.argv[1:], optStr + 't:r',
            ['level=', 'output-file='])  # 07.09.28 : 'r' 추가
        if len(args) < 4: raise Exception
        opts = {}
        for optKey, optVal in optList:
            opts[optKey] = optVal
    except:
        print 'usage : %s [-options] [--level=] serverIp, port, heartBeat,key1,key2[default:0,*,*] winClassName' % (
            sys.argv[0])
        print 'examp : %s 10.10.10.10 1234 0,*,* WinAdapter' % (sys.argv[0])
        print 'examp : %s -t100 -r 10.10.10.10 1234 0,*,* WinAdapter' % (
            sys.argv[0])

        sfp.prnOpt()