[PATCH] Re: [Bug 218453] Update posixoptions to POSIX.1-2018

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



 Sure!

I hope this is the right mailing list :)

Patch is attached.

Best regards,
Enrique
https://bugzilla.kernel.org/show_bug.cgi?id=218453

--- Comment #5 from Alejandro Colomar (alx@xxxxxxxxxx) ---
Hi Enrique,

On Fri, Feb 02, 2024 at 08:55:07PM +0000, bugzilla-daemon@xxxxxxxxxx wrote:
https://bugzilla.kernel.org/show_bug.cgi?id=218453

--- Comment #4 from Enrique Garcia (cquike@xxxxxxxx) ---
I have created a patch that potentially implements the changes above.
Would you mind sending the patch(es) to the mailing list?

Thanks,
Alex
From 161c3b77f278271c38f839064b3d8ac13e3f9279 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?C=C3=A9sar=20Enrique=20Garc=C3=ADa=20Dab=C3=B3?=
 <cquike@xxxxxxxx>
Date: Fri, 2 Feb 2024 21:45:03 +0100
Subject: [PATCH] Update posixoptions to POSIX.1-2018 version

---
 man7/posixoptions.7 | 367 +++-----------------------------------------
 1 file changed, 23 insertions(+), 344 deletions(-)

diff --git a/man7/posixoptions.7 b/man7/posixoptions.7
index 8ca4df0ea..80284de2a 100644
--- a/man7/posixoptions.7
+++ b/man7/posixoptions.7
@@ -26,6 +26,29 @@ parameter used to inquire about the option, and possibly
 a very short description.
 Much more precise detail can be found in the POSIX standard itself,
 versions of which can nowadays be accessed freely on the web.
+.P
+The followiing options were optional in previous versions of
+the standard but are now mandatory under POSIX.1-2018 and are always
+available:
+.B _POSIX_CHOWN_RESTRICTED,
+.B _POSIX_JOB_CONTROL,
+.B _POSIX_NO_TRUNC,
+.B _POSIX_REGEXP,
+.B _POSIX_SAVED_IDS,
+.B _POSIX_SHELL,
+.B _POSIX_ASYNCHRONOUS_IO,
+.B _POSIX_BARRIERS,
+.B _POSIX_CLOCK_SELECTION,
+.B _POSIX_MAPPED_FILES,
+.B _POSIX_MEMORY_PROTECTION,
+.B _POSIX_READER_WRITER_LOCKS,
+.B _POSIX_REALTIME_SIGNALS,
+.B _POSIX_SEMAPHORES,
+.B _POSIX_SPIN_LOCKS,
+.B _POSIX_THREAD_SAFE_FUNCTIONS,
+.B _POSIX_THREADS,
+.B _POSIX_TIMEOUTS,
+.B _POSIX_TIMERS.
 .SS ADV - _POSIX_ADVISORY_INFO - _SC_ADVISORY_INFO
 The following advisory functions are present:
 .P
@@ -37,77 +60,6 @@ The following advisory functions are present:
 .IR posix_madvise ()
 .in
 .fi
-.SS AIO - _POSIX_ASYNCHRONOUS_IO - _SC_ASYNCHRONOUS_IO
-The header
-.I <aio.h>
-is present.
-The following functions are present:
-.P
-.nf
-.in +4n
-.IR aio_cancel ()
-.IR aio_error ()
-.IR aio_fsync ()
-.IR aio_read ()
-.IR aio_return ()
-.IR aio_suspend ()
-.IR aio_write ()
-.IR lio_listio ()
-.in
-.fi
-.SS BAR - _POSIX_BARRIERS - _SC_BARRIERS
-This option implies the
-.B _POSIX_THREADS
-and
-.B _POSIX_THREAD_SAFE_FUNCTIONS
-options.
-The following functions are present:
-.P
-.nf
-.in +4n
-.IR pthread_barrier_destroy ()
-.IR pthread_barrier_init ()
-.IR pthread_barrier_wait ()
-.IR pthread_barrierattr_destroy ()
-.IR pthread_barrierattr_init ()
-.in
-.fi
-.\" .SS BE
-.\" Batch environment.
-.\" .SS CD
-.\" C development.
-.SS --- - POSIX_CHOWN_RESTRICTED
-If this option is in effect (as it always is under POSIX.1-2001),
-then only root may change the owner of a file, and nonroot can
-set the group of a file only to one of the groups it belongs to.
-This affects the following functions:
-.P
-.nf
-.in +4n
-.IR chown ()
-.IR fchown ()
-.in
-.fi
-.\" What about lchown() ?
-.SS CS - _POSIX_CLOCK_SELECTION - _SC_CLOCK_SELECTION
-This option implies the
-.B _POSIX_TIMERS
-option.
-The following functions are present:
-.P
-.nf
-.in +4n
-.IR pthread_condattr_getclock ()
-.IR pthread_condattr_setclock ()
-.IR clock_nanosleep ()
-.in
-.fi
-.P
-If
-.B CLOCK_REALTIME
-is changed by the function
-.IR clock_settime (),
-then this affects all timers set for an absolute time.
 .SS CPT - _POSIX_CPUTIME - _SC_CPUTIME
 The
 .B CLOCK_PROCESS_CPUTIME_ID
