Clear unused bytes in ia32_osendsig().
Mirror the fix for the native i386 implementation from r218327. This code is compiled only when the non-default COMPAT_43 option is configured. Reported by: Ilja Van Sprundel <ivansprundel@ioactive.com> Reviewed by: kib MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D18298
This commit is contained in:
parent
1a89b15463
commit
fbbdea9acc
@ -364,12 +364,14 @@ ia32_osendsig(sig_t catcher, ksiginfo_t *ksi, sigset_t *mask)
|
||||
/* Build the argument list for the signal handler. */
|
||||
sf.sf_signum = sig;
|
||||
sf.sf_scp = (register_t)&fp->sf_siginfo.si_sc;
|
||||
bzero(&sf.sf_siginfo, sizeof(sf.sf_siginfo));
|
||||
if (SIGISMEMBER(psp->ps_siginfo, sig)) {
|
||||
/* Signal handler installed with SA_SIGINFO. */
|
||||
sf.sf_arg2 = (register_t)&fp->sf_siginfo;
|
||||
sf.sf_siginfo.si_signo = sig;
|
||||
sf.sf_siginfo.si_code = ksi->ksi_code;
|
||||
sf.sf_ah = (uintptr_t)catcher;
|
||||
sf.sf_addr = 0;
|
||||
} else {
|
||||
/* Old FreeBSD-style arguments. */
|
||||
sf.sf_arg2 = ksi->ksi_code;
|
||||
|
Loading…
x
Reference in New Issue
Block a user