Add NT_FREEBSD_FEATURE_CTL ELF note to csu

This note will be used to allow binaries to opt out of, or in to,
upcoming vulnerability mitigation and other features.  It is not yet
connected but being added now to facilitate testing and ensure
compatibility with existing kernels and tools.

Reviewed by:	brooks, jhb, kib, markj
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D17438
This commit is contained in:
emaste 2018-11-20 20:59:49 +00:00
parent 62e656950f
commit 177d0f3207

View File

@ -67,3 +67,18 @@ static const struct {
.name = NOTE_FREEBSD_VENDOR,
.desc = __FreeBSD_version
};
static const struct {
int32_t namesz;
int32_t descsz;
int32_t type;
char name[sizeof(NOTE_FREEBSD_VENDOR)];
uint32_t desc[1];
} crt_feature_ctl __attribute__ ((section (NOTE_SECTION),
aligned(4))) __used = {
.namesz = sizeof(NOTE_FREEBSD_VENDOR),
.descsz = sizeof(uint32_t),
.type = NT_FREEBSD_FEATURE_CTL,
.name = NOTE_FREEBSD_VENDOR,
.desc = { 0 }
};