From: Mark Wielaard Date: Sat, 1 Oct 2016 11:54:52 +0000 (+0000) Subject: Don't crash, but warn and return EINVAL on unknown fcntl command. X-Git-Tag: svn/VALGRIND_3_13_0~368 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d70383e803291b31c9c372e8db706400f4b1ccd6;p=thirdparty%2Fvalgrind.git Don't crash, but warn and return EINVAL on unknown fcntl command. Bug #369446 LTP: testcases/kernel/syscalls/fcntl/fcntl13 git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15998 --- diff --git a/NEWS b/NEWS index a0b8e16100..e2e7ceb094 100644 --- a/NEWS +++ b/NEWS @@ -188,6 +188,7 @@ where XXXXXX is the bug number as listed below. 369383 x86 sys_modify_ldt wrapper crashes on bad ptr 369402 Bad set/get_thread_area pointer crashes valgrind 369441 bad lvec argument crashes process_vm_readv/writev syscall wrappers +369446 valgrind crashes on unknown fcntl command n-i-bz Fix incorrect (or infinite loop) unwind on RHEL7 x86 and amd64 n-i-bz massif --pages-as-heap=yes does not report peak caused by mmap+munmap diff --git a/coregrind/m_syswrap/syswrap-linux.c b/coregrind/m_syswrap/syswrap-linux.c index 115922307a..1f0d327269 100644 --- a/coregrind/m_syswrap/syswrap-linux.c +++ b/coregrind/m_syswrap/syswrap-linux.c @@ -5487,7 +5487,8 @@ PRE(sys_fcntl) default: PRINT("sys_fcntl[UNKNOWN] ( %lu, %lu, %lu )", ARG1, ARG2, ARG3); - I_die_here; + VG_(umsg)("Warning: unimplemented fcntl command: %lu\n", ARG2); + SET_STATUS_Failure( VKI_EINVAL ); break; }