|
From: <sv...@va...> - 2013-07-17 12:43:39
|
tom 2013-07-17 13:43:30 +0100 (Wed, 17 Jul 2013)
New Revision: 13458
Log:
Handle the sethostname system call. BZ#311922.
Modified files:
trunk/coregrind/m_syswrap/priv_syswrap-generic.h
trunk/coregrind/m_syswrap/syswrap-amd64-linux.c
trunk/coregrind/m_syswrap/syswrap-generic.c
trunk/coregrind/m_syswrap/syswrap-x86-linux.c
Modified: trunk/coregrind/m_syswrap/syswrap-generic.c (+7 -0)
===================================================================
--- trunk/coregrind/m_syswrap/syswrap-generic.c 2013-07-17 10:56:24 +01:00 (rev 13457)
+++ trunk/coregrind/m_syswrap/syswrap-generic.c 2013-07-17 13:43:30 +01:00 (rev 13458)
@@ -4230,6 +4230,13 @@
POST_MEM_WRITE( ARG2, sizeof(vki_stack_t));
}
+PRE(sys_sethostname)
+{
+ PRINT("sys_sethostname ( %#lx, %ld )", ARG1,ARG2);
+ PRE_REG_READ2(long, "sethostname", char *, name, int, len);
+ PRE_MEM_READ( "sethostname(name)", ARG1, ARG2 );
+}
+
#undef PRE
#undef POST
Modified: trunk/coregrind/m_syswrap/priv_syswrap-generic.h (+1 -0)
===================================================================
--- trunk/coregrind/m_syswrap/priv_syswrap-generic.h 2013-07-17 10:56:24 +01:00 (rev 13457)
+++ trunk/coregrind/m_syswrap/priv_syswrap-generic.h 2013-07-17 13:43:30 +01:00 (rev 13458)
@@ -149,6 +149,7 @@
DECL_TEMPLATE(generic, sys_setuid);
DECL_TEMPLATE(generic, sys_gettimeofday);
DECL_TEMPLATE(generic, sys_madvise);
+DECL_TEMPLATE(generic, sys_sethostname);
// These ones aren't POSIX, but are in some standard and look reasonably
// generic, and are the same for all architectures under Linux.
Modified: trunk/coregrind/m_syswrap/syswrap-amd64-linux.c (+1 -1)
===================================================================
--- trunk/coregrind/m_syswrap/syswrap-amd64-linux.c 2013-07-17 10:56:24 +01:00 (rev 13457)
+++ trunk/coregrind/m_syswrap/syswrap-amd64-linux.c 2013-07-17 13:43:30 +01:00 (rev 13458)
@@ -912,7 +912,7 @@
// (__NR_swapoff, sys_swapoff), // 168
// (__NR_reboot, sys_reboot), // 169
- // (__NR_sethostname, sys_sethostname), // 170
+ GENX_(__NR_sethostname, sys_sethostname), // 170
// (__NR_setdomainname, sys_setdomainname), // 171
GENX_(__NR_iopl, sys_iopl), // 172
LINX_(__NR_ioperm, sys_ioperm), // 173
Modified: trunk/coregrind/m_syswrap/syswrap-x86-linux.c (+1 -1)
===================================================================
--- trunk/coregrind/m_syswrap/syswrap-x86-linux.c 2013-07-17 10:56:24 +01:00 (rev 13457)
+++ trunk/coregrind/m_syswrap/syswrap-x86-linux.c 2013-07-17 13:43:30 +01:00 (rev 13458)
@@ -1501,7 +1501,7 @@
LINX_(__NR_setregid, sys_setregid16), // 71
PLAX_(__NR_sigsuspend, sys_sigsuspend), // 72
LINXY(__NR_sigpending, sys_sigpending), // 73
-//zz // (__NR_sethostname, sys_sethostname), // 74 */*
+ GENX_(__NR_sethostname, sys_sethostname), // 74
//zz
GENX_(__NR_setrlimit, sys_setrlimit), // 75
GENXY(__NR_getrlimit, sys_old_getrlimit), // 76
|