On Fri, 2013-04-26 at 03:51 -0400, Xi Wang wrote: > +#ifdef CONFIG_SECCOMP_FILTER > + case BPF_S_ANC_SECCOMP_LD_W: > + if (K == offsetof(struct seccomp_data, arch)) { > + int arch = syscall_get_arch(current, > NULL); > + > + EMIT1_off32(0xb8, arch); /* mov > arch,%eax */ > + break; > + } > + func = (u8 *)seccomp_bpf_load; > + t_offset = func - (image + addrs[i]); > + EMIT1_off32(0xbf, K); /* mov imm32,%edi */ > + EMIT1_off32(0xe8, t_offset); /* call > seccomp_bpf_load */ > + break; > +#endif
This seems seriously wrong to me. This cannot have been tested at all. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/