--- /usr/include/bits/siginfo.h	Tue Aug 13 17:11:34 2002
+++ bits/siginfo.h	Tue Aug 13 17:22:12 2002
@@ -56,8 +56,9 @@
 	/* POSIX.1b timers.  */
 	struct
 	  {
-	    unsigned int _timer1;
-	    unsigned int _timer2;
+	    __timer_t _tid;	/* timer id */
+            int _overrun;	/* overrun count */
+	    sigval_t si_sigval;	/* Signal value, same as below  */
 	  } _timer;
 
 	/* POSIX.1b signals.  */
@@ -97,6 +98,8 @@
 /* X/Open requires some more fields with fixed names.  */
 # define si_pid		_sifields._kill.si_pid
 # define si_uid		_sifields._kill.si_uid
+# define si_tid		_sifields._timer._tid
+# define si_overrun	_sifields._timer._overrun
 # define si_status	_sifields._sigchld.si_status
 # define si_utime	_sifields._sigchld.si_utime
 # define si_stime	_sifields._sigchld.si_stime
@@ -107,6 +110,11 @@
 # define si_band	_sifields._sigpoll.si_band
 # define si_fd		_sifields._sigpoll.si_fd
 
+/* To be compatable with prior _timer members */
+
+#define _timer1 _tid
+#define _timer2 _overrun
+
 
 /* Values for `si_code'.  Positive values are reserved for kernel-generated
    signals.  */
@@ -252,6 +260,7 @@
     union
       {
 	int _pad[__SIGEV_PAD_SIZE];
+        int _tid;
 
 	struct
 	  {
@@ -264,6 +273,7 @@
 /* POSIX names to access some of the members.  */
 # define sigev_notify_function   _sigev_un._sigev_thread._function
 # define sigev_notify_attributes _sigev_un._sigev_thread._attribute
+# define sigev_notify_thread_id  _sigev_un._tid
 
 /* `sigev_notify' values.  */
 enum
@@ -272,8 +282,11 @@
 # define SIGEV_SIGNAL	SIGEV_SIGNAL
   SIGEV_NONE,			/* Other notification: meaningless.  */
 # define SIGEV_NONE	SIGEV_NONE
-  SIGEV_THREAD			/* Deliver via thread creation.  */
+  SIGEV_THREAD,			/* Deliver via thread creation.  */
 # define SIGEV_THREAD	SIGEV_THREAD
+  SIGEV_DUMMY,                  /* To allow binary enumeration */
+  SIGEV_THREAD_ID
+# define SIGEV_THREAD_ID SIGEV_THREAD_ID
 };
 
 #endif	/* have _SIGNAL_H.  */

