[PATCH] Fix RTEMS ioctl() declaration

Sebastian Huber sebastian.huber@embedded-brains.de
Wed Jun 7 09:08:00 GMT 2017


Using uint32_t for ioctl_command_t does not work well on 64-bit targets.

Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
---
 newlib/libc/sys/rtems/include/sys/ioccom.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/newlib/libc/sys/rtems/include/sys/ioccom.h b/newlib/libc/sys/rtems/include/sys/ioccom.h
index 9c5350d1e..2c0e9ee71 100644
--- a/newlib/libc/sys/rtems/include/sys/ioccom.h
+++ b/newlib/libc/sys/rtems/include/sys/ioccom.h
@@ -36,7 +36,7 @@
 #include <sys/types.h>
 #include <stdint.h>
 
-typedef uint32_t ioctl_command_t;
+typedef unsigned long ioctl_command_t;
 
 /*
  * Ioctl's have the command encoded in the lower word, and the size of
@@ -79,7 +79,7 @@ typedef uint32_t ioctl_command_t;
 #include <sys/cdefs.h>
 
 __BEGIN_DECLS
-int	ioctl(int, unsigned long, ...);
+int	ioctl(int, ioctl_command_t, ...);
 __END_DECLS
 
 #endif
-- 
2.12.3



More information about the Newlib mailing list