summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSvante Signell <svante.signell@gmail.com>2016-08-30 23:06:31 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2016-08-30 23:07:30 +0200
commitaaf30454802855d439f3d4d1a12fd6b905621029 (patch)
treee31238fcff98ada3bdbc790b0c03970fbda64149
parent9d84d0e51d0a590024a050b64e04df3214a04a01 (diff)
hurd: Fix adjtime call with OLDDELTA == NULL
* sysdeps/mach/hurd/adjtime.c (__adjtime): When OLDDELTA is NULL, make it point to a dumb buffer for RPC to fill it.
-rw-r--r--ChangeLog5
-rw-r--r--sysdeps/mach/hurd/adjtime.c4
2 files changed, 9 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 418bdae9b4..d24536ba9c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2016-08-30 Svante Signell <svante.signell@gmail.com>
+
+ * sysdeps/mach/hurd/adjtime.c (__adjtime): When OLDDELTA is NULL, make
+ it point to a dumb buffer for RPC to fill it.
+
2016-08-30 Siddhesh Poyarekar <siddhesh@sourceware.org>
* sysdeps/ieee754/dbl-64/s_sin.c (do_cos_slow): Use ternary
diff --git a/sysdeps/mach/hurd/adjtime.c b/sysdeps/mach/hurd/adjtime.c
index d65b95b9c6..7cfdd53e82 100644
--- a/sysdeps/mach/hurd/adjtime.c
+++ b/sysdeps/mach/hurd/adjtime.c
@@ -28,11 +28,15 @@ __adjtime (const struct timeval *delta, struct timeval *olddelta)
{
error_t err;
mach_port_t hostpriv;
+ struct timeval dummy;
err = __get_privileged_ports (&hostpriv, NULL);
if (err)
return __hurd_fail (EPERM);
+ if (olddelta == NULL)
+ olddelta = &dummy;
+
err = __host_adjust_time (hostpriv,
/* `time_value_t' and `struct timeval' are in
fact identical with the names changed. */