1. 23 Jan, 2018 8 commits
  2. 16 Jan, 2018 3 commits
    • Eric W. Biederman's avatar
      ptrace: Use copy_siginfo in setsiginfo and getsiginfo · 0752d7bf
      Eric W. Biederman authored
      
      
      Now that copy_siginfo copies all of the fields this is safe, safer (as
      all of the bits are guaranteed to be copied), clearer, and less error
      prone than using a structure copy.
      Signed-off-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
      0752d7bf
    • Eric W. Biederman's avatar
      signal: Unify and correct copy_siginfo_to_user32 · ea64d5ac
      Eric W. Biederman authored
      
      
      Among the existing architecture specific versions of
      copy_siginfo_to_user32 there are several different implementation
      problems.  Some architectures fail to handle all of the cases in in
      the siginfo union.  Some architectures perform a blind copy of the
      siginfo union when the si_code is negative.  A blind copy suggests the
      data is expected to be in 32bit siginfo format, which means that
      receiving such a signal via signalfd won't work, or that the data is
      in 64bit siginfo and the code is copying nonsense to userspace.
      
      Create a single instance of copy_siginfo_to_user32 that all of the
      architectures can share, and teach it to handle all of the cases in
      the siginfo union correctly, with the assumption that siginfo is
      stored internally to the kernel is 64bit siginfo format.
      
      A special case is made for x86 x32 format.  This is needed as presence
      of both x32 and ia32 on x86_64 results in two different 32bit signal
      formats.  By allowing this small special case there winds up being
      exactly one code base that needs to be maintained between all of the
      architectures.  Vastly increasing the testing base and the chances of
      finding bugs.
      
      As the x86 copy of copy_siginfo_to_user32 the call of the x86
      signal_compat_build_tests were moved into sigaction_compat_abi, so
      that they will keep running.
      Signed-off-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
      ea64d5ac
    • Eric W. Biederman's avatar
      signal: Remove the code to clear siginfo before calling copy_siginfo_from_user32 · eb5346c3
      Eric W. Biederman authored
      
      
      The new unified copy_siginfo_from_user32 takes care of this.
      Signed-off-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
      eb5346c3
  3. 15 Jan, 2018 9 commits
  4. 12 Jan, 2018 20 commits