errno.c 492 B

12345678910111213141516171819202122232425262728
  1. #include <stdlib.h>
  2. #include <string.h>
  3. #include <unistd.h>
  4. int* __errno_location(void)
  5. {
  6. static int __errno = 0;
  7. return &__errno;
  8. }
  9. void
  10. __attribute__((noreturn))
  11. __attribute__((weak))
  12. __stack_chk_fail(void)
  13. {
  14. const char* msg = "***** stack overflow detected *****\n"
  15. "quiting...\n";
  16. write(STDERR_FILENO, msg, strlen(msg));
  17. exit(-1);
  18. }
  19. void
  20. __attribute__((noreturn))
  21. __attribute__((weak))
  22. __stack_chk_fail_local(void)
  23. {
  24. __stack_chk_fail();
  25. }