]> granicus.if.org Git - strace/blobdiff - signal.c
Use printflags64 instead of printflags_long
[strace] / signal.c
index 9f51440bc4dea139f44d4690df2f102cd4e08f60..08576ef0dabc9d0df02f5b1d2e32edefd0a992d2 100644 (file)
--- a/signal.c
+++ b/signal.c
@@ -242,7 +242,8 @@ printsignal(int nr)
 }
 
 static void
-print_sigset_addr_len_limit(struct tcb *tcp, long addr, long len, long min_len)
+print_sigset_addr_len_limit(struct tcb *const tcp, const kernel_ureg_t addr,
+                           const kernel_ureg_t len, const unsigned int min_len)
 {
        /*
         * Here len is usually equal to NSIG / 8 or current_wordsize.
@@ -259,7 +260,8 @@ print_sigset_addr_len_limit(struct tcb *tcp, long addr, long len, long min_len)
 }
 
 void
-print_sigset_addr_len(struct tcb *tcp, long addr, long len)
+print_sigset_addr_len(struct tcb *const tcp, const kernel_ureg_t addr,
+                     const kernel_ureg_t len)
 {
        print_sigset_addr_len_limit(tcp, addr, len, current_wordsize);
 }
@@ -304,7 +306,7 @@ struct old_sigaction32 {
 };
 
 static void
-decode_old_sigaction(struct tcb *tcp, long addr)
+decode_old_sigaction(struct tcb *const tcp, const kernel_ureg_t addr)
 {
        struct old_sigaction sa;
 
@@ -501,7 +503,7 @@ struct new_sigaction32
 };
 
 static void
-decode_new_sigaction(struct tcb *tcp, long addr)
+decode_new_sigaction(struct tcb *const tcp, const kernel_ureg_t addr)
 {
        struct new_sigaction sa;
 
@@ -526,7 +528,7 @@ decode_new_sigaction(struct tcb *tcp, long addr)
                 * For little-endian, it's the same.
                 * For big-endian, we swap 32-bit words.
                 */
-               sa.sa_mask[0] = LONG_LONG(sa32.sa_mask[0], sa32.sa_mask[1]);
+               sa.sa_mask[0] = ULONG_LONG(sa32.sa_mask[0], sa32.sa_mask[1]);
        } else
 #endif
        if (umove_or_printaddr(tcp, addr, &sa))
@@ -607,11 +609,12 @@ SYS_FUNC(rt_sigsuspend)
 }
 
 static void
-print_sigqueueinfo(struct tcb *tcp, int sig, unsigned long uinfo)
+print_sigqueueinfo(struct tcb *const tcp, const int sig,
+                  const kernel_ureg_t addr)
 {
        printsignal(sig);
        tprints(", ");
-       printsiginfo_at(tcp, uinfo);
+       printsiginfo_at(tcp, addr);
 }
 
 SYS_FUNC(rt_sigqueueinfo)