@samitouri / QOSamiQemu / commits / b5efbfb1bb

qapi/net: Wean passt off QAPI type String to improve documentation

String's doc comment is useless. Replace its use in NetDevPasstOptions by identical types with hopefully useful documentation. Signed-off-by: Markus Armbruster <armbru@redhat.com> Message-ID: <20260506105421.2461117-3-armbru@redhat.com> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> [One Since: fixed up]

Markus Armbruster committed May 6, 2026 at 12:54 UTC b5efbfb1bb2aca8cfcfacf76ceb1393159d9c0a1
2 files changed +43 -8
net/passt.c
+4 -4
@@ -637,7 +637,7 @@ static GPtrArray *net_passt_decode_args(const NetdevPasstOptions *passt,
637 }
638
639 if (passt->has_search && passt->search) {
640 - const StringList *list = passt->search;
640 + const PasstSearchList *list = passt->search;
641 GString *domains = g_string_new(list->value->str);
642
643 list = list->next;
@@ -652,7 +652,7 @@ static GPtrArray *net_passt_decode_args(const NetdevPasstOptions *passt,
652 }
653
654 if (passt->has_tcp_ports && passt->tcp_ports) {
655 - const StringList *list = passt->tcp_ports;
655 + const PasstPortForwardList *list = passt->tcp_ports;
656 GString *tcp_ports = g_string_new(list->value->str);
657
658 list = list->next;
@@ -667,7 +667,7 @@ static GPtrArray *net_passt_decode_args(const NetdevPasstOptions *passt,
667 }
668
669 if (passt->has_udp_ports && passt->udp_ports) {
670 - const StringList *list = passt->udp_ports;
670 + const PasstPortForwardList *list = passt->udp_ports;
671 GString *udp_ports = g_string_new(list->value->str);
672
673 list = list->next;
@@ -682,7 +682,7 @@ static GPtrArray *net_passt_decode_args(const NetdevPasstOptions *passt,
682 }
683
684 if (passt->has_param && passt->param) {
685 - const StringList *list = passt->param;
685 + const PasstParameterList *list = passt->param;
686
687 while (list) {
688 g_ptr_array_add(args, g_strdup(list->value->str));
qapi/net.json
+39 -4
@@ -114,6 +114,41 @@
114 'data': {
115 'str': 'str' } }
116
117 +##
118 +# @PasstSearch:
119 +#
120 +# @str: DNS domain name suffix for host name lookup, or "none". See
121 +# passt(1) option --search.
122 +#
123 +# Since: 10.1
124 +##
125 +{ 'struct': 'PasstSearch',
126 + 'data': {
127 + 'str': 'str' } }
128 +
129 +##
130 +# @PasstPortForward:
131 +#
132 +# @str: passt port forwarding specification, see passt(1) option
133 +# --tcp-ports and --udp-ports.
134 +#
135 +# Since: 10.1
136 +##
137 +{ 'struct': 'PasstPortForward',
138 + 'data': {
139 + 'str': 'str' } }
140 +
141 +##
142 +# @PasstParameter:
143 +#
144 +# @str: Additional arguments for the passt executable, see passt(1)
145 +#
146 +# Since: 10.1
147 +##
148 +{ 'struct': 'PasstParameter',
149 + 'data': {
150 + 'str': 'str' } }
151 +
152 ##
153 # @NetdevPasstOptions:
154 #
@@ -206,7 +241,7 @@
241 '*outbound-if4': 'str',
242 '*outbound-if6': 'str',
243 '*dns': 'str',
209 - '*search': ['String'],
244 + '*search': ['PasstSearch'],
245 '*fqdn': 'str',
246 '*dhcp-dns': 'bool',
247 '*dhcp-search': 'bool',
@@ -224,9 +259,9 @@
259 '*freebind': 'bool',
260 '*ipv4': 'bool',
261 '*ipv6': 'bool',
227 - '*tcp-ports': ['String'],
228 - '*udp-ports': ['String'],
229 - '*param': ['String'] },
262 + '*tcp-ports': ['PasstPortForward'],
263 + '*udp-ports': ['PasstPortForward'],
264 + '*param': ['PasstParameter'] },
265 'if': 'CONFIG_PASST' }
266
267 ##