Hi,
__syscall_rt_sigaction should accept kernel_sigaction instead on sigaction, as declared into the bit/kernel_sigaction.h header. Indeed, each libc function that invoke it, are passing a kernel_sigaction pointer.
Attached patch tries to fix it.

Cheers,
Carmelo
Index: libc/sysdeps/linux/common/__syscall_rt_sigaction.c
===================================================================
--- libc/sysdeps/linux/common/__syscall_rt_sigaction.c  (revision 23479)
+++ libc/sysdeps/linux/common/__syscall_rt_sigaction.c  (working copy)
@@ -11,10 +11,10 @@
 
 #ifdef __NR_rt_sigaction
 #include <signal.h>
+#include <bits/kernel_sigaction.h>
 
-int __syscall_rt_sigaction (int __signum, const struct sigaction *__act, 
struct sigaction *__oldact, size_t __size) attribute_hidden;
 #define __NR___syscall_rt_sigaction __NR_rt_sigaction
 _syscall4(int, __syscall_rt_sigaction, int, signum,
-                 const struct sigaction *, act, struct sigaction *, oldact,
+                 const struct kernel_sigaction *, act, struct kernel_sigaction 
*, oldact,
                  size_t, size);
 #endif
_______________________________________________
uClibc mailing list
uClibc@uclibc.org
http://busybox.net/cgi-bin/mailman/listinfo/uclibc

Reply via email to