@@ -123,45 +75,12 @@ is present.
 .\" Fortran development
 .\" .SS FR
 .\" Fortran runtime
-.SS --- - _POSIX_FILE_LOCKING - _SC_FILE_LOCKING
-This option has been deleted.
-Not in final XPG6.
 .SS FSC - _POSIX_FSYNC - _SC_FSYNC
 The function
 .IR fsync ()
 is present.
 .SS IP6 - _POSIX_IPV6 - _SC_IPV6
 Internet Protocol Version 6 is supported.
-.SS --- - _POSIX_JOB_CONTROL - _SC_JOB_CONTROL
-If this option is in effect (as it always is under POSIX.1-2001),
-then the system implements POSIX-style job control,
-and the following functions are present:
-.P
-.nf
-.in +4n
-.IR setpgid ()
-.IR tcdrain ()
-.IR tcflush ()
-.IR tcgetpgrp ()
-.IR tcsendbreak ()
-.IR tcsetattr ()
-.IR tcsetpgrp ()
-.in
-.fi
-.SS MF - _POSIX_MAPPED_FILES - _SC_MAPPED_FILES
-Shared memory is supported.
-The include file
-.I <sys/mman.h>
-is present.
-The following functions are present:
-.P
-.nf
-.in +4n
-.IR mmap ()
-.IR msync ()
-.IR munmap ()
-.in
-.fi
 .SS ML - _POSIX_MEMLOCK - _SC_MEMLOCK
 Shared memory can be locked into core.
 The following functions are present:
@@ -182,10 +101,6 @@ The following functions are present:
 .IR munlock ()
 .in
 .fi
-.SS MPR - _POSIX_MEMORY_PROTECTION - _SC_MEMORY_PROTECTION
-The function
-.IR mprotect ()
-is present.
 .SS MSG - _POSIX_MESSAGE_PASSING - _SC_MESSAGE_PASSING
 The include file
 .I <mqueue.h>
@@ -221,18 +136,8 @@ The following functions are affected:
 .IR timer_create ()
 .in
 .fi
-.SS --- - _POSIX_MULTI_PROCESS - _SC_MULTI_PROCESS
-This option has been deleted.
-Not in final XPG6.
 .\" .SS MX
 .\" IEC 60559 Floating-Point Option.
-.SS --- - _POSIX_NO_TRUNC
-If this option is in effect (as it always is under POSIX.1-2001),
-then pathname components longer than
-.B NAME_MAX
-are not truncated,
-but give an error.
-This property may be dependent on the path prefix of the component.
 .SS PIO - _POSIX_PRIORITIZED_IO - _SC_PRIORITIZED_IO
 This option says that one can specify priorities for asynchronous I/O.
 This affects the functions
@@ -284,90 +189,8 @@ The following functions are affected:
 .IR setsockopt ()
 .in
 .fi
-.SS --- - _POSIX_READER_WRITER_LOCKS - _SC_READER_WRITER_LOCKS
-This option implies the
-.B _POSIX_THREADS
-option.
-Conversely,
-under POSIX.1-2001 the
-.B _POSIX_THREADS
-option implies this option.
-.P
-The following functions are present:
-.P
-.in +4n
-.nf
-.IR pthread_rwlock_destroy ()
-.IR pthread_rwlock_init ()
-.IR pthread_rwlock_rdlock ()
-.IR pthread_rwlock_tryrdlock ()
-.IR pthread_rwlock_trywrlock ()
-.IR pthread_rwlock_unlock ()
-.IR pthread_rwlock_wrlock ()
-.IR pthread_rwlockattr_destroy ()
-.IR pthread_rwlockattr_init ()
-.in
-.fi
-.SS RTS - _POSIX_REALTIME_SIGNALS - _SC_REALTIME_SIGNALS
-Realtime signals are supported.
-The following functions are present:
-.P
-.nf
-.in +4n
-.IR sigqueue ()
-.IR sigtimedwait ()
-.IR sigwaitinfo ()
-.in
-.fi
-.SS --- - _POSIX_REGEXP - _SC_REGEXP
-If this option is in effect (as it always is under POSIX.1-2001),
-then POSIX regular expressions are supported
-and the following functions are present:
-.P
-.nf
-.in +4n
-.IR regcomp ()
-.IR regerror ()
-.IR regexec ()
-.IR regfree ()
-.in
-.fi
-.SS --- - _POSIX_SAVED_IDS - _SC_SAVED_IDS
-If this option is in effect (as it always is under POSIX.1-2001),
-then a process has a saved set-user-ID and a saved set-group-ID.
-The following functions are affected:
-.P
-.nf
-.in +4n
-.IR exec ()
-.IR kill ()
-.IR seteuid ()
-.IR setegid ()
-.IR setgid ()
-.IR setuid ()
-.in
-.fi
 .\" .SS SD
 .\" Software development
-.SS SEM - _POSIX_SEMAPHORES - _SC_SEMAPHORES
-The include file
-.I <semaphore.h>
-is present.
-The following functions are present:
-.P
-.nf
-.in +4n
-.IR sem_close ()
-.IR sem_destroy ()
-.IR sem_getvalue ()
-.IR sem_init ()
-.IR sem_open ()
-.IR sem_post ()
-.IR sem_trywait ()
-.IR sem_unlink ()
-.IR sem_wait ()
-.in
-.fi
 .SS SHM - _POSIX_SHARED_MEMORY_OBJECTS - _SC_SHARED_MEMORY_OBJECTS
 The following functions are present:
 .P
@@ -379,11 +202,6 @@ The following functions are present:
 .IR shm_unlink ()
 .in
 .fi
-.SS --- - _POSIX_SHELL - _SC_SHELL
-If this option is in effect (as it always is under POSIX.1-2001),
-the function
-.IR system ()
-is present.
 .SS SPN - _POSIX_SPAWN - _SC_SPAWN
 This option describes support for process creation in a context where
 it is difficult or impossible to use
@@ -431,23 +249,6 @@ the following functions are present:
 .IR posix_spawnattr_setschedpolicy ()
 .in
 .fi
-.SS SPI - _POSIX_SPIN_LOCKS - _SC_SPIN_LOCKS
-This option implies the
-.B _POSIX_THREADS
-and
-.B _POSIX_THREAD_SAFE_FUNCTIONS
-options.
-The following functions are present:
-.P
-.nf
-.in +4n
-.IR pthread_spin_destroy ()
-.IR pthread_spin_init ()
-.IR pthread_spin_lock ()
-.IR pthread_spin_trylock ()
-.IR pthread_spin_unlock ()
-.in -4n
-.fi
 .SS SS - _POSIX_SPORADIC_SERVER - _SC_SPORADIC_SERVER
 The scheduling policy
 .B SCHED_SPORADIC
@@ -567,32 +368,6 @@ The following functions are affected:
 .IR pthread_rwlockattr_setpshared ()
 .in
 .fi
-.SS TSF - _POSIX_THREAD_SAFE_FUNCTIONS - _SC_THREAD_SAFE_FUNCTIONS
-The following functions are affected:
-.P
-.nf
-.in +4n
-.IR readdir_r ()
-.IR getgrgid_r ()
-.IR getgrnam_r ()
-.IR getpwnam_r ()
-.IR getpwuid_r ()
-.IR flockfile ()
-.IR ftrylockfile ()
-.IR funlockfile ()
-.IR getc_unlocked ()
-.IR getchar_unlocked ()
-.IR putc_unlocked ()
-.IR putchar_unlocked ()
-.IR rand_r ()
-.IR strerror_r ()
-.IR strtok_r ()
-.IR asctime_r ()
-.IR ctime_r ()
-.IR gmtime_r ()
-.IR localtime_r ()
-.in
-.fi
 .SS TSP - _POSIX_THREAD_SPORADIC_SERVER - _SC_THREAD_SPORADIC_SERVER
 This option implies the
 .B _POSIX_THREAD_PRIORITY_SCHEDULING
@@ -606,92 +381,6 @@ The following functions are affected:
 .IR sched_setscheduler ()
 .in
 .fi
