1*95e33099SBrooks Davis /*- 2*95e33099SBrooks Davis * SPDX-License-Identifier: BSD-2-Clause 3*95e33099SBrooks Davis * 4*95e33099SBrooks Davis * Copyright (c) 2025 The FreeBSD Foundation 5*95e33099SBrooks Davis * All rights reserved. 6*95e33099SBrooks Davis * 7*95e33099SBrooks Davis * This software were developed by Konstantin Belousov <kib@FreeBSD.org> 8*95e33099SBrooks Davis * under sponsorship from the FreeBSD Foundation. 9*95e33099SBrooks Davis */ 10*95e33099SBrooks Davis 11*95e33099SBrooks Davis #define _WANT_P_OSREL 12*95e33099SBrooks Davis #include <sys/param.h> 13*95e33099SBrooks Davis #include <sys/exterrvar.h> 14*95e33099SBrooks Davis #include "libc_private.h" 15*95e33099SBrooks Davis 16*95e33099SBrooks Davis struct uexterror uexterr = { 17*95e33099SBrooks Davis .ver = UEXTERROR_VER, 18*95e33099SBrooks Davis }; 19*95e33099SBrooks Davis 20*95e33099SBrooks Davis static void uexterr_ctr(void) __attribute__((constructor)); 21*95e33099SBrooks Davis static void uexterr_ctr(void)22*95e33099SBrooks Davisuexterr_ctr(void) 23*95e33099SBrooks Davis { 24*95e33099SBrooks Davis if (__getosreldate() >= P_OSREL_EXTERRCTL) 25*95e33099SBrooks Davis exterrctl(EXTERRCTL_ENABLE, 0, &uexterr); 26*95e33099SBrooks Davis } 27