summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIgor Ryzhov <iryzhov@nfware.com>2021-09-07 22:24:57 +0300
committerIgor Ryzhov <iryzhov@nfware.com>2021-09-08 23:43:55 +0300
commit484fc3741bbe724cc96bf3f0dec13e378b7bd500 (patch)
treebba20d58965d794c93fb4f7fb49050f2def122b0
parent2ca7780ab594aaa31239ce4ccde64e3d66de019e (diff)
bgpd: move rpki source after the server config
Currently the source IP parameter must be entered between destination IP and destination port parameters. This is not obviously understandable when you read such config so let's move the source parameter to the end of the command line, after the whole list of destination parameters. We can do this without any deprecation cycle as the parameter was introduced just recently and isn't in any public release yet. Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
-rw-r--r--bgpd/bgp_rpki.c27
-rw-r--r--doc/user/rpki.rst8
2 files changed, 17 insertions, 18 deletions
diff --git a/bgpd/bgp_rpki.c b/bgpd/bgp_rpki.c
index 648456ac49..6a89a7195c 100644
--- a/bgpd/bgp_rpki.c
+++ b/bgpd/bgp_rpki.c
@@ -923,25 +923,25 @@ static int config_write(struct vty *vty)
#endif
case TCP:
tcp_config = cache->tr_config.tcp_config;
- vty_out(vty, " rpki cache %s%s%s %s ", tcp_config->host,
- tcp_config->bindaddr ? " source " : "",
- tcp_config->bindaddr ? tcp_config->bindaddr
- : "",
+ vty_out(vty, " rpki cache %s %s ", tcp_config->host,
tcp_config->port);
+ if (tcp_config->bindaddr)
+ vty_out(vty, "source %s ",
+ tcp_config->bindaddr);
break;
#if defined(FOUND_SSH)
case SSH:
ssh_config = cache->tr_config.ssh_config;
- vty_out(vty, " rpki cache %s%s%s %u %s %s %s ",
- ssh_config->host,
- ssh_config->bindaddr ? "source " : "",
- ssh_config->bindaddr ? ssh_config->bindaddr
- : "",
- ssh_config->port, ssh_config->username,
+ vty_out(vty, " rpki cache %s %u %s %s %s ",
+ ssh_config->host, ssh_config->port,
+ ssh_config->username,
ssh_config->client_privkey_path,
ssh_config->server_hostkey_path != NULL
? ssh_config->server_hostkey_path
: " ");
+ if (ssh_config->bindaddr)
+ vty_out(vty, "source %s ",
+ ssh_config->bindaddr);
break;
#endif
default:
@@ -1067,19 +1067,18 @@ DEFUN (no_rpki_retry_interval,
}
DEFPY(rpki_cache, rpki_cache_cmd,
- "rpki cache <A.B.C.D|WORD> [source <A.B.C.D>$bindaddr] "
- "<TCPPORT|(1-65535)$sshport SSH_UNAME SSH_PRIVKEY SSH_PUBKEY [SERVER_PUBKEY]> preference (1-255)",
+ "rpki cache <A.B.C.D|WORD> <TCPPORT|(1-65535)$sshport SSH_UNAME SSH_PRIVKEY SSH_PUBKEY [SERVER_PUBKEY]> [source <A.B.C.D>$bindaddr] preference (1-255)",
RPKI_OUTPUT_STRING
"Install a cache server to current group\n"
"IP address of cache server\n Hostname of cache server\n"
- "Configure source IP address of RPKI connection\n"
- "Define a Source IP Address\n"
"TCP port number\n"
"SSH port number\n"
"SSH user name\n"
"Path to own SSH private key\n"
"Path to own SSH public key\n"
"Path to Public key of cache server\n"
+ "Configure source IP address of RPKI connection\n"
+ "Define a Source IP Address\n"
"Preference of the cache server\n"
"Preference value\n")
{
diff --git a/doc/user/rpki.rst b/doc/user/rpki.rst
index 8d836bfc4b..235df56528 100644
--- a/doc/user/rpki.rst
+++ b/doc/user/rpki.rst
@@ -109,7 +109,7 @@ The following commands are independent of a specific cache server.
The following commands configure one or multiple cache servers.
-.. clicmd:: rpki cache (A.B.C.D|WORD) [source A.B.C.D] PORT [SSH_USERNAME] [SSH_PRIVKEY_PATH] [SSH_PUBKEY_PATH] [KNOWN_HOSTS_PATH] PREFERENCE
+.. clicmd:: rpki cache (A.B.C.D|WORD) PORT [SSH_USERNAME] [SSH_PRIVKEY_PATH] [SSH_PUBKEY_PATH] [KNOWN_HOSTS_PATH] [source A.B.C.D] PREFERENCE
Add a cache server to the socket. By default, the connection between router
@@ -120,9 +120,6 @@ The following commands are independent of a specific cache server.
A.B.C.D|WORD
Address of the cache server.
- source A.B.C.D
- Source address of the RPKI connection to access cache server.
-
PORT
Port number to connect to the cache server
@@ -143,6 +140,9 @@ The following commands are independent of a specific cache server.
on the configuration of the operating system environment, usually
:file:`~/.ssh/known_hosts`.
+ source A.B.C.D
+ Source address of the RPKI connection to access cache server.
+
.. _validating-bgp-updates: