getsubopt - Parses suboption arguments from a command line
Standard C Library (libc.so, libc.a)
Interfaces documented on this reference page conform to industry standards as follows:
Refer to the standards(5) reference page for more information about industry standards and associated tags.
Specifies the address of a pointer to the option string. Specifies an array of possible suboption tokens. Specifies the address of a value string pointer.
The getsubopt() function parses suboption arguments in a flag argument that was initially parsed by the getopt() function. These suboption arguments must be separated by commas and may consist of either a single token, or a token-value pair separated by an equal sign. Because commas delimit suboption arguments in the option string, commas are not allowed to be part of the suboption arguments or the value of a suboption argument. Similarly, because the equal sign separates a token from its value, a token must not contain an equal sign.
The following command line for the mount command gives an example of this syntax: mount -o ro,nosuid,rsize=8192 paradox:/u2 /u2 In this example, the suboption consists of three arguments: ro and nosuid (tokens), and rsize=8192 (a token-value pair).
When a suboption argument is found in the *optionp string that matches a string in the token array, the index of the matching string in the array is returned. If no match is found, then a -1 is returned. After each match, the *optionp string is updated to point past the matched suboption argument to the next suboption argument in the list. If the suboption argument matched is the last in the string, *optionp is set to the null pointer. If the suboption argument matched is a token-value pair, then *valuep is set to point to the value. If there is no value, then *valuep is to the null pointer.
The token array is a list of pointers to strings. The end of the array is signified by a NULL pointer.
Upon successful completion, the getsubopt() function returns the index of the token or suboption argument that matches the suboption argument in the input string. Otherwise, if no match is found, it returns a value of -1.
No errors are defined for this routine.
Standards: standards(5) delim off