fork(4) download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. void bar()
  5. {
  6. puts("entered the bar ;)");
  7. exit(0);
  8. }
  9.  
  10. void** search(void** addr, void* value) __attribute__((noinline));
  11. void** search(void** addr, void* value)
  12. {
  13. while(*addr != value) addr++;
  14. return addr;
  15. }
  16.  
  17. void foo() __attribute__((noinline));
  18. void foo()
  19. {
  20. void** p = search((void**)&p, __builtin_return_address(0));
  21. *p = bar;
  22. }
  23.  
  24. int main()
  25. {
  26. foo();
  27. return 0;
  28. }
  29.  
Success #stdin #stdout 0s 2292KB
stdin
Standard input is empty
stdout
entered the bar ;)