From aa5cb68bc69ce88557eb1ec22bfdea1e1a7e2594 Mon Sep 17 00:00:00 2001 From: Augustin Cavalier Date: Thu, 21 Feb 2019 22:12:32 -0500 Subject: [PATCH] kernel/fs: NULL is a valid buffer to pass to ioctl(). Another bug exposed by hrev52905. Discovered because Expander was not displaying archive contents anymore. --- src/system/kernel/fs/fd.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/system/kernel/fs/fd.cpp b/src/system/kernel/fs/fd.cpp index df3af83434..0bd7215aba 100644 --- a/src/system/kernel/fs/fd.cpp +++ b/src/system/kernel/fs/fd.cpp @@ -915,7 +915,7 @@ _user_seek(int fd, off_t pos, int seekType) status_t _user_ioctl(int fd, uint32 op, void* buffer, size_t length) { - if (!IS_USER_ADDRESS(buffer)) + if (buffer != NULL && !IS_USER_ADDRESS(buffer)) return B_BAD_ADDRESS; TRACE(("user_ioctl: fd %d\n", fd));