summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJason Kölker <jason@koelker.net>2016-03-08 01:07:33 +0000
committerFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>2016-03-11 23:44:27 +0900
commitdb02d0f487216af59b509a3241ae028b871fb692 (patch)
tree9baedba8121dd4d5fc8f344c8d95a6c478f46ba0
parent7d42aecb8d6b4e91e4704fabb1d9eca1d873c148 (diff)
protocols/bgp: PEP-8 and Python3 fixes
Signed-off-by: Jason Kölker <jason@koelker.net> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
-rw-r--r--ryu/services/protocols/bgp/api/jsonrpc.py3
-rw-r--r--ryu/services/protocols/bgp/application.py1
-rw-r--r--ryu/services/protocols/bgp/bgpspeaker.py4
-rw-r--r--ryu/services/protocols/bgp/bmp.py7
-rw-r--r--ryu/services/protocols/bgp/core_managers/peer_manager.py4
-rw-r--r--ryu/services/protocols/bgp/core_managers/table_manager.py4
-rw-r--r--ryu/services/protocols/bgp/info_base/base.py31
-rw-r--r--ryu/services/protocols/bgp/info_base/vrf.py4
-rw-r--r--ryu/services/protocols/bgp/operator/ssh.py18
-rw-r--r--ryu/services/protocols/bgp/operator/views/fields.py4
-rw-r--r--ryu/services/protocols/bgp/peer.py29
-rw-r--r--ryu/services/protocols/bgp/rtconf/base.py16
-rw-r--r--ryu/services/protocols/bgp/rtconf/common.py9
-rw-r--r--ryu/services/protocols/bgp/rtconf/neighbors.py1
-rw-r--r--ryu/services/protocols/bgp/rtconf/vrfs.py1
-rw-r--r--ryu/services/protocols/bgp/signals/__init__.py3
-rw-r--r--ryu/services/protocols/bgp/speaker.py24
17 files changed, 82 insertions, 81 deletions
diff --git a/ryu/services/protocols/bgp/api/jsonrpc.py b/ryu/services/protocols/bgp/api/jsonrpc.py
index d73a8bec..07d547b8 100644
--- a/ryu/services/protocols/bgp/api/jsonrpc.py
+++ b/ryu/services/protocols/bgp/api/jsonrpc.py
@@ -14,10 +14,9 @@
# limitations under the License.
-import json
from ryu.base import app_manager
from ryu.lib import hub
-from ryu.app.wsgi import route, websocket, ControllerBase, WSGIApplication
+from ryu.app.wsgi import websocket, ControllerBase, WSGIApplication
from ryu.app.wsgi import rpc_public, WebSocketRPCServer
from ryu.services.protocols.bgp.api.base import call
from ryu.services.protocols.bgp.api.base import PREFIX
diff --git a/ryu/services/protocols/bgp/application.py b/ryu/services/protocols/bgp/application.py
index 82844447..a1f4291b 100644
--- a/ryu/services/protocols/bgp/application.py
+++ b/ryu/services/protocols/bgp/application.py
@@ -18,7 +18,6 @@
import imp
import logging
import traceback
-from os import path
from oslo_config import cfg
from ryu.lib import hub
diff --git a/ryu/services/protocols/bgp/bgpspeaker.py b/ryu/services/protocols/bgp/bgpspeaker.py
index c94b5794..25fb65fd 100644
--- a/ryu/services/protocols/bgp/bgpspeaker.py
+++ b/ryu/services/protocols/bgp/bgpspeaker.py
@@ -34,8 +34,6 @@ from ryu.services.protocols.bgp.rtconf.common \
import DEFAULT_REFRESH_MAX_EOR_TIME
from ryu.services.protocols.bgp.rtconf.common \
import DEFAULT_REFRESH_STALEPATH_TIME
-from ryu.services.protocols.bgp.rtconf.common \
- import DEFAULT_BGP_CONN_RETRY_TIME
from ryu.services.protocols.bgp.rtconf.common import DEFAULT_LABEL_RANGE
from ryu.services.protocols.bgp.rtconf.common import REFRESH_MAX_EOR_TIME
from ryu.services.protocols.bgp.rtconf.common import REFRESH_STALEPATH_TIME
@@ -57,8 +55,6 @@ from ryu.services.protocols.bgp.rtconf.neighbors \
from ryu.services.protocols.bgp.rtconf.neighbors import DEFAULT_CONNECT_MODE
from ryu.services.protocols.bgp.rtconf.neighbors import PEER_NEXT_HOP
from ryu.services.protocols.bgp.rtconf.neighbors import PASSWORD
-from ryu.services.protocols.bgp.rtconf.neighbors import IN_FILTER
-from ryu.services.protocols.bgp.rtconf.neighbors import OUT_FILTER
from ryu.services.protocols.bgp.rtconf.neighbors import IS_ROUTE_SERVER_CLIENT
from ryu.services.protocols.bgp.rtconf.neighbors import IS_NEXT_HOP_SELF
from ryu.services.protocols.bgp.rtconf.neighbors import CONNECT_MODE
diff --git a/ryu/services/protocols/bgp/bmp.py b/ryu/services/protocols/bgp/bmp.py
index 7d123dc9..eba642d9 100644
--- a/ryu/services/protocols/bgp/bmp.py
+++ b/ryu/services/protocols/bgp/bmp.py
@@ -17,15 +17,12 @@ from ryu.services.protocols.bgp.base import Activity
from ryu.lib import hub
from ryu.lib.packet import bmp
from ryu.lib.packet import bgp
-from ryu.services.protocols.bgp import constants as const
import socket
import logging
from calendar import timegm
from ryu.services.protocols.bgp.signals.emit import BgpSignalBus
from ryu.services.protocols.bgp.info_base.ipv4 import Ipv4Path
from ryu.lib.packet.bgp import BGPUpdate
-from ryu.lib.packet.bgp import BGPPathAttributeNextHop
-from ryu.lib.packet.bgp import BGPPathAttributeMpReachNLRI
from ryu.lib.packet.bgp import BGPPathAttributeMpUnreachNLRI
LOG = logging.getLogger('bgpspeaker.bmp')
@@ -82,9 +79,7 @@ class BMPClient(Activity):
if not self._socket:
return
assert isinstance(msg, bmp.BMPMessage)
- serialized_msg = msg.serialize()
-
- ret = self._socket.send(msg.serialize())
+ self._socket.send(msg.serialize())
def on_adj_rib_in_changed(self, data):
peer = data['peer']
diff --git a/ryu/services/protocols/bgp/core_managers/peer_manager.py b/ryu/services/protocols/bgp/core_managers/peer_manager.py
index 9e8543d7..ce881d8f 100644
--- a/ryu/services/protocols/bgp/core_managers/peer_manager.py
+++ b/ryu/services/protocols/bgp/core_managers/peer_manager.py
@@ -7,10 +7,6 @@ from ryu.services.protocols.bgp.peer import Peer
from ryu.lib.packet.bgp import BGPPathAttributeCommunities
from ryu.lib.packet.bgp import BGP_ATTR_TYPE_MULTI_EXIT_DISC
from ryu.lib.packet.bgp import BGP_ATTR_TYPE_COMMUNITIES
-from ryu.lib.packet.bgp import RF_IPv4_UC
-from ryu.lib.packet.bgp import RF_IPv6_UC
-from ryu.lib.packet.bgp import RF_IPv4_VPN
-from ryu.lib.packet.bgp import RF_IPv6_VPN
from ryu.lib.packet.bgp import RF_RTC_UC
from ryu.lib.packet.bgp import RouteTargetMembershipNLRI
from ryu.services.protocols.bgp.utils.bgp \
diff --git a/ryu/services/protocols/bgp/core_managers/table_manager.py b/ryu/services/protocols/bgp/core_managers/table_manager.py
index fafbd2aa..7858fea8 100644
--- a/ryu/services/protocols/bgp/core_managers/table_manager.py
+++ b/ryu/services/protocols/bgp/core_managers/table_manager.py
@@ -445,8 +445,8 @@ class TableCoreManager(object):
# of the given path and import this path into them.
route_dist = vpn_path.nlri.route_dist
for vrf_table in interested_tables:
- if not (vpn_path.source is None
- and route_dist == vrf_table.vrf_conf.route_dist):
+ if (vpn_path.source is not None and
+ route_dist != vrf_table.vrf_conf.route_dist):
update_vrf_dest = vrf_table.import_vpn_path(vpn_path)
# Queue the destination for further processing.
if update_vrf_dest is not None:
diff --git a/ryu/services/protocols/bgp/info_base/base.py b/ryu/services/protocols/bgp/info_base/base.py
index 7eb9c48d..7ec54ce0 100644
--- a/ryu/services/protocols/bgp/info_base/base.py
+++ b/ryu/services/protocols/bgp/info_base/base.py
@@ -23,6 +23,7 @@ from abc import ABCMeta
from abc import abstractmethod
from copy import copy
import logging
+import functools
import netaddr
from ryu.lib.packet.bgp import RF_IPv4_UC
@@ -249,8 +250,9 @@ class NonVrfPathProcessingMixin(object):
LOG.debug('New best path selected for destination %s', self)
# If old best path was withdrawn
- if (old_best_path and old_best_path not in self._known_path_list
- and self._sent_routes):
+ if (old_best_path and
+ old_best_path not in self._known_path_list and
+ self._sent_routes):
# Have to clear sent_route list for this destination as
# best path is removed.
self._sent_routes = {}
@@ -810,7 +812,7 @@ class Path(object):
return not interested_rts.isdisjoint(curr_rts)
def is_local(self):
- return self._source == None
+ return self._source is None
def has_nexthop(self):
return not (not self._nexthop or self._nexthop == '0.0.0.0' or
@@ -880,6 +882,7 @@ class Filter(object):
raise NotImplementedError()
+@functools.total_ordering
class PrefixFilter(Filter):
"""
used to specify a prefix for filter.
@@ -934,8 +937,11 @@ class PrefixFilter(Filter):
self._ge = ge
self._le = le
- def __cmp__(self, other):
- return cmp(self.prefix, other.prefix)
+ def __lt__(self, other):
+ return self._network < other._network
+
+ def __eq__(self, other):
+ return self._network == other._network
def __repr__(self):
policy = 'PERMIT' \
@@ -1009,6 +1015,7 @@ class PrefixFilter(Filter):
le=self._le)
+@functools.total_ordering
class ASPathFilter(Filter):
"""
used to specify a prefix for AS_PATH attribute.
@@ -1055,8 +1062,11 @@ class ASPathFilter(Filter):
super(ASPathFilter, self).__init__(policy)
self._as_number = as_number
- def __cmp__(self, other):
- return cmp(self.as_number, other.as_number)
+ def __lt__(self, other):
+ return self.as_number < other.as_number
+
+ def __eq__(self, other):
+ return self.as_number == other.as_number
def __repr__(self):
policy = 'TOP'
@@ -1223,5 +1233,8 @@ class AttributeMap(object):
if self.attr_type == self.ATTR_LOCAL_PREF else None
filter_string = ','.join(repr(f) for f in self.filters)
- return 'AttributeMap(filters=[%s],attribute_type=%s,attribute_value=%s)'\
- % (filter_string, attr_type, self.attr_value)
+ return ('AttributeMap(filters=[%s],'
+ 'attribute_type=%s,'
+ 'attribute_value=%s)' % (filter_string,
+ attr_type,
+ self.attr_value))
diff --git a/ryu/services/protocols/bgp/info_base/vrf.py b/ryu/services/protocols/bgp/info_base/vrf.py
index fe6c3d65..0c7d60cd 100644
--- a/ryu/services/protocols/bgp/info_base/vrf.py
+++ b/ryu/services/protocols/bgp/info_base/vrf.py
@@ -104,8 +104,8 @@ class VrfTable(Table):
local_route_count = 0
for dest in self.values():
for path in dest.known_path_list:
- if (hasattr(path.source, 'version_num')
- or path.source == VPN_TABLE):
+ if (hasattr(path.source, 'version_num') or
+ path.source == VPN_TABLE):
remote_route_count += 1
else:
local_route_count += 1
diff --git a/ryu/services/protocols/bgp/operator/ssh.py b/ryu/services/protocols/bgp/operator/ssh.py
index d4e0bf70..8a584db9 100644
--- a/ryu/services/protocols/bgp/operator/ssh.py
+++ b/ryu/services/protocols/bgp/operator/ssh.py
@@ -22,14 +22,6 @@ import sys
from copy import copy
import os.path
-CONF = {
- "ssh_port": 4990,
- "ssh_host": "localhost",
- "ssh_hostkey": None,
- "ssh_username": "ryu",
- "ssh_password": "ryu",
-}
-
from ryu.lib import hub
from ryu import version
from ryu.services.protocols.bgp.operator.command import Command
@@ -39,6 +31,14 @@ from ryu.services.protocols.bgp.operator.internal_api import InternalApi
from ryu.services.protocols.bgp.operator.command import STATUS_OK
from ryu.services.protocols.bgp.base import Activity
+CONF = {
+ "ssh_port": 4990,
+ "ssh_host": "localhost",
+ "ssh_hostkey": None,
+ "ssh_username": "ryu",
+ "ssh_password": "ryu",
+}
+
LOG = logging.getLogger('bgpspeaker.cli')
@@ -83,7 +83,7 @@ Hello, this is Ryu BGP speaker (version %s).
def _find_ssh_server_key(self):
if CONF["ssh_hostkey"]:
- return paramiko.RSAKey.from_private_key_file(ssh_hostkey)
+ return paramiko.RSAKey.from_private_key_file(CONF['ssh_hostkey'])
elif os.path.exists("/etc/ssh_host_rsa_key"):
# OSX
return paramiko.RSAKey.from_private_key_file(
diff --git a/ryu/services/protocols/bgp/operator/views/fields.py b/ryu/services/protocols/bgp/operator/views/fields.py
index ad219549..bb6dfef9 100644
--- a/ryu/services/protocols/bgp/operator/views/fields.py
+++ b/ryu/services/protocols/bgp/operator/views/fields.py
@@ -1,6 +1,8 @@
import importlib
import inspect
+import six
+
class Field(object):
def __init__(self, field_name):
@@ -19,7 +21,7 @@ class RelatedViewField(Field):
def _operator_view_class(self):
if inspect.isclass(self.__operator_view_class):
return self.__operator_view_class
- elif isinstance(self.__operator_view_class, basestring):
+ elif isinstance(self.__operator_view_class, six.string_types):
try:
module_name, class_name =\
self.__operator_view_class.rsplit('.', 1)
diff --git a/ryu/services/protocols/bgp/peer.py b/ryu/services/protocols/bgp/peer.py
index f95836ce..5c148066 100644
--- a/ryu/services/protocols/bgp/peer.py
+++ b/ryu/services/protocols/bgp/peer.py
@@ -22,7 +22,6 @@ import time
import traceback
from ryu.services.protocols.bgp.base import Activity
-from ryu.services.protocols.bgp.base import OrderedDict
from ryu.services.protocols.bgp.base import Sink
from ryu.services.protocols.bgp.base import Source
from ryu.services.protocols.bgp.base import SUPPORTED_GLOBAL_RF
@@ -49,7 +48,6 @@ from ryu.lib.packet import bgp
from ryu.lib.packet.bgp import RouteFamily
from ryu.lib.packet.bgp import RF_IPv4_UC
-from ryu.lib.packet.bgp import RF_IPv6_UC
from ryu.lib.packet.bgp import RF_IPv4_VPN
from ryu.lib.packet.bgp import RF_IPv6_VPN
from ryu.lib.packet.bgp import RF_RTC_UC
@@ -698,7 +696,8 @@ class Peer(Source, Sink, NeighborConfListener, Activity):
# Collect update statistics.
self.state.incr(PeerCounterNames.SENT_UPDATES)
else:
- LOG.debug('prefix : %s is not sent by filter : %s', path.nlri, blocked_cause)
+ LOG.debug('prefix : %s is not sent by filter : %s',
+ path.nlri, blocked_cause)
# We have to create sent_route for every OutgoingRoute which is
# not a withdraw or was for route-refresh msg.
@@ -1035,7 +1034,7 @@ class Peer(Source, Sink, NeighborConfListener, Activity):
if self._neigh_conf.enabled:
self._connect_retry_event.set()
- while 1:
+ while True:
self._connect_retry_event.wait()
# Reconnecting immediately after closing connection may be not very
@@ -1065,11 +1064,11 @@ class Peer(Source, Sink, NeighborConfListener, Activity):
tcp_conn_timeout = self._common_conf.tcp_conn_timeout
try:
password = self._neigh_conf.password
- sock = self._connect_tcp(peer_address,
- client_factory,
- time_out=tcp_conn_timeout,
- bind_address=bind_addr,
- password=password)
+ self._connect_tcp(peer_address,
+ client_factory,
+ time_out=tcp_conn_timeout,
+ bind_address=bind_addr,
+ password=password)
except socket.error:
self.state.bgp_state = const.BGP_FSM_ACTIVE
if LOG.isEnabledFor(logging.DEBUG):
@@ -1405,7 +1404,8 @@ class Peer(Source, Sink, NeighborConfListener, Activity):
tm = self._core_service.table_manager
tm.learn_path(new_path)
else:
- LOG.debug('prefix : %s is blocked by in-bound filter: %s', msg_nlri, blocked_cause)
+ LOG.debug('prefix : %s is blocked by in-bound filter: %s',
+ msg_nlri, blocked_cause)
# If update message had any qualifying new paths, do some book-keeping.
if msg_nlri_list:
@@ -1467,7 +1467,8 @@ class Peer(Source, Sink, NeighborConfListener, Activity):
tm = self._core_service.table_manager
tm.learn_path(w_path)
else:
- LOG.debug('prefix : %s is blocked by in-bound filter: %s', nlri_str, blocked_cause)
+ LOG.debug('prefix : %s is blocked by in-bound filter: %s',
+ nlri_str, blocked_cause)
def _extract_and_handle_mpbgp_new_paths(self, update_msg):
"""Extracts new paths advertised in the given update message's
@@ -1562,7 +1563,8 @@ class Peer(Source, Sink, NeighborConfListener, Activity):
tm = self._core_service.table_manager
tm.learn_path(new_path)
else:
- LOG.debug('prefix : %s is blocked by in-bound filter: %s', msg_nlri, blocked_cause)
+ LOG.debug('prefix : %s is blocked by in-bound filter: %s',
+ msg_nlri, blocked_cause)
# If update message had any qualifying new paths, do some book-keeping.
if msg_nlri_list:
@@ -1623,7 +1625,8 @@ class Peer(Source, Sink, NeighborConfListener, Activity):
tm = self._core_service.table_manager
tm.learn_path(w_path)
else:
- LOG.debug('prefix : %s is blocked by in-bound filter: %s', w_nlri, blocked_cause)
+ LOG.debug('prefix : %s is blocked by in-bound filter: %s',
+ w_nlri, blocked_cause)
def _handle_eor(self, route_family):
"""Currently we only handle EOR for RTC address-family.
diff --git a/ryu/services/protocols/bgp/rtconf/base.py b/ryu/services/protocols/bgp/rtconf/base.py
index ee8948a9..0ea026de 100644
--- a/ryu/services/protocols/bgp/rtconf/base.py
+++ b/ryu/services/protocols/bgp/rtconf/base.py
@@ -18,6 +18,7 @@
"""
from abc import ABCMeta
from abc import abstractmethod
+import functools
import numbers
import logging
import six
@@ -479,6 +480,7 @@ class ConfWithStatsListener(BaseConfListener):
raise NotImplementedError()
+@functools.total_ordering
class ConfEvent(object):
"""Encapsulates configuration settings change/update event."""
@@ -517,9 +519,13 @@ class ConfEvent(object):
return ('ConfEvent(src=%s, name=%s, value=%s)' %
(self.src, self.name, self.value))
- def __cmp__(self, other):
- return cmp((other.src, other.name, other.value),
- (self.src, self.name, self.value))
+ def __lt__(self, other):
+ return ((self.src, self.name, self.value) <
+ (other.src, other.name, other.value))
+
+ def __eq__(self, other):
+ return ((self.src, self.name, self.value) ==
+ (other.src, other.name, other.value))
# =============================================================================
@@ -598,10 +604,10 @@ def validate_cap_mbgp_ipv4(cmv4):
@validate(name=CAP_MBGP_IPV6)
-def validate_cap_mbgp_ipv4(cmv6):
+def validate_cap_mbgp_ipv6(cmv6):
if cmv6 not in (True, False):
raise ConfigTypeError(desc='Invalid Enhanced Refresh capability '
- 'settings: %s boolean value expected' % cmv4)
+ 'settings: %s boolean value expected' % cmv6)
return cmv6
diff --git a/ryu/services/protocols/bgp/rtconf/common.py b/ryu/services/protocols/bgp/rtconf/common.py
index cfef8419..d285bb6d 100644
--- a/ryu/services/protocols/bgp/rtconf/common.py
+++ b/ryu/services/protocols/bgp/rtconf/common.py
@@ -129,10 +129,11 @@ def validate_refresh_max_eor_time(rmet):
@validate(name=LABEL_RANGE)
def validate_label_range(label_range):
min_label, max_label = label_range
- if (not min_label or not max_label
- or not isinstance(min_label, numbers.Integral)
- or not isinstance(max_label, numbers.Integral) or min_label < 17
- or min_label >= max_label):
+ if (not min_label or
+ not max_label or
+ not isinstance(min_label, numbers.Integral) or
+ not isinstance(max_label, numbers.Integral) or min_label < 17 or
+ min_label >= max_label):
raise ConfigValueError(desc=('Invalid label_range configuration value:'
' (%s).' % label_range))
diff --git a/ryu/services/protocols/bgp/rtconf/neighbors.py b/ryu/services/protocols/bgp/rtconf/neighbors.py
index 5efe383c..4ab0d576 100644
--- a/ryu/services/protocols/bgp/rtconf/neighbors.py
+++ b/ryu/services/protocols/bgp/rtconf/neighbors.py
@@ -60,7 +60,6 @@ from ryu.services.protocols.bgp.rtconf.base import SITE_OF_ORIGINS
from ryu.services.protocols.bgp.rtconf.base import validate
from ryu.services.protocols.bgp.rtconf.base import validate_med
from ryu.services.protocols.bgp.rtconf.base import validate_soo_list
-from ryu.services.protocols.bgp.utils.validation import is_valid_ipv4
from ryu.services.protocols.bgp.utils.validation import is_valid_old_asn
from ryu.services.protocols.bgp.info_base.base import Filter
from ryu.services.protocols.bgp.info_base.base import PrefixFilter
diff --git a/ryu/services/protocols/bgp/rtconf/vrfs.py b/ryu/services/protocols/bgp/rtconf/vrfs.py
index ea9c695c..ecf6463c 100644
--- a/ryu/services/protocols/bgp/rtconf/vrfs.py
+++ b/ryu/services/protocols/bgp/rtconf/vrfs.py
@@ -22,7 +22,6 @@ import logging
from ryu.lib.packet.bgp import RF_IPv4_UC
from ryu.lib.packet.bgp import RF_IPv6_UC
-from ryu.lib.packet.bgp import BGPPathAttributeExtendedCommunities
from ryu.services.protocols.bgp.utils import validation
from ryu.services.protocols.bgp.base import get_validator
diff --git a/ryu/services/protocols/bgp/signals/__init__.py b/ryu/services/protocols/bgp/signals/__init__.py
index 0b69c99d..27d60d48 100644
--- a/ryu/services/protocols/bgp/signals/__init__.py
+++ b/ryu/services/protocols/bgp/signals/__init__.py
@@ -1,5 +1,4 @@
-__author__ = 'yak'
-
from ryu.services.protocols.bgp.signals.base import SignalBus
__all__ = [SignalBus]
+__author__ = 'yak'
diff --git a/ryu/services/protocols/bgp/speaker.py b/ryu/services/protocols/bgp/speaker.py
index 1e92166b..fd6af442 100644
--- a/ryu/services/protocols/bgp/speaker.py
+++ b/ryu/services/protocols/bgp/speaker.py
@@ -24,14 +24,11 @@ from socket import IPPROTO_TCP, TCP_NODELAY
from eventlet import semaphore
from ryu.lib.packet import bgp
-from ryu.lib.packet.bgp import RouteFamily
-from ryu.lib.packet.bgp import RF_RTC_UC
from ryu.lib.packet.bgp import BGPMessage
from ryu.lib.packet.bgp import BGPOpen
from ryu.lib.packet.bgp import BGPUpdate
from ryu.lib.packet.bgp import BGPKeepAlive
from ryu.lib.packet.bgp import BGPNotification
-from ryu.lib.packet.bgp import BGPRouteRefresh
from ryu.lib.packet.bgp import BGP_MSG_OPEN
from ryu.lib.packet.bgp import BGP_MSG_UPDATE
from ryu.lib.packet.bgp import BGP_MSG_KEEPALIVE
@@ -39,7 +36,6 @@ from ryu.lib.packet.bgp import BGP_MSG_NOTIFICATION
from ryu.lib.packet.bgp import BGP_MSG_ROUTE_REFRESH
from ryu.lib.packet.bgp import BGP_CAP_ENHANCED_ROUTE_REFRESH
from ryu.lib.packet.bgp import BGP_CAP_MULTIPROTOCOL
-from ryu.lib.packet.bgp import BGP_CAP_ROUTE_REFRESH
from ryu.lib.packet.bgp import BGP_ERROR_HOLD_TIMER_EXPIRED
from ryu.lib.packet.bgp import BGP_ERROR_SUB_HOLD_TIMER_EXPIRED
from ryu.lib.packet.bgp import get_rf
@@ -143,7 +139,7 @@ class BgpProtocol(Protocol, Activity):
'`BgpProtocol`')
# Compare protocol connection end point's addresses
- if (self._remotename[0] == other_protoco._remotename[0] and
+ if (self._remotename[0] == other_protocol._remotename[0] and
self._localname[0] == other_protocol._localname[0]):
return True
@@ -324,25 +320,23 @@ class BgpProtocol(Protocol, Activity):
raise bgp.NotSync()
# Check if we have valid bgp message length.
- check = lambda: length < BGP_MIN_MSG_LEN\
- or length > BGP_MAX_MSG_LEN
+ check = (length < BGP_MIN_MSG_LEN or length > BGP_MAX_MSG_LEN)
# RFC says: The minimum length of the OPEN message is 29
# octets (including the message header).
- check2 = lambda: ptype == BGP_MSG_OPEN\
- and length < BGPOpen._MIN_LEN
+ check2 = (ptype == BGP_MSG_OPEN and length < BGPOpen._MIN_LEN)
# RFC says: A KEEPALIVE message consists of only the
# message header and has a length of 19 octets.
- check3 = lambda: ptype == BGP_MSG_KEEPALIVE\
- and length != BGPKeepAlive._MIN_LEN
+ check3 = (ptype == BGP_MSG_KEEPALIVE and
+ length != BGPKeepAlive._MIN_LEN)
# RFC says: The minimum length of the UPDATE message is 23
# octets.
- check4 = lambda: ptype == BGP_MSG_UPDATE\
- and length < BGPUpdate._MIN_LEN
+ check4 = (ptype == BGP_MSG_UPDATE and
+ length < BGPUpdate._MIN_LEN)
- if check() or check2() or check3() or check4():
+ if any((check, check2, check3, check4)):
raise bgp.BadLen(ptype, length)
# If we have partial message we wait for rest of the message.
@@ -380,7 +374,7 @@ class BgpProtocol(Protocol, Activity):
self._sendlock.acquire()
try:
self._socket.sendall(msg.serialize())
- except socket.error as err:
+ except socket.error:
self.connection_lost('failed to write to socket')
finally:
self._sendlock.release()