summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDonatas Abraitis <donatas@opensourcerouting.org>2022-05-03 17:47:10 +0300
committerDonatas Abraitis <donatas@opensourcerouting.org>2022-05-03 22:09:04 +0300
commitc1a68b6245865923bce5c15a65ca08a8de9f0926 (patch)
tree2b37efcda304563140f17a3fe9c0cd8347feb420
parent8f14ae47c1948bf8ae26bcc74b9ee5f3b7835675 (diff)
bgpd: Show which RPKI server we are connected to
Before we just showed always the first server which is wrong. Now we have: ``` spine1-debian-11# show rpki cache-connection Connected to group 1 rpki tcp cache 192.168.10.17 8283 pref 1 rpki tcp cache 192.168.10.17 8282 pref 2 (connected) ``` Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
-rw-r--r--bgpd/bgp_rpki.c45
1 files changed, 23 insertions, 22 deletions
diff --git a/bgpd/bgp_rpki.c b/bgpd/bgp_rpki.c
index 96e1ab5c25..0612e078cf 100644
--- a/bgpd/bgp_rpki.c
+++ b/bgpd/bgp_rpki.c
@@ -1332,32 +1332,33 @@ DEFUN (show_rpki_cache_connection,
}
vty_out(vty, "Connected to group %d\n", group->preference);
for (ALL_LIST_ELEMENTS_RO(cache_list, cache_node, cache)) {
- if (cache->preference == group->preference) {
- struct tr_tcp_config *tcp_config;
+ struct tr_tcp_config *tcp_config;
#if defined(FOUND_SSH)
- struct tr_ssh_config *ssh_config;
+ struct tr_ssh_config *ssh_config;
#endif
-
- switch (cache->type) {
- case TCP:
- tcp_config = cache->tr_config.tcp_config;
- vty_out(vty, "rpki tcp cache %s %s pref %hhu\n",
- tcp_config->host, tcp_config->port,
- cache->preference);
- break;
-
+ switch (cache->type) {
+ case TCP:
+ tcp_config = cache->tr_config.tcp_config;
+ vty_out(vty, "rpki tcp cache %s %s pref %hhu%s\n",
+ tcp_config->host, tcp_config->port,
+ cache->preference,
+ cache->rtr_socket->state == RTR_ESTABLISHED
+ ? " (connected)"
+ : "");
+ break;
#if defined(FOUND_SSH)
- case SSH:
- ssh_config = cache->tr_config.ssh_config;
- vty_out(vty, "rpki ssh cache %s %u pref %hhu\n",
- ssh_config->host, ssh_config->port,
- cache->preference);
- break;
+ case SSH:
+ ssh_config = cache->tr_config.ssh_config;
+ vty_out(vty, "rpki ssh cache %s %u pref %hhu%s\n",
+ ssh_config->host, ssh_config->port,
+ cache->preference,
+ cache->rtr_socket->state == RTR_ESTABLISHED
+ ? " (connected)"
+ : "");
+ break;
#endif
-
- default:
- break;
- }
+ default:
+ break;
}
}