[PATCH net-next 11/11] tools: ynl: add ipv4-or-v6 display hint
Asbjørn Sloth Tønnesen
ast at fiberby.net
Sat Sep 6 15:59:12 UTC 2025
On 9/5/25 10:53 AM, Donald Hunter wrote:
> Asbjørn Sloth Tønnesen <ast at fiberby.net> writes:
>> 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 <ast at fiberby.net>
>
> Reviewed-by: Donald Hunter <donald.hunter at 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.
More information about the WireGuard
mailing list