From 8fa999b877ad7ff304d08b42d575ae45a291f206 Mon Sep 17 00:00:00 2001 From: Dominik Pataky Date: Wed, 10 Aug 2016 22:58:18 +0200 Subject: [PATCH] Remove namedtuples import (old version) --- collector-v9.py | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/collector-v9.py b/collector-v9.py index 13dd4eb..9716553 100644 --- a/collector-v9.py +++ b/collector-v9.py @@ -11,7 +11,6 @@ See https://github.com/djmdjm/softflowd Licensed under MIT License. See LICENSE. """ -from collections import namedtuple import socket import struct @@ -160,6 +159,10 @@ class DataFlowSet: self.flows.append(new_record) + def __repr__(self): + return ""\ + .format(self.template_id, self.length, len(self.flows)) + class TemplateField: """A field with type identifier and length. @@ -170,8 +173,7 @@ class TemplateField: def __repr__(self): return "".format( - self.field_type, field_types[self.field_type], self.field_length - ) + self.field_type, field_types[self.field_type], self.field_length) class TemplateRecord: @@ -185,15 +187,14 @@ class TemplateRecord: def __repr__(self): return "".format( self.template_id, self.field_count, - ' '.join([field_types[field.field_type] for field in self.fields]) - ) + ' '.join([field_types[field.field_type] for field in self.fields])) class TemplateFlowSet: """A template flowset, which holds an id that is used by data flowsets to reference back to the template. The template then has fields which hold - identifiers of data types ("IP_SRC_ADDR", "PKTS"). This way the flow sender - can dynamically out together data flowsets. + identifiers of data types (eg "IP_SRC_ADDR", "PKTS"..). This way the flow + sender can dynamically put together data flowsets. """ def __init__(self, data): pack = struct.unpack('!HH', data[:4]) @@ -226,9 +227,13 @@ class TemplateFlowSet: # Set offset to next template_id field offset += 4 + def __repr__(self): + return ""\ + .format(self.flowset_id, self.length, self.templates.keys()) + class Header: - """The header of the flow record. + """The header of the ExportPacket. """ def __init__(self, data): pack = struct.unpack('!HHIIII', data[:20]) @@ -275,7 +280,6 @@ if __name__ == "__main__": sock.bind((HOST, PORT)) print("Listening on interface {}:{}".format(HOST, PORT)) - counter = 0 while 1: (data, sender) = sock.recvfrom(8192) print("Received data from {}, length {}".format(sender, len(data)))