On 13.07.26 12:47, Daniel P. Berrangé wrote:
On Mon, Jul 13, 2026 at 12:37:54PM +0300, Vladimir Sementsov-Ogievskiy wrote:
On 13.07.26 10:45, Markus Armbruster wrote:
Vladimir Sementsov-Ogievskiy <[email protected]> writes:
The interface is ambiguous, as "no" is valid file name. So,
using "no" as a special value to disable script is deprecated.
Use an empty string ("script=" / "downscript=") instead.
In a future version, "no" will be treated as a plain file name, just
like any other non-empty value.
Document the deprecation in docs/about/deprecated.rst, qapi/net.json,
and qemu-options.hx. Update other docs to use empty string instead of
"no". Add a warning.
Signed-off-by: Vladimir Sementsov-Ogievskiy <[email protected]>
[...]
diff --git a/net/tap.c b/net/tap.c
index fedd48c48d2..1ec9e5ebe6f 100644
--- a/net/tap.c
+++ b/net/tap.c
@@ -103,6 +103,8 @@ static bool tap_is_explicit_no_script(const char
*script_arg)
}
if (strcmp(script_arg, "no") == 0) {
+ warn_report("script=no/downscript=no is deprecated; "
+ "use script=/downscript= instead");
net_init_tap() could pass the parameter name for a simpler error
message. Probably not worth the bother.
return true;
}
In net_init_tap_one():
qemu_set_info_str(&s->nc, "ifname=%s,script=%s,downscript=%s",
ifname,
script ?: "no", downscript ?: "no");
This sets nc->info_str, which is shown by "info network". Should we
replace "no" by ""?
Agree, will do.
Would it be better to not include the script/downscript parameters at
all if they're disabled ?
Unfortunately current default is: use <sysconfdir>/qemu-ifup and
<sysconfdir>/qemu-ifdown if these options are unset. So, omitting
them in info-string would be ambiguous.
--
Best regards,
Vladimir