freebsd-src/lib/libsys
Brooks Davis 1235d276b7 lib{c,sys}: stop exposing errno symbol
Officially since C11 (and in reality FreeBSD since 3.0 with commit
1b46cb523d) errno has been defined to be a macro.  Rename the symbol
to __libsys_errno and move it to FBSDprivate_1.0 and confine it entierly
to libsys for use by libthr.  Add a FBSD_1.0 compat symbol for existing
binaries that were incorrectly linked to the errno symbol during
libc.so.7's lifetime.

This deliberately breaks linking software that directly links to errno.
Such software is broken and will fail in surprising ways if it becomes
threaded (e.g., if it triggers loading of a pam or nss module that
uses threads.)

Reviewed by:	kib
Differential Revision:	https://reviews.freebsd.org/D46780
2024-09-27 20:27:46 +01:00
..
aarch64 libsys/aarch: Remove pointless MD syscall(2) 2024-03-07 00:59:01 +00:00
amd64 lib{c,sys}: return wrapped syscall APIs to libc 2024-03-13 18:36:02 +00:00
arm lib: Remove __ARM_ARCH checks that are always true 2024-06-12 11:49:05 +00:00
i386 man filesystems: fix xrefs after move to section 4 2024-05-16 10:25:29 -06:00
powerpc lib{c,sys}: return wrapped syscall APIs to libc 2024-03-13 18:36:02 +00:00
powerpc64 lib{c,sys}: return wrapped syscall APIs to libc 2024-03-13 18:36:02 +00:00
powerpcspe lib{c,sys}: fix powerpcspe build 2024-03-13 20:09:41 +00:00
riscv libsys/riscv: Remove pointless MD syscall(2) 2024-03-07 00:58:44 +00:00
x86 libsys: add guards to MD manpages 2024-02-09 17:22:13 +00:00
__error.c lib{c,sys}: stop exposing errno symbol 2024-09-27 20:27:46 +01:00
__getosreldate.c libc: move __getosreldate to libsys 2024-02-05 20:34:56 +00:00
__vdso_gettimeofday.c
_exit.2
_libsys.h Regen 2024-09-27 18:02:23 +03:00
_umtx_op.2
_umtx_op_err.c libthr: move _umtx_op_err() to libsys 2024-02-05 20:34:56 +00:00
abort2.2
accept.2
access.2 faccessat(2): Honor AT_SYMLINK_NOFOLLOW 2024-08-11 17:49:06 +02:00
acct.2
adjtime.2
aio_cancel.2
aio_error.2
aio_fsync.2
aio_mlock.2
aio_read.2 Document aio_read2/aio_write2 2024-02-11 03:54:16 +02:00
aio_return.2
aio_suspend.2
aio_waitcomplete.2
aio_write.2 Document aio_read2/aio_write2 2024-02-11 03:54:16 +02:00
auxv.3 libc: elf auxiliary vector handling to libsys 2024-02-05 20:34:56 +00:00
auxv.c libsys auxv.c: add fences needed to ensure that flag works 2024-02-21 16:18:10 +02:00
bind.2
bindat.2
brk.2
cap_enter.2
cap_fcntls_limit.2
cap_ioctls_limit.2
cap_rights_limit.2 rights.4: various corrections on capability rights 2024-04-28 22:48:31 -06:00
chdir.2
chflags.2
chmod.2
chown.2
chroot.2
clock_gettime.2 clock_gettime: Catch up with the CLOCK_BOOTTIME changes 2024-07-02 11:27:35 -06:00
clock_gettime.c
close.2
closefrom.2
connect.2
connectat.2
copy_file_range.2
cpuset.2
cpuset_getaffinity.2
cpuset_getdomain.2
creat.2 libsys: move __libsys_interposer consumers 2024-02-05 20:34:55 +00:00
dup.2
eventfd.2
execve.2 man filesystems: fix xrefs after move to section 4 2024-05-16 10:25:29 -06:00
extattr_get_file.2
fcntl.2
ffclock.2
fhlink.2 manuals: Fix errors in .2 pages 2024-09-20 11:37:02 -03:00
fhopen.2
fhreadlink.2 manuals: Fix errors in .2 pages 2024-09-20 11:37:02 -03:00
flock.2
fork.2
fspacectl.2
fsync.2
getdirentries.2
getdtablesize.2
getfh.2 manuals: Fix errors in .2 pages 2024-09-20 11:37:02 -03:00
getfsstat.2
getgid.2
getgroups.2
getitimer.2
getlogin.2
getloginclass.2
getpagesize.3 libc: move getpagesize(s) to libsys 2024-02-05 20:34:56 +00:00
getpagesize.c libc: move getpagesize(s) to libsys 2024-02-05 20:34:56 +00:00
getpagesizes.3 libc: move getpagesize(s) to libsys 2024-02-05 20:34:56 +00:00
getpagesizes.c libc: move getpagesize(s) to libsys 2024-02-05 20:34:56 +00:00
getpeername.2
getpgrp.2
getpid.2
getpriority.2
getrandom.2
getrlimit.2 getrlimit(2): document RLIMIT_PIPEBUF 2024-09-20 09:46:06 +03:00
getrusage.2
getsid.2
getsockname.2
getsockopt.2 socket: Implement SO_SPLICE 2024-09-10 16:51:37 +00:00
gettimeofday.2 gettimeofday.2: Do mention improbable future removal 2024-04-28 20:11:22 +02:00
gettimeofday.c
getuid.2
interposing_table.c libsys: make __libsys_interposing static 2024-03-13 17:31:48 +00:00
intro.2 intro.2 as errno.2: Use the name macro for errno 2024-05-04 08:56:10 -06:00
ioctl.2
issetugid.2
jail.2
kcmp.2
kenv.2
kill.2
kldfind.2
kldfirstmod.2
kldload.2
kldnext.2
kldstat.2
kldsym.2
kldunload.2
kqueue.2
ktrace.2
libc_stubs.c lib{c,sys}: move auxargs more firmly into libsys 2024-02-19 22:44:08 +00:00
libsys.h libsys: add a libsys.h 2024-04-16 17:48:07 +01:00
libsys_sigwait.c libsys: don't expose sigwait wrapper 2024-03-13 17:04:07 +00:00
link.2
lio_listio.2 lio_listio(2): add LIO_FOFFSET flag to ignore aiocb aio_offset 2024-02-11 03:53:50 +02:00
listen.2
lockf.3 libsys: move some missed manpages 2024-02-08 19:50:32 +00:00
lseek.2
madvise.2
Makefile lib{c,sys}: stop exposing errno symbol 2024-09-27 20:27:46 +01:00
Makefile.depend libsys: Add dependencies for dirdeps build 2024-09-18 13:03:42 -04:00
Makefile.sys libsys: Add MLINKs for recvmmsg.2 and sendmmsg.2 2024-08-03 10:57:57 -04:00
mincore.2
minherit.2
mkdir.2
mkfifo.2
mknod.2
mlock.2
mlockall.2
mmap.2
modfind.2
modnext.2
modstat.2
mount.2
mprotect.2
mq_close.2
mq_getattr.2
mq_notify.2
mq_open.2 mqueuefs: Relax restriction that path must begin with a slash 2024-05-23 13:40:46 -06:00
mq_receive.2
mq_send.2
mq_setattr.2
mq_unlink.2 man filesystems: fix xrefs after move to section 4 2024-05-16 10:25:29 -06:00
msgctl.2
msgget.2
msgrcv.2
msgsnd.2
msync.2
munmap.2
nanosleep.2
nfssvc.2
ntp_adjtime.2
open.2 open(2): devfs is in section 4 on HEAD 2024-08-28 01:23:20 +03:00
pathconf.2
pdfork.2
pipe.2
poll.2 ppoll(2) was actually added in 10.2 2024-06-23 16:13:28 -07:00
posix_fadvise.2
posix_fallocate.2
posix_openpt.2
procctl.2 manuals: Misc macro typos 2024-09-21 05:25:15 -06:00
profil.2
pselect.2
ptrace.2 manuals: Fix errors in .2 pages 2024-09-20 11:37:02 -03:00
ptrace.c
quotactl.2
rctl_add_rule.2
read.2 read(2): Add write cross reference 2024-03-01 20:36:39 -07:00
readlink.2
reboot.2
recv.2
recvmmsg.c include: ssp: fortify <sys/socket.h> 2024-07-13 00:16:26 -05:00
rename.2 rename(2): Extend EINVAL's description 2024-08-28 01:09:33 +03:00
revoke.2
rfork.2
rfork_thread.3 libc: move rfork_thread(3) to libsys 2024-02-05 20:34:56 +00:00
rmdir.2
rtprio.2
sched_get_priority_max.2
sched_getcpu_gen.c libc: libc/gen/sched_getcpu_gen.c -> libsys/ 2024-02-05 20:34:55 +00:00
sched_setparam.2
sched_setscheduler.2
sched_yield.2
sctp_generic_recvmsg.2
sctp_generic_sendmsg.2
sctp_peeloff.2
select.2
semctl.2
semget.2
semop.2
send.2
sendfile.2 man filesystems: fix xrefs after move to section 4 2024-05-16 10:25:29 -06:00
sendmmsg.c libsys: move __libsys_interposer consumers 2024-02-05 20:34:55 +00:00
setfib.2
setgroups.2
setpgid.2
setregid.2
setresuid.2
setreuid.2
setsid.2
setuid.2
shm_open.2
shmat.2
shmctl.2
shmget.2
shutdown.2
sigaction.2
sigaltstack.2
sigfastblock.2
sigpending.2
sigprocmask.2
sigqueue.2 sigqueue(2): Document __SIGQUEUE_TID 2024-04-23 19:51:10 +03:00
sigreturn.2
sigstack.2
sigsuspend.2
sigwait.2
sigwaitinfo.2
sleep.3 libsys: move some missed manpages 2024-02-08 19:50:32 +00:00
socket.2
socketpair.2
stat.2
statfs.2 manuals: Misc macro typos 2024-09-21 05:25:15 -06:00
swapon.2 manuals: Misc macro typos 2024-09-21 05:25:15 -06:00
Symbol.map lib{c,sys}: stop exposing errno symbol 2024-09-27 20:27:46 +01:00
Symbol.sys.map lib{c,sys}: stop exposing errno symbol 2024-09-27 20:27:46 +01:00
Symbol.thr.map libthr: move _umtx_op_err() to libsys 2024-02-05 20:34:56 +00:00
symlink.2
sync.2
sysarch.2
syscall.2
syscalls.map Regen 2024-09-27 18:02:23 +03:00
thr_exit.2
thr_kill.2
thr_new.2
thr_self.2
thr_set_name.2
thr_suspend.2
thr_wake.2
timer_create.2
timer_delete.2
timer_settime.2
timerfd.2 timerfd.2: Add documentation for CLOCK_UPTIME and CLOCK_BOOTTIME 2024-07-02 10:40:04 -06:00
truncate.2
umask.2
undelete.2
unlink.2
usleep.3 libsys: move some missed manpages 2024-02-08 19:50:32 +00:00
utimensat.2
utimes.2
utrace.2
uuidgen.2
vfork.2
wait.2 capsicum: allow subset of wait4(2) functionality 2024-08-27 17:22:12 +02:00
write.2