### 16.1 Stack Smashing Protection ¶

Stack Smashing Protection is a compiler feature which emits extra code to check for stack smashing attacks. It depends on a canary, which is initialized with the process, and functions for process termination when an overflow is detected. These are private entry points intended solely for use by the compiler, and are used when any of the `-fstack-protector`, `-fstack-protector-all`, `-fstack-protector-explicit`, or `-fstack-protector-strong` compiler flags are enabled.