Desired Action |
Replace the entire contents of B.3.1 (and its subsections) with:This section contains a list of options and interfaces removed in POSIX.1-202x, together with advice for application developers on the alternative interfaces that should be used. B.3.1.1 STREAMS OptionApplications are recommended to use UNIX domain sockets as an alternative for much of the functionality provided by this option. For example, file descriptor passing can be performed using sendmsg() and recvmsg() with SCM_RIGHTS on a UNIX domain socket instead of using ioctl() with I_SENDFD and I_RECVFD on a STREAM. B.3.1.2 Tracing OptionApplications are recommended to use implementation-provided extension interfaces instead of the functionality provided by this option. (Such interfaces were in widespread use before the Tracing option was added to POSIX.1 and continued to be used in preference to the Tracing option interfaces.) B.3.1.3 _longjmp() and _setjmp()Applications are recommended to use siglongjmp() and sigsetjmp() instead of these functions. B.3.1.4 _tolower() and _toupper()Applications are recommended to use tolower() and toupper() instead of these functions. B.3.1.5 ftw()Applications are recommended to use nftw() instead of this function. B.3.1.6 getitimer() and setitimer()Applications are recommended to use timer_gettime() and timer_settime() instead of these functions. B.3.1.7 gets()Applications are recommended to use fgets() instead of this function. B.3.1.8 gettimeofday()Applications are recommended to use clock_gettime() instead of this function. B.3.1.9 isascii() and toascii()Applications are recommended to use macros equivalent to the following instead of these functions:#define isascii(c) (((c) & ~0177) == 0)
#define toascii(c) ((c) & 0177) An alternative replacement for isascii(), depending on the intended outcome if the code is ported to implementations with different character encodings, might be:#define isascii(c) (isprint((c)) || iscntrl((c))) (In the C or POSIX locale, this determines whether c is a character in the portable character set.) B.3.1.10 pthread_getconcurrency() and pthread_setconcurrency()Applications are recommended to use thread scheduling (on implementations that support the Thread Execution Scheduling option) instead of these functions; see [xref to XSH 2.9.4 Thread Scheduling]. B.3.1.11 rand_r()Applications are recommended to use nrand48() or random() instead of this function. B.3.1.12 setpgrp()Applications are recommended to use setpgid() or setsid() instead of this function. B.3.1.13 sighold(), sigpause(), and sigrelse()Applications are recommended to use pthread_sigmask() or sigprocmask() instead of these functions. B.3.1.14 sigignore(), siginterrupt(), and sigset()Applications are recommended to use sigaction() instead of these functions. B.3.1.15 tempnam()Applications are recommended to use mkdtemp(), mkstemp(), or tmpfile() instead of this function. B.3.1.16 ulimit()Applications are recommended to use getrlimit() or setrlimit() instead of this function. B.3.1.17 utime()Applications are recommended to use futimens() if a file descriptor for the file is open, otherwise utimensat(), instead of this function.
|