glibc/posix/Versions
Adhemerval Zanella 6289d28d3c posix: Replace posix_spawnattr_tc{get,set}pgrp_np with posix_spawn_file_actions_addtcsetpgrp_np
The posix_spawnattr_tcsetpgrp_np works on a file descriptor (the
controlling terminal), so it would make more sense to actually fit
it on the file actions API.

Also, POSIX_SPAWN_TCSETPGROUP is not really required since it is
implicit by the presence of tcsetpgrp file action.

The posix/tst-spawn6.c is also fixed when TTY can is not present.

Checked on x86_64-linux-gnu and i686-linux-gnu.

Reviewed-by: Carlos O'Donell <carlos@redhat.com>
Tested-by: Carlos O'Donell <carlos@redhat.com>
2022-02-02 08:34:16 -03:00

168 lines
3.9 KiB
Plaintext

libc {
GLIBC_2.0 {
# functions with special/multiple interfaces
__bsd_getpgrp; __getpgid; __setpgid;
# functions with required interface outside normal name space
_exit;
# functions used in other libraries
__sched_get_priority_max; __sched_get_priority_min;
__sched_getparam; __sched_getscheduler; __sched_setscheduler;
__sched_yield; __fork; __getpid; __wait;
# functions used by libstdc++ 2.7.2
__waitpid;
# global variables
__environ; _environ;
# variables in normal name space
environ; optarg; opterr; optind; optopt;
re_max_failures; re_syntax_options;
# a*
alarm;
# c*
confstr;
# e*
execl; execle; execlp; execv; execve; execvp; fexecve;
# f*
fnmatch; fork; fpathconf; freeaddrinfo;
# g*
getaddrinfo; getdtablesize; getegid; geteuid; getgid; getopt; getopt_long;
getopt_long_only; getpgid; getpgrp; getpid; getppid; getsid; getuid; glob;
glob_pattern_p; globfree; group_member;
# n*
nanosleep;
# p*
pathconf; pause; pselect;
# r*
re_comp; re_compile_fastmap; re_compile_pattern; re_exec; re_match;
re_match_2; re_search; re_search_2; re_set_registers; re_set_syntax;
regcomp; regerror; regexec; regfree;
# s*
sched_get_priority_max; sched_get_priority_min; sched_getparam;
sched_getscheduler; sched_rr_get_interval; sched_setparam;
sched_setscheduler; sched_yield; setegid; seteuid; setgid;
setpgid; setpgrp; setsid; setuid; sleep; sysconf;
# t*
times;
# u*
uname;
# v*
vfork;
# w*
wait; wait3; wait4; waitpid;
}
GLIBC_2.1 {
# functions used in other libraries
__pread64; __pwrite64;
# g*
gai_strerror; getnameinfo; glob64; globfree64;
# p*
pread; pread64; pwrite; pwrite64;
# w*
waitid; wordexp; wordfree;
}
GLIBC_2.1 {
# Compat symbols for the obsolete, unimplemented XSI streams extension.
fattach; fdetach; getmsg; getpmsg; isastream; putmsg; putpmsg;
}
GLIBC_2.1.2 {
# functions used in other libraries
__vfork;
}
GLIBC_2.2 {
# p*
posix_spawn_file_actions_init; posix_spawn_file_actions_destroy;
posix_spawn_file_actions_addclose; posix_spawn_file_actions_addopen;
posix_spawn_file_actions_adddup2;
posix_spawnattr_init; posix_spawnattr_destroy;
posix_spawnattr_getsigdefault; posix_spawnattr_setsigdefault;
posix_spawnattr_getflags; posix_spawnattr_setflags;
posix_spawnattr_getpgroup; posix_spawnattr_setpgroup;
posix_spawnattr_setsigmask; posix_spawnattr_getsigmask;
posix_spawn; posix_spawnp; posix_spawnattr_getschedpolicy;
posix_spawnattr_setschedpolicy; posix_spawnattr_getschedparam;
posix_spawnattr_setschedparam;
# Used in macros.
__sysconf;
}
GLIBC_2.2.3 {
# Extended Interface.
fnmatch;
}
GLIBC_2.2.6 {
# For syscall wrapper
__nanosleep;
}
GLIBC_2.3.2 {
# Note that these symbols appear in sysdeps/unix/sysv/linux/Versions
# under GLIBC_2.0; the first instance in the script is taken as the
# default, so linux configurations put them in GLIBC_2.0 while other
# configuration put them in GLIBC_2.3.2.
getresgid; getresuid; setresgid; setresuid;
}
GLIBC_2.3.3 {
sched_getaffinity; sched_setaffinity;
}
GLIBC_2.3.4 {
regexec;
}
GLIBC_2.6 {
__sched_cpucount;
}
GLIBC_2.7 {
__sched_cpualloc; __sched_cpufree;
}
GLIBC_2.10 {
__posix_getopt;
}
GLIBC_2.11 {
execvpe;
}
GLIBC_2.15 {
posix_spawn;
posix_spawnp;
}
GLIBC_2.27 {
glob; glob64;
}
GLIBC_2.29 {
posix_spawn_file_actions_addchdir_np;
posix_spawn_file_actions_addfchdir_np;
}
GLIBC_2.30 {
}
GLIBC_2.34 {
_Fork;
execveat;
posix_spawn_file_actions_addclosefrom_np;
}
GLIBC_2.35 {
posix_spawn_file_actions_addtcsetpgrp_np;
}
GLIBC_PRIVATE {
__libc_fork; __libc_pread; __libc_pwrite;
__nanosleep_nocancel; __pause_nocancel;
__shm_get_name;
}
}