Is is too bad even for RISC case, you never have enough registers, that's a
rule.
But you can protect against buffer overflows on the stack in other means:
1) by making stack not executable
2) by putting all the libraries and code (ie. all segments with executable
permissions) by default to addresses which have at least one zero byte in
it (big endian is helpful here).
Not that this is nicely doable on 32bit architectures, but on 64bit
it is a piece of cake
Cheers,
Jakub
___________________________________________________________________
Jakub Jelinek | jj@sunsite.mff.cuni.cz | http://sunsite.mff.cuni.cz
Administrator of SunSITE Czech Republic, MFF, Charles University
___________________________________________________________________
UltraLinux | http://ultra.linux.cz/ | http://ultra.penguin.cz/
Linux version 2.2.2 on a sparc64 machine (3958.37 BogoMips)
___________________________________________________________________
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/