* lib/ioctl.c: Include msvc-nothrow.h.
(primary_ioctl): If fd is not a valid handle, set errno to EBADF.
+2012-02-04 Bruno Haible <bruno@clisp.org>
+
+ ioctl: Fix test failure on native Windows.
+ * lib/ioctl.c: Include msvc-nothrow.h.
+ (primary_ioctl): If fd is not a valid handle, set errno to EBADF.
+
2012-02-04 Bruno Haible <bruno@clisp.org>
fsync: Avoid test failure on native Windows.
# include <errno.h>
# include "fd-hook.h"
+/* Get _get_osfhandle. */
+# include "msvc-nothrow.h"
static int
primary_ioctl (int fd, int request, void *arg)
fds non-blocking, use the gnulib 'nonblocking' module, until
gnulib implements fcntl F_GETFL / F_SETFL with O_NONBLOCK. */
- errno = ENOSYS;
+ if ((HANDLE) _get_osfhandle (fd) != INVALID_HANDLE_VALUE)
+ errno = ENOSYS;
+ else
+ errno = EBADF;
return -1;
}