- if (is_ipv6)
- {
- memcpy (rmp->src_address, t->local.ip6.as_u8, 16);
- memcpy (rmp->dst_address, t->remote.ip6.as_u8, 16);
- rmp->encap_vrf_id = htonl (im6->fibs[t->encap_fib_index].ft_table_id);
- }
- else
- {
- memcpy (rmp->src_address, t->local.ip4.as_u8, 4);
- memcpy (rmp->dst_address, t->remote.ip4.as_u8, 4);
- rmp->encap_vrf_id = htonl (im4->fibs[t->encap_fib_index].ft_table_id);
- }
+ ip_address_encode (&t->local, is_ipv6 ? IP46_TYPE_IP6 : IP46_TYPE_IP4,
+ &rmp->src_address);
+ ip_address_encode (&t->remote, is_ipv6 ? IP46_TYPE_IP6 : IP46_TYPE_IP4,
+ &rmp->dst_address);
+ rmp->encap_vrf_id =
+ htonl (is_ipv6 ? im6->fibs[t->encap_fib_index].
+ ft_table_id : im4->fibs[t->encap_fib_index].ft_table_id);
+