/* Test program for making nonexecutable stacks executable on DT_NEEDED load of a DSO that requires executable stacks. */ #include #include #include #include #include extern void tryme (void); /* from tst-execstack-mod.so */ static void deeper (void (*f) (void)); static int do_test (void) { tryme (); /* Test that growing the stack region gets new executable pages too. */ deeper (&tryme); return 0; } static void deeper (void (*f) (void)) { char stack[1100 * 1024]; memfrob (stack, sizeof stack); (*f) (); memfrob (stack, sizeof stack); } #include