Merge "libc_init_static: apply relro earlier."

This commit is contained in:
Nick Kralevich 2013-01-14 10:21:23 -08:00 committed by Gerrit Code Review
commit bb897fa9f7

View File

@ -101,6 +101,8 @@ __noreturn void __libc_init(uintptr_t *elfdata,
/* Initialize the C runtime environment */ /* Initialize the C runtime environment */
__libc_init_common(elfdata); __libc_init_common(elfdata);
apply_gnu_relro();
/* Several Linux ABIs don't pass the onexit pointer, and the ones that /* Several Linux ABIs don't pass the onexit pointer, and the ones that
* do never use it. Therefore, we ignore it. * do never use it. Therefore, we ignore it.
*/ */
@ -122,6 +124,5 @@ __noreturn void __libc_init(uintptr_t *elfdata,
if (structors->fini_array) if (structors->fini_array)
__cxa_atexit(__libc_fini,structors->fini_array,NULL); __cxa_atexit(__libc_fini,structors->fini_array,NULL);
apply_gnu_relro();
exit(slingshot(argc, argv, envp)); exit(slingshot(argc, argv, envp));
} }