| OLD | NEW |
| 1 #include <string.h> | 1 #include <string.h> |
| 2 #include <stdint.h> | 2 #include <stdint.h> |
| 3 #include "pthread_impl.h" | 3 #include "pthread_impl.h" |
| 4 | 4 |
| 5 uintptr_t __stack_chk_guard; | 5 uintptr_t __stack_chk_guard; |
| 6 | 6 |
| 7 void __init_ssp(void *entropy) | 7 void __init_ssp(void* entropy) { |
| 8 { | 8 if (entropy) |
| 9 » if (entropy) memcpy(&__stack_chk_guard, entropy, sizeof(uintptr_t)); | 9 memcpy(&__stack_chk_guard, entropy, sizeof(uintptr_t)); |
| 10 » else __stack_chk_guard = (uintptr_t)&__stack_chk_guard * 1103515245; | 10 else |
| 11 __stack_chk_guard = (uintptr_t)&__stack_chk_guard * 1103515245; |
| 11 | 12 |
| 12 » __pthread_self()->CANARY = __stack_chk_guard; | 13 __pthread_self()->CANARY = __stack_chk_guard; |
| 13 } | 14 } |
| 14 | 15 |
| 15 void __stack_chk_fail(void) | 16 void __stack_chk_fail(void) { |
| 16 { | 17 a_crash(); |
| 17 » a_crash(); | |
| 18 } | 18 } |
| 19 | 19 |
| 20 __attribute__((__visibility__("hidden"))) | 20 __attribute__((__visibility__("hidden"))) void __stack_chk_fail_local(void); |
| 21 void __stack_chk_fail_local(void); | |
| 22 | 21 |
| 23 weak_alias(__stack_chk_fail, __stack_chk_fail_local); | 22 weak_alias(__stack_chk_fail, __stack_chk_fail_local); |
| OLD | NEW |