diff options
author | FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | 2015-09-23 13:01:42 +0900 |
---|---|---|
committer | FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | 2015-09-23 13:14:32 +0900 |
commit | 571f6a1c5ac4e5f50c34ab9955c7c20556e61355 (patch) | |
tree | a568b7aca7808a3e076abe1a266b0585363a31f3 | |
parent | 448ebe99e9dc42f62bc1cc9b2e49228c9a2b6a61 (diff) |
bgp: support disabling listening socket
Setting bgp_server_port to 0 disables listening socket
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
-rw-r--r-- | ryu/services/protocols/bgp/core.py | 12 | ||||
-rw-r--r-- | ryu/services/protocols/bgp/rtconf/common.py | 2 |
2 files changed, 8 insertions, 6 deletions
diff --git a/ryu/services/protocols/bgp/core.py b/ryu/services/protocols/bgp/core.py index 59a37aa2..3e0caa84 100644 --- a/ryu/services/protocols/bgp/core.py +++ b/ryu/services/protocols/bgp/core.py @@ -228,11 +228,13 @@ class CoreService(Factory, Activity): server_addr = (CORE_IP, self._common_config.bgp_server_port) waiter = kwargs.pop('waiter') waiter.set() - server_thread, sockets = self._listen_tcp(server_addr, - self.start_protocol) - self.listen_sockets = sockets - - server_thread.wait() + if self._common_config.bgp_server_port != 0: + server_thread, sockets = self._listen_tcp(server_addr, + self.start_protocol) + self.listen_sockets = sockets + server_thread.wait() + else: + self.listen_sockets = {} processor_thread.wait() # ======================================================================== diff --git a/ryu/services/protocols/bgp/rtconf/common.py b/ryu/services/protocols/bgp/rtconf/common.py index b4ac8daf..cfef8419 100644 --- a/ryu/services/protocols/bgp/rtconf/common.py +++ b/ryu/services/protocols/bgp/rtconf/common.py @@ -144,7 +144,7 @@ def validate_bgp_server_port(server_port): if not isinstance(server_port, numbers.Integral): raise ConfigTypeError(desc=('Invalid bgp sever port configuration ' 'value %s' % server_port)) - if server_port <= 0 or server_port > 65535: + if server_port < 0 or server_port > 65535: raise ConfigValueError(desc='Invalid server port %s' % server_port) return server_port |