/* RFC 019 §7 FFI canary: an honest unprobed C frame with a 96 KiB local, * touched from its LOW end first — the exact "one sub rsp steps over a small * guard" pattern the RFC's motivating incident hit (a cargo-vendored gz * build; cc-invoked builds do not enable -fstack-clash-protection, and this * file pins that off explicitly so the canary stays a canary even on * hardened-default toolchains). */ void smarm_canary_burn(void) { volatile char buf[96 * 1024]; buf[0] = 1; /* deepest address first */ for (unsigned i = 0; i < sizeof buf; i += 4096) { buf[i] = (char)i; } buf[sizeof buf - 1] = 1; }