[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

r5076 - in glibc-package/trunk/debian: . patches patches/hurd-i386



Author: sthibault
Date: 2011-12-12 23:10:21 +0000 (Mon, 12 Dec 2011)
New Revision: 5076

Added:
   glibc-package/trunk/debian/patches/hurd-i386/submitted-mach-nanosleep.diff
Modified:
   glibc-package/trunk/debian/changelog
   glibc-package/trunk/debian/patches/series
Log:
patches/hurd-i386/submitted-mach-nanosleep.diff: New patch from Pino to reject some nanosleep parameters values.


Modified: glibc-package/trunk/debian/changelog
===================================================================
--- glibc-package/trunk/debian/changelog	2011-12-12 23:09:59 UTC (rev 5075)
+++ glibc-package/trunk/debian/changelog	2011-12-12 23:10:21 UTC (rev 5076)
@@ -1,10 +1,15 @@
 eglibc (2.13-23) UNRELEASED; urgency=low
 
+  [ Aurelien Jarno ]
   * patches/arm/cvs-syscall-mcount.diff: new patch from upstream to fix
     build on armel.
 
- -- Aurelien Jarno <aurel32@debian.org>  Sat, 10 Dec 2011 23:36:21 +0100
+  [ Samuel Thibault ]
+  * patches/hurd-i386/submitted-mach-nanosleep.diff: New patch from Pino to
+    reject some nanosleep parameters values.
 
+ -- Samuel Thibault <sthibault@debian.org>  Tue, 13 Dec 2011 00:05:49 +0100
+
 eglibc (2.13-22) unstable; urgency=low
 
   [ Adam Conrad ]

Added: glibc-package/trunk/debian/patches/hurd-i386/submitted-mach-nanosleep.diff
===================================================================
--- glibc-package/trunk/debian/patches/hurd-i386/submitted-mach-nanosleep.diff	                        (rev 0)
+++ glibc-package/trunk/debian/patches/hurd-i386/submitted-mach-nanosleep.diff	2011-12-12 23:10:21 UTC (rev 5076)
@@ -0,0 +1,37 @@
+http://cygwin.com/ml/libc-alpha/2011-12/msg00020.html
+
+mach: nanosleep: check for invalid parameter values
+
+Check for invalid values of the `requested_time' parameters; move the
+calculation of `ms' after the validation of `requested_time'.
+
+2011-12-10  Pino Toscano  <toscano.pino@tiscali.it>
+
+	* sysdeps/mach/nanosleep.c (__nanosleep): Return EINVAL for negative
+	seconds or nanoseconds of `requested_time', or for nanoseconds equal
+	or greater than 1000000000.
+--- a/sysdeps/mach/nanosleep.c
++++ b/sysdeps/mach/nanosleep.c
+@@ -28,11 +28,19 @@ __nanosleep (const struct timespec *requ
+ {
+   mach_port_t recv;
+   struct timeval before, after;
+-  const mach_msg_timeout_t ms
+-    = requested_time->tv_sec * 1000
+-    + (requested_time->tv_nsec + 999999) / 1000000;
++  mach_msg_timeout_t ms;
++
++  if (requested_time->tv_sec < 0
++      || requested_time->tv_nsec < 0
++      || requested_time->tv_nsec >= 1000000000)
++    {
++      errno = EINVAL;
++      return -1;
++    }
+ 
+   recv = __mach_reply_port ();
++  ms = requested_time->tv_sec * 1000
++       + (requested_time->tv_nsec + 999999) / 1000000;
+ 
+   if (remaining && __gettimeofday (&before, NULL) < 0)
+     return -1;

Modified: glibc-package/trunk/debian/patches/series
===================================================================
--- glibc-package/trunk/debian/patches/series	2011-12-12 23:09:59 UTC (rev 5075)
+++ glibc-package/trunk/debian/patches/series	2011-12-12 23:10:21 UTC (rev 5076)
@@ -171,6 +171,7 @@
 hurd-i386/submitted-select-inputcheck.diff
 hurd-i386/local-select.diff
 hurd-i386/submitted-posix2008.diff
+hurd-i386/submitted-mach-nanosleep.diff
 
 kfreebsd/submitted-libc_once.diff
 


Reply to: