Mirror of strace – the linux syscall tracer
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

rt_sigreturn.c 671B

12345678910111213141516171819202122232425262728293031323334
  1. /*
  2. * Copyright (c) 2017-2018 Dmitry V. Levin <ldv@altlinux.org>
  3. * All rights reserved.
  4. *
  5. * SPDX-License-Identifier: LGPL-2.1-or-later
  6. */
  7. #include "defs.h"
  8. #include DEF_MPERS_TYPE(struct_rt_sigframe)
  9. #include "rt_sigframe.h"
  10. #include MPERS_DEFS
  11. #ifndef OFFSETOF_SIGMASK_IN_RT_SIGFRAME
  12. # define OFFSETOF_SIGMASK_IN_RT_SIGFRAME \
  13. offsetof(struct_rt_sigframe, uc.uc_sigmask)
  14. #endif
  15. SYS_FUNC(rt_sigreturn)
  16. {
  17. const kernel_ulong_t sf_addr = get_rt_sigframe_addr(tcp);
  18. if (sf_addr) {
  19. const kernel_ulong_t sm_addr =
  20. sf_addr + OFFSETOF_SIGMASK_IN_RT_SIGFRAME;
  21. tprints("{mask=");
  22. print_sigset_addr(tcp, sm_addr);
  23. tprints("}");
  24. }
  25. return RVAL_DECODED;
  26. }