netlink: specs: support ipv4-or-v6 for dual-stack fields

Since commit 1b255e1bea ("tools: ynl: add ipv4-or-v6 display hint"), we
can display either IPv4 or IPv6 addresses for a single field based on the
address family. However, most dual-stack fields still use the ipv4 display
hint. This update changes them to use the new ipv4-or-v6 display hint and
converts IPv4-only fields to use the u32 type.

Field changes:
  - v4-or-v6
    - IFA_ADDRESS, IFA_LOCAL
    - IFLA_GRE_LOCAL, IFLA_GRE_REMOTE
    - IFLA_VTI_LOCAL, IFLA_VTI_REMOTE
    - IFLA_IPTUN_LOCAL, IFLA_IPTUN_REMOTE
    - NDA_DST
    - RTA_DST, RTA_SRC, RTA_GATEWAY, RTA_PREFSRC
    - FRA_SRC, FRA_DST
  - ipv4
    - IFA_BROADCAST
    - IFLA_GENEVE_REMOTE
    - IFLA_IPTUN_6RD_RELAY_PREFIX

Reviewed-by: Asbjørn Sloth Tønnesen <ast@fiberby.net>
Reviewed-by: Donald Hunter <donald.hunter@gmail.com>
Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
Link: https://patch.msgid.link/20251117024457.3034-3-liuhangbin@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Hangbin Liu
2025-11-17 02:44:56 +00:00
committed by Jakub Kicinski
parent 4abe51dba6
commit 1064d521d1
8 changed files with 23 additions and 21 deletions

View File

@@ -1707,11 +1707,11 @@ attribute-sets:
-
name: local
type: binary
display-hint: ipv4
display-hint: ipv4-or-v6
-
name: remote
type: binary
display-hint: ipv4
display-hint: ipv4-or-v6
-
name: ttl
type: u8
@@ -1833,11 +1833,11 @@ attribute-sets:
-
name: local
type: binary
display-hint: ipv4
display-hint: ipv4-or-v6
-
name: remote
type: binary
display-hint: ipv4
display-hint: ipv4-or-v6
-
name: fwmark
type: u32
@@ -1868,7 +1868,7 @@ attribute-sets:
type: u32
-
name: remote
type: binary
type: u32
display-hint: ipv4
-
name: ttl
@@ -1952,11 +1952,11 @@ attribute-sets:
-
name: local
type: binary
display-hint: ipv4
display-hint: ipv4-or-v6
-
name: remote
type: binary
display-hint: ipv4
display-hint: ipv4-or-v6
-
name: ttl
type: u8
@@ -1986,7 +1986,7 @@ attribute-sets:
display-hint: ipv6
-
name: 6rd-relay-prefix
type: binary
type: u32
display-hint: ipv4
-
name: 6rd-prefixlen