-probe nd_syscall.sigaction32 = kprobe.function("sys32_sigaction") ?,
- kprobe.function("compat_sys_sigaction") ?
-{
- name = "sigaction"
- asmlinkage()
- sig = int_arg(1)
- act_uaddr = pointer_arg(2)
- oact_uaddr = pointer_arg(3)
- argstr = sprintf("%s, {%s}, %p", _signal_name(sig), _struct_old_sigaction32_u(act_uaddr), oact_uaddr)
-}
-probe nd_syscall.sigaction32.return = kprobe.function("sys32_sigaction").return ?,
- kprobe.function("compat_sys_sigaction").return ?
-{
- name = "sigaction"
- retstr = returnstr(1)
-}
# In kernel 3.8, CONFIG_GENERIC_SIGALTSTACK was added by
# kernel commit 6bf9adfc90370b695cb111116e15fdc0e1906270.
--- /dev/null
+# sigaction _________________________________________________________
+
+@define _SYSCALL_SIGACTION32_NAME
+%(
+ name = "sigaction"
+%)
+
+@define _SYSCALL_SIGACTION32_ARGSTR
+%(
+ argstr = sprintf("%s, {%s}, %p", sig_str, act_str, oact_uaddr)
+%)
+
+probe syscall.sigaction32 = dw_syscall.sigaction32 !, nd_syscall.sigaction32 {}
+probe syscall.sigaction32.return = dw_syscall.sigaction32.return !,
+ nd_syscall.sigaction32.return {}
+
+# dw_sigaction32 _____________________________________________________
+
+probe dw_syscall.sigaction32 = kernel.function("sys32_sigaction").call ?,
+ kernel.function("compat_sys_sigaction").call ?
+{
+ @_SYSCALL_SIGACTION32_NAME
+ sig = __int32($sig)
+ sig_str = _signal_name(sig)
+ act_uaddr = @__pointer($act)
+ act_str = _struct_old_sigaction32_u(act_uaddr)
+ oact_uaddr = $oact
+ @_SYSCALL_SIGACTION32_ARGSTR
+}
+probe dw_syscall.sigaction32.return = kernel.function("sys32_sigaction").return ?,
+ kernel.function("compat_sys_sigaction").return ?
+{
+ @_SYSCALL_SIGACTION32_NAME
+ retstr = return_str(1, $return)
+}
+
+# nd_sigaction32 _____________________________________________________
+
+probe nd_syscall.sigaction32 = kprobe.function("sys32_sigaction") ?,
+ kprobe.function("compat_sys_sigaction") ?
+{
+ @_SYSCALL_SIGACTION32_NAME
+ asmlinkage()
+ sig = int_arg(1)
+ sig_str = _signal_name(sig)
+ act_uaddr = pointer_arg(2)
+ act_str = _struct_old_sigaction32_u(act_uaddr)
+ oact_uaddr = pointer_arg(3)
+ @_SYSCALL_SIGACTION32_ARGSTR
+}
+probe nd_syscall.sigaction32.return = kprobe.function("sys32_sigaction").return ?,
+ kprobe.function("compat_sys_sigaction").return ?
+{
+ @_SYSCALL_SIGACTION32_NAME
+ retstr = returnstr(1)
+}
-probe syscall.sigaction32 = kernel.function("sys32_sigaction").call ?,
- kernel.function("compat_sys_sigaction").call ?
-{
- name = "sigaction"
- sig = __int32($sig)
- act_uaddr = @__pointer($act)
- oact_uaddr = $oact
- argstr = sprintf("%s, {%s}, %p", _signal_name(sig),
- _struct_old_sigaction32_u(act_uaddr), oact_uaddr)
-}
-probe syscall.sigaction32.return = kernel.function("sys32_sigaction").return ?,
- kernel.function("compat_sys_sigaction").return ?
-{
- name = "sigaction"
- retstr = return_str(1, $return)
-}
# In kernel 3.8, CONFIG_GENERIC_SIGALTSTACK was added by
# kernel commit 6bf9adfc90370b695cb111116e15fdc0e1906270.