mirror of
https://github.com/OpenVPN/openvpn.git
synced 2026-05-28 04:03:29 -04:00
add flag to print addresses in a consistent format during float
Introduce the MAPF_SHOW_FAMILY flag to prepend the address family to the address when printing an mroute_addr object, similar to print_sockaddr_ex(). This ensures that when logging a float operation, both the old and new addresses are printed in the same format: $proto:[$family]$address:$port. Note: when using this flag with an IPv4-mapped IPv6 address, the output will appear as: [AF_INET6]a.b.c.d Change-Id: I43cd3d564d8c6ad4e41de5a38130d90cb6778395 Signed-off-by: Ralf Lici <ralf@mandelbit.com> Acked-by: Gert Doering <gert@greenie.muc.de> Message-Id: <20250725194147.17517-1-gert@greenie.muc.de> URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg32345.html Signed-off-by: Gert Doering <gert@greenie.muc.de>
This commit is contained in:
parent
f353b7100c
commit
7d5ec053f0
3 changed files with 11 additions and 2 deletions
|
|
@ -415,6 +415,10 @@ mroute_addr_print_ex(const struct mroute_addr *ma,
|
|||
{
|
||||
buf_printf(&out, "%s:", proto2ascii(maddr.proto, AF_INET, false));
|
||||
}
|
||||
if (flags & MAPF_SHOW_FAMILY)
|
||||
{
|
||||
buf_printf(&out, "[AF_INET]");
|
||||
}
|
||||
buf_printf(&out, "%s", print_in_addr_t(ntohl(maddr.v4.addr),
|
||||
(flags & MAPF_IA_EMPTY_IF_UNDEF) ? IA_EMPTY_IF_UNDEF : 0, gc));
|
||||
if (maddr.type & MR_WITH_NETBITS)
|
||||
|
|
@ -442,6 +446,10 @@ mroute_addr_print_ex(const struct mroute_addr *ma,
|
|||
{
|
||||
buf_printf(&out, "%s:", proto2ascii(maddr.proto, AF_INET6, false));
|
||||
}
|
||||
if (flags & MAPF_SHOW_FAMILY)
|
||||
{
|
||||
buf_printf(&out, "[AF_INET6]");
|
||||
}
|
||||
if (IN6_IS_ADDR_V4MAPPED( &maddr.v6.addr ) )
|
||||
{
|
||||
buf_printf(&out, "%s", print_in_addr_t(maddr.v4mappedv6.addr,
|
||||
|
|
|
|||
|
|
@ -150,6 +150,7 @@ const char *mroute_addr_print(const struct mroute_addr *ma,
|
|||
#define MAPF_SUBNET (1<<0)
|
||||
#define MAPF_IA_EMPTY_IF_UNDEF (1<<1)
|
||||
#define MAPF_SHOW_ARP (1<<2)
|
||||
#define MAPF_SHOW_FAMILY (1<<3)
|
||||
const char *mroute_addr_print_ex(const struct mroute_addr *ma,
|
||||
const unsigned int flags,
|
||||
struct gc_arena *gc);
|
||||
|
|
|
|||
|
|
@ -3275,8 +3275,8 @@ multi_process_float(struct multi_context *m, struct multi_instance *mi,
|
|||
msg(D_MULTI_MEDIUM, "peer %" PRIu32 " (%s) floated from %s to %s",
|
||||
mi->context.c2.tls_multi->peer_id,
|
||||
tls_common_name(mi->context.c2.tls_multi, false),
|
||||
mroute_addr_print(&mi->real, &gc),
|
||||
print_link_socket_actual(&m->top.c2.from, &gc));
|
||||
mroute_addr_print_ex(&mi->real, MAPF_SHOW_FAMILY, &gc),
|
||||
mroute_addr_print_ex(&real, MAPF_SHOW_FAMILY, &gc));
|
||||
|
||||
/* remove old address from hash table before changing address */
|
||||
ASSERT(hash_remove(m->hash, &mi->real));
|
||||
|
|
|
|||
Loading…
Reference in a new issue