def pp(self): def fmtlist(a, showAmt=False): newArr = [] for i, v in enumerate(a): amt = "" if showAmt: amt = "%d " % v[1] newArr += ["%d. %s%s (0x%02x)" % (i + 1, amt, v[2], v[0])] return "\n".join(newArr) def fmtlistDest(a): newArr = [] for i, (pid, v, n, d) in enumerate(a): dst = "" if d == PacketDest.Server.value: dst = "Server" elif d == PacketDest.Client.value: dst = "Client" else: dst = "Either" newArr += ["%d. %s (0x%02x) -> %s" % (i + 1, n, pid, dst)] return "\n".join(newArr) unseenControlList = [] unseenGameList = [] controlFreq = [] gameFreq = [] singleDstControl = [] singleDstGame = [] for i, v in enumerate(self.control_types): controlFreq += [[ i, v, Packet.get_name_by_id(PacketType.Control, i) ]] for i, v in enumerate(self.game_types): gameFreq += [[i, v, Packet.get_name_by_id(PacketType.Game, i)]] controlFreqS = sorted(controlFreq, key=lambda x: x[1], reverse=True) gameFreqS = sorted(gameFreq, key=lambda x: x[1], reverse=True) for (i, v, n) in gameFreqS: if v == 0 and not Packet.is_unknown(PacketType.Game, i): unseenGameList += [[i, v, n]] for (i, v, n) in controlFreqS: if v == 0 and not Packet.is_unknown(PacketType.Control, i): unseenControlList += [[i, v, n]] for i, dst in enumerate(self.game_dst): (i, v, n) = gameFreq[i] if v > 0: # did we have packets of this type? if dst[PacketDest.Server.value] == 0: singleDstGame += [[i, v, n, PacketDest.Server.value]] elif dst[PacketDest.Client.value] == 0: singleDstGame += [[i, v, n, PacketDest.Client.value]] else: singleDstGame += [[i, v, n, 2]] for i, dst in enumerate(self.control_dst): (i, v, n) = controlFreq[i] if v > 0: # did we have packets of this type? if dst[PacketDest.Server.value] == 0: singleDstControl += [[i, v, n, PacketDest.Server.value]] elif dst[PacketDest.Client.value] == 0: singleDstControl += [[i, v, n, PacketDest.Client.value]] else: singleDstControl += [[i, v, n, 2]] singleDstControl = sorted(singleDstControl, key=lambda x: x[3]) singleDstGame = sorted(singleDstGame, key=lambda x: x[3]) ##################### statistics = \ """\ Records: %d - Control: %d - Game: %d Invalid: %d Unknown: %d """ % (self.records, self.control, self.game, self.invalid, self.unknown) ##################### frequency = \ """\ Frequency (highest to lowest) == Game == %s == Control == %s """ % (fmtlist(gameFreqS, True), fmtlist(controlFreqS, True)) ##################### unseen = \ """\ Unseen packets == Game (%d) == %s == Control (%d) == %s """ % (len(unseenGameList), fmtlist(unseenGameList), len(unseenControlList), fmtlist(unseenControlList)) ##################### singleDest = \ """\ Packet Destination == Game (%d) == %s == Control (%d) == %s """ % (len(singleDstGame), fmtlistDest(singleDstGame), len(singleDstControl), fmtlistDest(singleDstControl)) ##################### print(statistics) print(frequency) print(unseen) print(singleDest)
def pp(self): def fmtlist(a, showAmt=False): newArr = [] for i,v in enumerate(a): amt = "" if showAmt: amt = "%d " % v[1] newArr += ["%d. %s%s (0x%02x)" % (i+1, amt, v[2], v[0])] return "\n".join(newArr) def fmtlistDest(a): newArr = [] for i, (pid,v,n,d) in enumerate(a): dst = "" if d == PacketDest.Server.value: dst = "Server" elif d == PacketDest.Client.value: dst = "Client" else: dst = "Either" newArr += ["%d. %s (0x%02x) -> %s" % (i+1, n, pid, dst)] return "\n".join(newArr) unseenControlList = [] unseenGameList = [] controlFreq = [] gameFreq = [] singleDstControl = [] singleDstGame = [] for i,v in enumerate(self.control_types): controlFreq += [[i, v, Packet.get_name_by_id(PacketType.Control, i)]] for i,v in enumerate(self.game_types): gameFreq += [[i, v, Packet.get_name_by_id(PacketType.Game, i)]] controlFreqS = sorted(controlFreq, key=lambda x: x[1], reverse=True) gameFreqS = sorted(gameFreq, key=lambda x: x[1], reverse=True) for (i, v, n) in gameFreqS: if v == 0 and not Packet.is_unknown(PacketType.Game, i): unseenGameList += [[i, v, n]] for (i, v, n) in controlFreqS: if v == 0 and not Packet.is_unknown(PacketType.Control, i): unseenControlList += [[i, v, n]] for i,dst in enumerate(self.game_dst): (i, v, n) = gameFreq[i] if v > 0: # did we have packets of this type? if dst[PacketDest.Server.value] == 0: singleDstGame += [[i, v, n, PacketDest.Server.value]] elif dst[PacketDest.Client.value] == 0: singleDstGame += [[i, v, n, PacketDest.Client.value]] else: singleDstGame += [[i, v, n, 2]] for i,dst in enumerate(self.control_dst): (i, v, n) = controlFreq[i] if v > 0: # did we have packets of this type? if dst[PacketDest.Server.value] == 0: singleDstControl += [[i, v, n, PacketDest.Server.value]] elif dst[PacketDest.Client.value] == 0: singleDstControl += [[i, v, n, PacketDest.Client.value]] else: singleDstControl += [[i, v, n, 2]] singleDstControl = sorted(singleDstControl, key=lambda x: x[3]) singleDstGame = sorted(singleDstGame, key=lambda x: x[3]) ##################### statistics = \ """\ Records: %d - Control: %d - Game: %d Invalid: %d Unknown: %d """ % (self.records, self.control, self.game, self.invalid, self.unknown) ##################### frequency = \ """\ Frequency (highest to lowest) == Game == %s == Control == %s """ % (fmtlist(gameFreqS, True), fmtlist(controlFreqS, True)) ##################### unseen = \ """\ Unseen packets == Game (%d) == %s == Control (%d) == %s """ % (len(unseenGameList), fmtlist(unseenGameList), len(unseenControlList), fmtlist(unseenControlList)) ##################### singleDest = \ """\ Packet Destination == Game (%d) == %s == Control (%d) == %s """ % (len(singleDstGame), fmtlistDest(singleDstGame), len(singleDstControl), fmtlistDest(singleDstControl)) ##################### print(statistics) print(frequency) print(unseen) print(singleDest)