[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [Bug 1814352] Re: SIOCGIFNAME takes a struct ifreq not an i
From: |
Erik Kline |
Subject: |
[Qemu-devel] [Bug 1814352] Re: SIOCGIFNAME takes a struct ifreq not an integer |
Date: |
Tue, 23 Apr 2019 22:31:37 -0000 |
Patch sent to the list. Apologies for the delay.
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1814352
Title:
SIOCGIFNAME takes a struct ifreq not an integer
Status in QEMU:
Confirmed
Bug description:
The ioctl SIOCGIFNAME takes a pointer to a struct ifreq, not an
integer. This leads to if_indextoname() not correctly returning
interface names (well, not if they're longer than 4 characters
including the trailing NULL ;-).
This is observed on v3.1.0.
The following one-line patch will be sent to the qemu-devel mailing
list:
"""
diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index ae8951625f..37501f575c 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -178,7 +178,7 @@
#endif /* CONFIG_USBFS */
IOCTL(SIOCATMARK, IOC_R, MK_PTR(TYPE_INT))
- IOCTL(SIOCGIFNAME, IOC_RW, MK_PTR(TYPE_INT))
+ IOCTL(SIOCGIFNAME, IOC_RW, MK_PTR(MK_STRUCT(STRUCT_int_ifreq)))
IOCTL(SIOCGIFFLAGS, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_short_ifreq)))
IOCTL(SIOCSIFFLAGS, IOC_W, MK_PTR(MK_STRUCT(STRUCT_short_ifreq)))
IOCTL(SIOCGIFADDR, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_sockaddr_ifreq)))
"""
To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1814352/+subscriptions