Example #1
0
valType_t val_str2type(const char *str)
{
  wuKeyFlag_t flag = str2flag(str, valTypeDesc);
  if (flag == WULIB_FLAG_INVALID)
    return invType;
  return (valType_t)flag;
}
Example #2
0
static int
ana_flags(int arg_number)
{
	NODE *tmp, *array, *elm, *value;
	int i;
	int flag;
	int flags = 0;

	array = (NODE *) get_array_argument(arg_number, FALSE);
	if ( array != NULL ) {
		for (i = 0; i < array->array_size; i++) {
			for (elm = array->var_array[i]; elm != NULL; elm = elm->ahnext) {
				flag = str2flag(elm->hname);
				if (flag) {
					value = elm->hvalue;
					force_string(value);
					if (value->stptr[0] != '0' && value->stptr[0] != '\0') {
						flags |= flag;
					}
				}
			}
		}
	} else {
		tmp = (NODE *) get_scalar_argument(arg_number, FALSE);
		if (tmp->stptr[0] == '\0') {
			flags |= SA_RESTART;    /* システムコールが中止しない */
		} else {
			//TODO;
		}
	}

	return 0;
}
Example #3
0
uint64_t tokparse(char *caps, uint64_t (*str2flag) (char *inputstr))
{
	uint64_t flags = 0;
	char *tok;

	for (tok = strtok(caps, "|"); tok != NULL; tok = strtok(NULL, "|"))
		flags |= str2flag(tok);

	return flags;
}
Example #4
0
static int tokparse(char *caps,
		    int (*str2flag)(char *, uint64_t *),
		    uint64_t *flags)
{
	uint64_t value;
	char *tok;
	int ret;

	for (tok = strtok(caps, "|"); tok != NULL; tok = strtok(NULL, "|")) {
		ret = str2flag(tok, &value);
		if (ret)
			return ret;

		*flags |= value;
	}

	return 0;
}