-.SS THR - _POSIX_THREADS - _SC_THREADS
-Basic support for POSIX threads is available.
-The following functions are present:
-.P
-.nf
-.in +4n
-.IR pthread_atfork ()
-.IR pthread_attr_destroy ()
-.IR pthread_attr_getdetachstate ()
-.IR pthread_attr_getschedparam ()
-.IR pthread_attr_init ()
-.IR pthread_attr_setdetachstate ()
-.IR pthread_attr_setschedparam ()
-.IR pthread_cancel ()
-.IR pthread_cleanup_push ()
-.IR pthread_cleanup_pop ()
-.IR pthread_cond_broadcast ()
-.IR pthread_cond_destroy ()
-.IR pthread_cond_init ()
-.IR pthread_cond_signal ()
-.IR pthread_cond_timedwait ()
-.IR pthread_cond_wait ()
-.IR pthread_condattr_destroy ()
-.IR pthread_condattr_init ()
-.IR pthread_create ()
-.IR pthread_detach ()
-.IR pthread_equal ()
-.IR pthread_exit ()
-.IR pthread_getspecific ()
-.IR pthread_join ()
-.IR pthread_key_create ()
-.IR pthread_key_delete ()
-.IR pthread_mutex_destroy ()
-.IR pthread_mutex_init ()
-.IR pthread_mutex_lock ()
-.IR pthread_mutex_trylock ()
-.IR pthread_mutex_unlock ()
-.IR pthread_mutexattr_destroy ()
-.IR pthread_mutexattr_init ()
-.IR pthread_once ()
-.IR pthread_rwlock_destroy ()
-.IR pthread_rwlock_init ()
-.IR pthread_rwlock_rdlock ()
-.IR pthread_rwlock_tryrdlock ()
-.IR pthread_rwlock_trywrlock ()
-.IR pthread_rwlock_unlock ()
-.IR pthread_rwlock_wrlock ()
-.IR pthread_rwlockattr_destroy ()
-.IR pthread_rwlockattr_init ()
-.IR pthread_self ()
-.IR pthread_setcancelstate ()
-.IR pthread_setcanceltype ()
-.IR pthread_setspecific ()
-.IR pthread_testcancel ()
-.in
-.fi
-.SS TMO - _POSIX_TIMEOUTS - _SC_TIMEOUTS
-The following functions are present:
-.P
-.nf
-.in +4n
-.IR mq_timedreceive ()
-.IR mq_timedsend ()
-.IR pthread_mutex_timedlock ()
-.IR pthread_rwlock_timedrdlock ()
-.IR pthread_rwlock_timedwrlock ()
-.IR sem_timedwait ()
-.IR posix_trace_timedgetnext_event ()
-.in
-.fi
-.SS TMR - _POSIX_TIMERS - _SC_TIMERS
-The following functions are present:
-.P
-.nf
-.in +4n
-.IR clock_getres ()
-.IR clock_gettime ()
-.IR clock_settime ()
-.IR nanosleep ()
-.IR timer_create ()
-.IR timer_delete ()
-.IR timer_gettime ()
-.IR timer_getoverrun ()
-.IR timer_settime ()
-.in
-.fi
 .SS TRC - _POSIX_TRACE - _SC_TRACE
 POSIX tracing is available.
 The following functions are present:
@@ -974,19 +663,11 @@ This option implies the following options:
 .TP
 .B _POSIX_FSYNC
 .TP
-.B _POSIX_MAPPED_FILES
-.TP
-.B _POSIX_MEMORY_PROTECTION
-.TP
 .B _POSIX_THREAD_ATTR_STACKADDR
 .TP
 .B _POSIX_THREAD_ATTR_STACKSIZE
 .TP
 .B _POSIX_THREAD_PROCESS_SHARED
-.TP
-.B _POSIX_THREAD_SAFE_FUNCTIONS
-.TP
-.B _POSIX_THREADS
 .PD
 .P
 This option may imply the following options from the XSI option groups:
@@ -1006,8 +687,6 @@ This option may imply the following options from the XSI option groups:
 .RB "Tracing (" TRACING )
 .TP
 .RB "XSI Streams (" STREAMS )
-.TP
-.RB "Legacy (" _XOPEN_LEGACY )
 .PD
 .SH SEE ALSO
 .BR sysconf (3),
-- 
2.43.0


[Index of Archives]     [Kernel Documentation]     [Netdev]     [Linux Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux