[dpdk-dev] [PATCH 3/5] examples/netmap: fix overflow in ioctl operation
Olivier Matz
olivier.matz at 6wind.com
Wed Dec 17 13:55:23 CET 2014
Compiling the netmap example with clang-3.5 triggered the following
warning:
compat_netmap.c:783:11: error: overflow converting case value to
switch condition type (3225184658 to 18446744072639768978)
[-Werror,-Wswitch]
case NIOCREGIF:
^
Indeed, an ioctl value should be an unsigned 32 bits, not an int.
Signed-off-by: Olivier Matz <olivier.matz at 6wind.com>
---
examples/netmap_compat/lib/compat_netmap.c | 2 +-
examples/netmap_compat/lib/compat_netmap.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/examples/netmap_compat/lib/compat_netmap.c b/examples/netmap_compat/lib/compat_netmap.c
index 6a4737a..1d86ef0 100644
--- a/examples/netmap_compat/lib/compat_netmap.c
+++ b/examples/netmap_compat/lib/compat_netmap.c
@@ -765,7 +765,7 @@ rte_netmap_close(__rte_unused int fd)
return (rc);
}
-int rte_netmap_ioctl(int fd, int op, void *param)
+int rte_netmap_ioctl(int fd, uint32_t op, void *param)
{
int ret;
diff --git a/examples/netmap_compat/lib/compat_netmap.h b/examples/netmap_compat/lib/compat_netmap.h
index f8a7812..3dc7a2f 100644
--- a/examples/netmap_compat/lib/compat_netmap.h
+++ b/examples/netmap_compat/lib/compat_netmap.h
@@ -71,7 +71,7 @@ int rte_netmap_init_port(uint8_t portid,
const struct rte_netmap_port_conf *conf);
int rte_netmap_close(int fd);
-int rte_netmap_ioctl(int fd, int op, void *param);
+int rte_netmap_ioctl(int fd, uint32_t op, void *param);
int rte_netmap_open(const char *pathname, int flags);
int rte_netmap_poll(struct pollfd *fds, nfds_t nfds, int timeout);
void *rte_netmap_mmap(void *addr, size_t length, int prot, int flags, int fd,
--
2.1.3
More information about the dev
mailing list