Fix a chicken-and-egg problem: this files implements SSP support,
so we cannot compile it with -fstack-protector[-all] flags (or it will self-recurse); this is ensured in sys/conf/files. This OTOH means that checking for defines __SSP__ and __SSP_ALL__ to determine if we should be compiling the support is impossible (which it was trying, resulting in an empty object file). Fix this by always compiling the symbols in this files. It's good because it allows us to always have SSP support, and then compile with SSP selectively. Repoted by: tinderbox
This commit is contained in:
parent
2b91fdddda
commit
c878414354
@ -7,7 +7,6 @@ __FBSDID("$FreeBSD$");
|
||||
#include <sys/systm.h>
|
||||
#include <sys/libkern.h>
|
||||
|
||||
#if defined(__SSP__) || defined(__SSP_ALL__)
|
||||
long __stack_chk_guard[8] = {};
|
||||
void __stack_chk_fail(void);
|
||||
|
||||
@ -31,5 +30,3 @@ __stack_chk_init(void *dummy __unused)
|
||||
}
|
||||
/* SI_SUB_EVENTHANDLER is right after SI_SUB_LOCK used by arc4rand() init. */
|
||||
SYSINIT(stack_chk, SI_SUB_EVENTHANDLER, SI_ORDER_ANY, __stack_chk_init, NULL);
|
||||
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user