Re: [Announcement] "Exec Shield", new Linux security feature

Richard Henderson (rth@twiddle.net)
Sun, 4 May 2003 15:22:27 -0700


On Sun, May 04, 2003 at 10:25:26AM -0400, Chuck Ebbert wrote:
> asmlinkage int sys_iopl(unsigned long unused)
> {
> struct pt_regs * regs = (struct pt_regs *) &unused; <== yuck!
[...]
> Shouldnt it be like this?
>
> asmlinkage int sys_iopl (struct pt_regs regs)

No, it should be like

int sys_iopl (struct pt_regs *regs)

and assembly language should push the proper address.

The struct-as-argument form allows the compiler to
smash the entire structure as it sees fit.

> fork, clone, vfork and execve all declare it that way...

They're all wrong too.

r~
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/