mailing list of musl libc
 help / color / mirror / code / Atom feed
* [musl] getsubopt error behavior documentation in man page
@ 2021-11-19 21:53 Rich Felker
  0 siblings, 0 replies; only message in thread
From: Rich Felker @ 2021-11-19 21:53 UTC (permalink / raw)
  To: linux-man, Michael Kerrisk (man-pages); +Cc: musl

The getsubopt man page documents the return value on error as:

    Otherwise, -1 is returned and *valuep is the entire name[=value]
    string.

without mentioning that this is a nonstandard extension. A couple
times now this has been raised against musl libc, which does not
support the extension, and we looked into supporting it, but it looks
like it violates our criteria for not supporting extensions where
historical implementations have conflicting behavior, which POSIX's
APPLICATION USAGE notes claim:

    The value of *valuep when getsubopt() returns -1 is unspecified.
    Historical implementations provide various incompatible extensions
    to allow an application to access the suboption text that was not
    found in the keylistp array.

Source: https://pubs.opengroup.org/onlinepubs/9699919799/functions/getsubopt.html

It's also not entirely clear that presence of the extension conforms
to the specified behavior.

Perhaps the text could be amended to something like:

    Otherwise, -1 is returned. In this case, the GNU C Library stores
    a pointer to the entire name[=value] string in *valuep as an
    extension; other implementations may differ in their behavior.

Rich

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-11-19 21:53 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-19 21:53 [musl] getsubopt error behavior documentation in man page Rich Felker

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).