blob: c3d3ea19a5ff441117525b9a9bde9fe079e1888e [file] [log] [blame]
Dmitry V. Levina3c48352015-03-23 21:16:07 +00001long addr;
2
3if (upeek(tcp->pid, 4*PT_USP, &addr) < 0)
4 return 0;
5/* Fetch pointer to struct sigcontext. */
6if (umove(tcp, addr + 2 * sizeof(int), &addr) < 0)
7 return 0;
8
9unsigned long mask[NSIG / 8 / sizeof(long)];
10/* Fetch first word of signal mask. */
11if (umove(tcp, addr, &mask[0]) < 0)
12 return 0;
13
14/* Fetch remaining words of signal mask, located immediately before. */
15addr -= sizeof(mask) - sizeof(long);
16if (umoven(tcp, addr, sizeof(mask) - sizeof(long), &mask[1]) < 0)
17 return 0;
18
19tprintsigmask_addr("{mask=", mask);
20tprints("}");