From 81d5d8f56899eb6d52cd7acc67289125cd97a038 Mon Sep 17 00:00:00 2001 From: IWASE Yusuke Date: Mon, 26 Sep 2016 13:59:54 +0900 Subject: [PATCH] BGPSpeaker: Fix to enable to notify peer down If BGPSpeaker.neighbor_del() is called, an event to notify peer down via _notify_peer_down() method will be generated. But when _notify_peer_down() method is called, peer.protocol is already cleaned up with None, so _notify_peer_down() method will fail to get the neighbor info (IP address, AS number). This patch fixes to retrieve the neighbor info from the neighbor configuration info of Peer class and fixes this problem. Signed-off-by: IWASE Yusuke Signed-off-by: FUJITA Tomonori --- ryu/services/protocols/bgp/bgpspeaker.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ryu/services/protocols/bgp/bgpspeaker.py b/ryu/services/protocols/bgp/bgpspeaker.py index 2243ecb6..946eb34c 100644 --- a/ryu/services/protocols/bgp/bgpspeaker.py +++ b/ryu/services/protocols/bgp/bgpspeaker.py @@ -211,8 +211,8 @@ class BGPSpeaker(object): hub.spawn(ssh.SSH_CLI_CONTROLLER.start) def _notify_peer_down(self, peer): - remote_ip = peer.protocol.recv_open_msg.bgp_identifier - remote_as = peer.protocol.recv_open_msg.my_as + remote_ip = peer.ip_address + remote_as = peer.remote_as if self._peer_down_handler: self._peer_down_handler(remote_ip, remote_as)