mirror of
https://gitlab.nic.cz/labs/bird.git
synced 2024-12-22 09:41:54 +00:00
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.
This commit is contained in:
parent
2a8cc7259e
commit
17663b6a7c
@ -837,7 +837,7 @@ rpki_show_proto_info(struct proto *P)
|
|||||||
case RPKI_TR_TCP: transport_name = "Unprotected over TCP"; break;
|
case RPKI_TR_TCP: transport_name = "Unprotected over TCP"; break;
|
||||||
};
|
};
|
||||||
|
|
||||||
cli_msg(-1006, " Cache server: %s", rpki_get_cache_ident(cache));
|
cli_msg(-1006, " Cache server: %s", cf->hostname);
|
||||||
cli_msg(-1006, " Status: %s", rpki_cache_state_to_str(cache->state));
|
cli_msg(-1006, " Status: %s", rpki_cache_state_to_str(cache->state));
|
||||||
cli_msg(-1006, " Transport: %s", transport_name);
|
cli_msg(-1006, " Transport: %s", transport_name);
|
||||||
cli_msg(-1006, " Protocol version: %u", cache->version);
|
cli_msg(-1006, " Protocol version: %u", cache->version);
|
||||||
|
@ -47,17 +47,15 @@ rpki_tr_ssh_ident(struct rpki_tr_sock *tr)
|
|||||||
struct rpki_cache *cache = tr->cache;
|
struct rpki_cache *cache = tr->cache;
|
||||||
struct rpki_config *cf = (void *) cache->p->p.cf;
|
struct rpki_config *cf = (void *) cache->p->p.cf;
|
||||||
struct rpki_tr_ssh_config *ssh_cf = (void *) cf->tr_config.spec;
|
struct rpki_tr_ssh_config *ssh_cf = (void *) cf->tr_config.spec;
|
||||||
|
const char *username = ssh_cf->user;
|
||||||
|
|
||||||
if (tr->ident != NULL)
|
if (tr->ident != NULL)
|
||||||
return tr->ident;
|
return tr->ident;
|
||||||
|
|
||||||
const char *username = ssh_cf->user;
|
/* Length: <user> + '@' + <host> + ' port ' + <port> + '\0' */
|
||||||
const char *host = cf->hostname;
|
size_t len = strlen(username) + 1 + strlen(cf->hostname) + 1 + 5 + 1;
|
||||||
u16 port = cf->port;
|
|
||||||
|
|
||||||
size_t len = strlen(username) + 1 + strlen(host) + 1 + 5 + 1; /* <user> + '@' + <host> + ':' + <port> + '\0' */
|
|
||||||
char *ident = mb_alloc(cache->pool, len);
|
char *ident = mb_alloc(cache->pool, len);
|
||||||
bsnprintf(ident, len, "%s@%s:%u", username, host, port);
|
bsnprintf(ident, len, "%s@%s:%u", username, cf->hostname, cf->port);
|
||||||
tr->ident = ident;
|
tr->ident = ident;
|
||||||
|
|
||||||
return tr->ident;
|
return tr->ident;
|
||||||
|
@ -43,24 +43,12 @@ rpki_tr_tcp_ident(struct rpki_tr_sock *tr)
|
|||||||
if (tr->ident != NULL)
|
if (tr->ident != NULL)
|
||||||
return tr->ident;
|
return tr->ident;
|
||||||
|
|
||||||
const char *host = cf->hostname;
|
/* Length: <host> + ':' + <port> + '\0' */
|
||||||
ip_addr ip = cf->ip;
|
size_t len = strlen(cf->hostname) + 1 + 5 + 1;
|
||||||
u16 port = cf->port;
|
char *ident = mb_alloc(cache->pool, len);
|
||||||
|
bsnprintf(ident, len, "%s:%u", cf->hostname, 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);
|
|
||||||
|
|
||||||
tr->ident = ident;
|
tr->ident = ident;
|
||||||
|
|
||||||
return tr->ident;
|
return tr->ident;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user