Brad Smith wrote: > qga: fix uname() return value check in guest-get-osinfo > > POSIX only specifies that uname() returns a non-negative value on > success. Solaris returns 1, so guest-get-osinfo treated every > successful call as a failure and reported a stale errno. > > Check for a negative return value instead, as linux-user/uname.c > already does. > > Signed-off-by: Brad Smith <[email protected]> > --- > qga/commands-posix.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/qga/commands-posix.c b/qga/commands-posix.c > index dcc683f6c9..23abaf1956 100644 > --- a/qga/commands-posix.c > +++ b/qga/commands-posix.c > @@ -1322,7 +1322,7 @@ GuestOSInfo *qmp_guest_get_osinfo(Error **errp) > > info = g_new0(GuestOSInfo, 1); > > - if (uname(&kinfo) != 0) { > + if (uname(&kinfo) < 0) { > error_setg_errno(errp, errno, "uname failed"); > } else { > info->kernel_version = g_strdup(kinfo.version); > -- > 2.56.0 > >
Reviewed-by: Roman Bogorodskiy <[email protected]>
