Lines Matching refs:param

56 	struct fs_parameter *param, bool *negated)  in fs_lookup_key()  argument
59 const char *name = param->key; in fs_lookup_key()
60 bool want_flag = param->type == fs_value_is_flag; in fs_lookup_key()
105 struct fs_parameter *param, in __fs_parse() argument
112 p = fs_lookup_key(desc, param, &result->negated); in __fs_parse()
117 warn_plog(log, "Deprecated parameter '%s'", param->key); in __fs_parse()
123 if (param->type != fs_value_is_flag) in __fs_parse()
125 param->key); in __fs_parse()
128 int ret = p->type(log, p, param, result); in __fs_parse()
144 struct fs_parameter *param, in fs_lookup_param() argument
153 switch (param->type) { in fs_lookup_param()
155 f = getname_kernel(param->string); in fs_lookup_param()
161 f = param->name; in fs_lookup_param()
165 return invalf(fc, "%s: not usable as path", param->key); in fs_lookup_param()
168 ret = filename_lookup(param->dirfd, f, flags, _path, NULL); in fs_lookup_param()
170 errorf(fc, "%s: Lookup failure for '%s'", param->key, f->name); in fs_lookup_param()
180 param->key, f->name); in fs_lookup_param()
191 static int fs_param_bad_value(struct p_log *log, struct fs_parameter *param) in fs_param_bad_value() argument
193 return inval_plog(log, "Bad value for '%s'", param->key); in fs_param_bad_value()
197 struct fs_parameter *param, struct fs_parse_result *result) in fs_param_is_bool() argument
200 if (param->type != fs_value_is_string) in fs_param_is_bool()
201 return fs_param_bad_value(log, param); in fs_param_is_bool()
202 b = lookup_constant(bool_names, param->string, -1); in fs_param_is_bool()
204 return fs_param_bad_value(log, param); in fs_param_is_bool()
211 struct fs_parameter *param, struct fs_parse_result *result) in fs_param_is_u32() argument
214 if (param->type != fs_value_is_string || in fs_param_is_u32()
215 kstrtouint(param->string, base, &result->uint_32) < 0) in fs_param_is_u32()
216 return fs_param_bad_value(log, param); in fs_param_is_u32()
222 struct fs_parameter *param, struct fs_parse_result *result) in fs_param_is_s32() argument
224 if (param->type != fs_value_is_string || in fs_param_is_s32()
225 kstrtoint(param->string, 0, &result->int_32) < 0) in fs_param_is_s32()
226 return fs_param_bad_value(log, param); in fs_param_is_s32()
232 struct fs_parameter *param, struct fs_parse_result *result) in fs_param_is_u64() argument
234 if (param->type != fs_value_is_string || in fs_param_is_u64()
235 kstrtoull(param->string, 0, &result->uint_64) < 0) in fs_param_is_u64()
236 return fs_param_bad_value(log, param); in fs_param_is_u64()
242 struct fs_parameter *param, struct fs_parse_result *result) in fs_param_is_enum() argument
245 if (param->type != fs_value_is_string) in fs_param_is_enum()
246 return fs_param_bad_value(log, param); in fs_param_is_enum()
247 c = __lookup_constant(p->data, param->string); in fs_param_is_enum()
249 return fs_param_bad_value(log, param); in fs_param_is_enum()
256 struct fs_parameter *param, struct fs_parse_result *result) in fs_param_is_string() argument
258 if (param->type != fs_value_is_string || !*param->string) in fs_param_is_string()
259 return fs_param_bad_value(log, param); in fs_param_is_string()
265 struct fs_parameter *param, struct fs_parse_result *result) in fs_param_is_blob() argument
267 if (param->type != fs_value_is_blob) in fs_param_is_blob()
268 return fs_param_bad_value(log, param); in fs_param_is_blob()
274 struct fs_parameter *param, struct fs_parse_result *result) in fs_param_is_fd() argument
276 switch (param->type) { in fs_param_is_fd()
278 if (kstrtouint(param->string, 0, &result->uint_32) < 0) in fs_param_is_fd()
284 result->uint_32 = param->dirfd; in fs_param_is_fd()
291 return fs_param_bad_value(log, param); in fs_param_is_fd()
296 struct fs_parameter *param, struct fs_parse_result *result) in fs_param_is_blockdev() argument
303 struct fs_parameter *param, struct fs_parse_result *result) in fs_param_is_path() argument
367 const struct fs_parameter_spec *param, *p2; in fs_validate_description() local
370 for (param = desc; param->name; param++) { in fs_validate_description()
372 for (p2 = desc; p2 < param; p2++) { in fs_validate_description()
373 if (strcmp(param->name, p2->name) == 0) { in fs_validate_description()
374 if (is_flag(param) != is_flag(p2)) in fs_validate_description()
377 name, param->name); in fs_validate_description()