(clock_settime): Test tv_nsec value for correct range.
authordrepper <drepper>
Mon, 10 Apr 2000 15:29:18 +0000 (15:29 +0000)
committerdrepper <drepper>
Mon, 10 Apr 2000 15:29:18 +0000 (15:29 +0000)
sysdeps/unix/clock_settime.c

index daee2e2..36bd98f 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: