0
..
..
.L "int stropt(char* s, struct namval* tab,
.L " int (*fun)(void* a, struct namval* p, int n, char* v),"
.L " void* a)"
An option expression contains 0 or more of [no]name[=value] separate by space or tab , where name must be one of the option names in tab , value is an optional value, and no is for Boolean options. Each option is passed to fun for processing. a is the .L void* pointer that is passed from the stropt call but is otherwise not interpreted. p points to the option name value pair from tab . n is 0 if no preceded the option name and v points to the beginning of the option value in s . and If name is not found in tab then fun is called with p pointing to an internal namval entry with p->name pointing to the unknown option and p->value set to the value of the sentinel entry in tab .
If fun returns non-zero then this value is returned and no further options are processed. Otherwise stropt returns 0 after processing all options.