diff options
author | Ondrej Zajicek (work) <santiago@crfreenet.org> | 2021-01-07 05:56:34 +0100 |
---|---|---|
committer | Ondrej Zajicek (work) <santiago@crfreenet.org> | 2021-01-07 06:04:31 +0100 |
commit | 17663b6a7c505226cfe9ccc0671611075a3dff57 (patch) | |
tree | 45bff7762a01dad8ddcca0826d71bc3083e6137a /proto/rpki/tcp_transport.c | |
parent | 2a8cc7259e236773f1b8423ef63305a5b8bfd652 (diff) |
RPKI: Remove port (and SSH username) from 'Cache server' output line
It was mixed-up if hostname is IPv6 address, and reporting separate
values (like port) on separate lines fits better into key-value style
of 'show protocols all' output. Also, the patch simplifies transport
identification formatting (although it is unused now).
Thanks to Alarig Le Lay for the suggestion.
Diffstat (limited to 'proto/rpki/tcp_transport.c')
-rw-r--r-- | proto/rpki/tcp_transport.c | 22 |
1 files changed, 5 insertions, 17 deletions
diff --git a/proto/rpki/tcp_transport.c b/proto/rpki/tcp_transport.c index 0d3c7e99..132f8e2d 100644 --- a/proto/rpki/tcp_transport.c +++ b/proto/rpki/tcp_transport.c @@ -43,24 +43,12 @@ rpki_tr_tcp_ident(struct rpki_tr_sock *tr) if (tr->ident != NULL) return tr->ident; - const char *host = cf->hostname; - ip_addr ip = cf->ip; - u16 port = cf->port; - - size_t colon_and_port_len = 6; /* max ":65535" */ - size_t ident_len; - if (host) - ident_len = strlen(host) + colon_and_port_len + 1; - else - ident_len = IPA_MAX_TEXT_LENGTH + colon_and_port_len + 1; - - char *ident = mb_alloc(cache->pool, ident_len); - if (host) - bsnprintf(ident, ident_len, "%s:%u", host, port); - else - bsnprintf(ident, ident_len, "%I:%u", ip, port); - + /* Length: <host> + ':' + <port> + '\0' */ + size_t len = strlen(cf->hostname) + 1 + 5 + 1; + char *ident = mb_alloc(cache->pool, len); + bsnprintf(ident, len, "%s:%u", cf->hostname, cf->port); tr->ident = ident; + return tr->ident; } |