Skip to main content

Smash the Stack

/smash t͟hə stak/

[C programming]

n. On many C implementations it is possible to corrupt the execution stack by writing past the end of an array declared 'auto' in a routine. Code that does this is said to 'smash the stack', and can cause return from the routine to jump to a random address. This can produce some of the most insidious data-dependent bugs known to mankind. Variants include 'trash' the stack, scribble the stack, mangle the stack; the term **mung the stack is not used, as this is never done intentionally.

See spam; see also aliasing bug, fandango on core, memory leak, precedence lossage, overrun screw.