Re: [PATCH net-next 11/11] tools: ynl: add ipv4-or-v6 display hint
From: Asbjørn Sloth Tønnesen <hidden>
Date: 2025-09-06 15:59:13
Also in:
lkml
On 9/5/25 10:53 AM, Donald Hunter wrote:
Asbjørn Sloth Tønnesen [off-list ref] writes:quoted
The attribute WGALLOWEDIP_A_IPADDR can contain either an IPv4 or an IPv6 address depending on WGALLOWEDIP_A_FAMILY, however in practice it is enough to look at the attribute length. This patch implements an ipv4-or-v6 display hint, that can deal with this kind of attribute. It only implements this display hint for genetlink-legacy, it can be added to other protocol variants if needed, but we don't want to encourage it's use. Signed-off-by: Asbjørn Sloth Tønnesen <redacted>Reviewed-by: Donald Hunter <donald.hunter@gmail.com> I suspect there are occurrences of ipv4 or ipv6 in the existing specs that really should be ipv4-or-ipv6 but the python code doesn't care.
I haven't been able to find any, containing 'ip' or 'addr'.
Speaking of display hints, then WGPEER_A_ENDPOINT is another interesting
case, it is struct sockaddr_in or struct sockaddr_in6, I have left that
as a plain binary for now, but maybe that could be a struct map, based
on struct length.
attribute-sets:
-
name: wgpeer
[..]
attributes:
[..]
-
name: endpoint
type: binary
struct-map:
- sockaddr_in
- sockaddr_in6
With the requirement being, that all structs must have a unique length.