blob: 9b87898b3649744b59ea722840652413526976f5 [file] [log] [blame]
#include <stdlib.h>
#include <string.h>
int getsubopt(char** opt, char* const* keys, char** val) {
char* s = *opt;
int i;
*val = NULL;
*opt = strchr(s, ',');
if (*opt)
*(*opt)++ = 0;
else
*opt = s + strlen(s);
for (i = 0; keys[i]; i++) {
size_t l = strlen(keys[i]);
if (strncmp(keys[i], s, l))
continue;
if (s[l] == '=')
*val = s + l + 1;
else if (s[l])
continue;
return i;
}
return -1;
}