1*b725ae77Skettenis #include <stdio.h> 2*b725ae77Skettenis #include <stdlib.h> 3*b725ae77Skettenis #include <unistd.h> 4*b725ae77Skettenis 5*b725ae77Skettenis /* There is a global_i in foll-exec, which exec's us. We 6*b725ae77Skettenis should not be able to see that other definition of global_i 7*b725ae77Skettenis after we are exec'd. 8*b725ae77Skettenis */ 9*b725ae77Skettenis int global_i = 0; 10*b725ae77Skettenis 11*b725ae77Skettenis #ifdef PROTOTYPES main(int argc,char ** argv)12*b725ae77Skettenisint main (int argc, char **argv) 13*b725ae77Skettenis #else 14*b725ae77Skettenis main (argc, argv) 15*b725ae77Skettenis int argc; 16*b725ae77Skettenis char * argv[]; 17*b725ae77Skettenis #endif 18*b725ae77Skettenis { 19*b725ae77Skettenis /* There is a local_j in foll-exec, which exec's us. We 20*b725ae77Skettenis should not be able to see that other definition of local_j 21*b725ae77Skettenis after we are exec'd. 22*b725ae77Skettenis */ 23*b725ae77Skettenis int local_j = argc; 24*b725ae77Skettenis char * s; 25*b725ae77Skettenis 26*b725ae77Skettenis printf ("Hello from execd-prog...\n"); 27*b725ae77Skettenis if (argc != 2) 28*b725ae77Skettenis { 29*b725ae77Skettenis printf ("expected one string argument\n"); 30*b725ae77Skettenis exit (-1); 31*b725ae77Skettenis } 32*b725ae77Skettenis s = argv[1]; 33*b725ae77Skettenis printf ("argument received: %s\n", s); 34*b725ae77Skettenis } 35