]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Update.
authorUlrich Drepper <drepper@redhat.com>
Mon, 10 Apr 2000 15:30:06 +0000 (15:30 +0000)
committerUlrich Drepper <drepper@redhat.com>
Mon, 10 Apr 2000 15:30:06 +0000 (15:30 +0000)
2000-04-10  Ulrich Drepper  <drepper@redhat.com>

* sysdeps/unix/clock_settime.c (clock_settime): Test tv_nsec value
for correct range.  From code by Kaz Kylheku <kaz@ashi.footprints.net>.

ChangeLog
sysdeps/unix/clock_settime.c

index f388f791c13a0a8fd487a415be17b335ec7177f7..004dfe04b151ec1bfde3f237686a1410ef5e01c3 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2000-04-10  Ulrich Drepper  <drepper@redhat.com>
+
+       * sysdeps/unix/clock_settime.c (clock_settime): Test tv_nsec value
+       for correct range.  From code by Kaz Kylheku <kaz@ashi.footprints.net>.
+
 2000-04-09  Ulrich Drepper  <drepper@redhat.com>
 
        * sysdeps/unix/clock_gettime.c: New file.
index daee2e2c934259352e7715c04bd16e69514740a5..36bd98fdf9aa8e7c4d908a139f82bdf086022f93 100644 (file)
@@ -31,6 +31,13 @@ clock_settime (clockid_t clock_id, const struct timespec *tp)
   struct timeval tv;
   int retval;
 
+  /* Make sure the time cvalue is OK.  */
+  if (tp->tv_nsec < 0 || tp->tv_nsec >= 1000000000)
+    {
+      __set_errno (EINVAL);
+      return -1;
+    }
+
   switch (clock_id)
     {
     case CLOCK_REALTIME: