]> git.puffer.fish Git - mirror/frr.git/commitdiff
bgpd: Show which RPKI server we are connected to 11138/head
authorDonatas Abraitis <donatas@opensourcerouting.org>
Tue, 3 May 2022 14:47:10 +0000 (17:47 +0300)
committerDonatas Abraitis <donatas@opensourcerouting.org>
Tue, 3 May 2022 19:09:04 +0000 (22:09 +0300)
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>
bgpd/bgp_rpki.c

index 96e1ab5c25c5dce99baca2b50173100248e1e026..0612e078cf8f2975c9ae6c89676d98a98ab62312 100644 (file)
@@ -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;
                }
        }