def __init__(self, ipdb, mode=None, parent=None, uid=None): ''' Parameters: * ipdb -- ipdb() reference * mode -- transaction mode ''' Transactional.__init__(self, ipdb, mode) self.cleanup = ('header', 'linkinfo', 'af_spec', 'attrs', 'event', 'map', 'stats', 'stats64', '__align') self.ingress = None self.egress = None self.nlmsg = None self._exception = None self._tb = None self._load_event = threading.Event() self._linked_sets.add('ipaddr') self._linked_sets.add('ports') self._freeze = None # 8<----------------------------------- # local setup: direct state is required with self._direct_state: for i in self._fields: self[i] = None for i in ('change', 'mask'): del self[i] self['ipaddr'] = IPaddrSet() self['ports'] = LinkedSet() self['ipdb_priority'] = 0
def __init__(self, ipdb, mode=None, parent=None, uid=None): ''' Parameters: * ipdb -- ipdb() reference * mode -- transaction mode ''' Transactional.__init__(self, ipdb, mode) self.cleanup = ('header', 'linkinfo', 'protinfo', 'af_spec', 'attrs', 'event', 'map', 'stats', 'stats64', 'change', '__align') self.ingress = None self.egress = None self.nlmsg = None self.errors = [] self.partial = False self._exception = None self._tb = None self._linked_sets.add('ipaddr') self._linked_sets.add('ports') self._linked_sets.add('vlans') self._freeze = None self._delay_add_port = set() self._delay_del_port = set() # 8<----------------------------------- # local setup: direct state is required with self._direct_state: for i in ('change', 'mask'): del self[i] self['ipaddr'] = self.ipdb.init_ipaddr_set() self['ports'] = LinkedSet() self['vlans'] = LinkedSet() self['ipdb_priority'] = 0
def __init__(self, ipdb, mode=None, parent=None, uid=None): ''' Parameters: * ipdb -- ipdb() reference * mode -- transaction mode ''' Transactional.__init__(self, ipdb, mode) self.cleanup = ('header', 'linkinfo', 'af_spec', 'attrs', 'event', 'map', 'stats', 'stats64', '__align') self.ingress = None self.egress = None self.nlmsg = None self._exception = None self._tb = None self._load_event = threading.Event() self._linked_sets.add('ipaddr') self._linked_sets.add('ports') self._freeze = None # 8<----------------------------------- # local setup: direct state is required with self._direct_state: for i in self._fields: self[i] = None for i in ('change', 'mask'): del self[i] self['ipaddr'] = IPaddrSet() self['ports'] = LinkedSet() self['ipdb_priority'] = 0
def __init__(self, ipdb, mode=None, parent=None, uid=None): ''' Parameters: * ipdb -- ipdb() reference * mode -- transaction mode ''' Transactional.__init__(self, ipdb, mode) self.cleanup = ('header', 'linkinfo', 'af_spec', 'attrs', 'event', 'map', 'stats', 'stats64', '__align') self.ingress = None self.egress = None self._exists = False self._flicker = False self._exception = None self._tb = None self._virtual_fields = ('removal', 'flicker', 'state') self._xfields = {'common': [ifinfmsg.nla2name(i[0]) for i in ifinfmsg.nla_map]} self._xfields['common'].append('index') self._xfields['common'].append('flags') self._xfields['common'].append('mask') self._xfields['common'].append('change') self._xfields['common'].append('kind') self._xfields['common'].append('peer') self._xfields['common'].append('vlan_id') self._xfields['common'].append('bond_mode') for data in ('bridge_data', 'bond_data', 'tuntap_data', 'vxlan_data', 'gre_data', 'macvlan_data', 'macvtap_data'): msg = getattr(ifinfmsg.ifinfo, data) self._xfields['common'].extend([msg.nla2name(i[0]) for i in msg.nla_map]) for ftype in self._xfields: self._fields += self._xfields[ftype] self._fields.extend(self._virtual_fields) self._load_event = threading.Event() self._linked_sets.add('ipaddr') self._linked_sets.add('ports') self._freeze = None # 8<----------------------------------- # local setup: direct state is required with self._direct_state: self['ipaddr'] = IPaddrSet() self['ports'] = LinkedSet() for i in self._fields: self[i] = None for i in ('state', 'change', 'mask'): del self[i]
def __init__(self, ipdb, mode=None, parent=None, uid=None): Transactional.__init__(self, ipdb, mode, parent, uid) self._load_event = threading.Event() self._fields = [rtmsg.nla2name(i[0]) for i in rtmsg.nla_map] self._fields.append('flags') self._fields.append('src_len') self._fields.append('dst_len') self._fields.append('table') self._fields.append('removal') self._virtual_fields = ['ipdb_scope', 'ipdb_priority'] def make_set_value(self, key): def set_value(value): self[key] = value return self return set_value for key in self._fields + self._virtual_fields: setattr(self, 'set_%s' % key, make_set_value(self, key)) self._fields.extend(self._virtual_fields) self.cleanup = ('attrs', 'header', 'event') with self._direct_state: for i in self._fields: self[i] = None self['metrics'] = Metrics(parent=self) self['ipdb_priority'] = 0
def __init__(self, ipdb, mode=None, parent=None, uid=None): Transactional.__init__(self, ipdb, mode, parent, uid) self._load_event = threading.Event() with self._direct_state: for i in self._fields: self[i] = None self['metrics'] = Metrics(parent=self) self['multipath'] = NextHopSet() self['ipdb_priority'] = 0
def __init__(self, ipdb, mode=None, parent=None, uid=None): Transactional.__init__(self, ipdb, mode, parent, uid) self._load_event = threading.Event() with self._direct_state: for i in self._fields: self[i] = None self['metrics'] = Metrics(parent=self) self['multipath'] = NextHopSet() self['ipdb_priority'] = 0
def __init__(self, ipdb, mode=None, parent=None, uid=None): ''' Parameters: * ipdb -- ipdb() reference * mode -- transaction mode ''' Transactional.__init__(self, ipdb, mode) self.cleanup = ('header', 'linkinfo', 'af_spec', 'attrs', 'event', 'map', 'stats', 'stats64') self.ingress = None self.egress = None self._exists = False self._flicker = False self._exception = None self._tb = None self._virtual_fields = ('removal', 'flicker', 'state') self._xfields = { 'common': [ifinfmsg.nla2name(i[0]) for i in ifinfmsg.nla_map] } self._xfields['common'].append('index') self._xfields['common'].append('flags') self._xfields['common'].append('mask') self._xfields['common'].append('change') self._xfields['common'].append('kind') self._xfields['common'].append('peer') self._xfields['common'].append('vlan_id') self._xfields['common'].append('bond_mode') brmsg = ifinfmsg.ifinfo.bridge_data self._xfields['common'].extend( [brmsg.nla2name(i[0]) for i in brmsg.nla_map]) bomsg = ifinfmsg.ifinfo.bond_data self._xfields['common'].extend( [bomsg.nla2name(i[0]) for i in bomsg.nla_map]) tuntap = ifinfmsg.ifinfo.tuntap_data self._xfields['common'].extend( [tuntap.nla2name(i[0]) for i in tuntap.nla_map]) for ftype in self._xfields: self._fields += self._xfields[ftype] self._fields.extend(self._virtual_fields) self._load_event = threading.Event() self._linked_sets.add('ipaddr') self._linked_sets.add('ports') self._freeze = None # 8<----------------------------------- # local setup: direct state is required with self._direct_state: self['ipaddr'] = IPaddrSet() self['ports'] = LinkedSet() for i in self._fields: self[i] = None for i in ('state', 'change', 'mask'): del self[i]
def __init__(self, ipdb, mode=None, parent=None, uid=None): Transactional.__init__(self, ipdb, mode, parent, uid) self._exists = False self._load_event = threading.Event() self._fields = [rtmsg.nla2name(i[0]) for i in rtmsg.nla_map] self._fields.append('flags') self._fields.append('src_len') self._fields.append('dst_len') self._fields.append('table') self._fields.append('removal') self.cleanup = ('attrs', 'header', 'event') with self._direct_state: self['metrics'] = Metrics(parent=self)
def __init__(self, ipdb, mode=None): Transactional.__init__(self, ipdb, mode) self._exists = False self._load_event = threading.Event() self._fields = [rtmsg.nla2name(i[0]) for i in rtmsg.nla_map] self._fields.append('flags') self._fields.append('src_len') self._fields.append('dst_len') self._fields.append('table') self._fields.append('removal') self.cleanup = ('attrs', 'header', 'event')
def __init__(self, ipdb, mode=None, parent=None, uid=None): Transactional.__init__(self, ipdb, mode, parent, uid) self._exists = False self._load_event = threading.Event() self._fields = [rtmsg.nla2name(i[0]) for i in rtmsg.nla_map] self._fields.append('flags') self._fields.append('src_len') self._fields.append('dst_len') self._fields.append('table') self._fields.append('removal') self.cleanup = ('attrs', 'header', 'event') with self._direct_state: self['metrics'] = Metrics(parent=self)
def __init__(self, ipdb, mode=None, parent=None, uid=None): ''' Parameters: * ipdb -- ipdb() reference * mode -- transaction mode ''' Transactional.__init__(self, ipdb, mode) self.cleanup = ('header', 'linkinfo', 'protinfo', 'af_spec', 'attrs', 'event', 'map', 'stats', 'stats64', 'change', '__align') self.ingress = None self.egress = None self.nlmsg = None self.errors = [] self.partial = False self._exception = None self._tb = None self._linked_sets.add('ipaddr') self._linked_sets.add('ports') self._linked_sets.add('vlans') self._freeze = None self._delay_add_port = set() self._delay_del_port = set() # 8<----------------------------------- # local setup: direct state is required with self._direct_state: for i in ('change', 'mask'): del self[i] self['ipaddr'] = self.ipdb.init_ipaddr_set() self['ports'] = LinkedSet() self['vlans'] = LinkedSet() self['ipdb_priority'] = 0
def __init__(self, *argv, **kwarg): Transactional.__init__(self, *argv, **kwarg) self._fields = [ rtmsg.metrics.nla2name(i[0]) for i in rtmsg.metrics.nla_map ]
def __init__(self, ipdb, mode=None, parent=None, uid=None): Transactional.__init__(self, ipdb, mode, parent, uid) with self._direct_state: self['ipdb_priority'] = 0
def __init__(self, *argv, **kwarg): Transactional.__init__(self, *argv, **kwarg) self._fields = [rtmsg.metrics.nla2name(i[0]) for i in rtmsg.metrics.nla_map]