Lines Matching refs:argv

298 static char **parse_bytes(char **argv, const char *name, unsigned char *val,  in parse_bytes()  argument
304 if (is_prefix(*argv, "hex")) { in parse_bytes()
306 argv++; in parse_bytes()
309 while (i < n && argv[i]) { in parse_bytes()
310 val[i] = strtoul(argv[i], &endptr, base); in parse_bytes()
312 p_err("error parsing byte: %s", argv[i]); in parse_bytes()
323 return argv + i; in parse_bytes()
340 static int parse_elem(char **argv, struct bpf_map_info *info, void *key, in parse_elem() argument
344 if (!*argv) { in parse_elem()
351 if (is_prefix(*argv, "key")) { in parse_elem()
360 argv = parse_bytes(argv + 1, "key", key, key_size); in parse_elem()
361 if (!argv) in parse_elem()
364 return parse_elem(argv, info, NULL, value, key_size, value_size, in parse_elem()
366 } else if (is_prefix(*argv, "value")) { in parse_elem()
377 argv++; in parse_elem()
386 if (!argv[0] || !argv[1]) { in parse_elem()
391 fd = map_parse_fd(&argc, &argv, open_flags); in parse_elem()
404 if (!argv[0] || !argv[1]) { in parse_elem()
408 if (is_prefix(*argv, "id")) in parse_elem()
412 fd = prog_parse_fd(&argc, &argv); in parse_elem()
419 argv = parse_bytes(argv, "value", value, value_size); in parse_elem()
420 if (!argv) in parse_elem()
426 return parse_elem(argv, info, key, NULL, key_size, value_size, in parse_elem()
428 } else if (is_prefix(*argv, "any") || is_prefix(*argv, "noexist") || in parse_elem()
429 is_prefix(*argv, "exist")) { in parse_elem()
431 p_err("flags specified multiple times: %s", *argv); in parse_elem()
435 if (is_prefix(*argv, "any")) in parse_elem()
437 else if (is_prefix(*argv, "noexist")) in parse_elem()
439 else if (is_prefix(*argv, "exist")) in parse_elem()
442 return parse_elem(argv + 1, info, key, value, key_size, in parse_elem()
446 p_err("expected key or value, got: %s", *argv); in parse_elem()
629 static int do_show_subset(int argc, char **argv) in do_show_subset() argument
642 nb_fds = map_parse_fds(&argc, &argv, &fds, BPF_F_RDONLY); in do_show_subset()
673 static int do_show(int argc, char **argv) in do_show() argument
696 return do_show_subset(argc, argv); in do_show()
898 static int do_dump(int argc, char **argv) in do_dump() argument
915 nb_fds = map_parse_fds(&argc, &argv, &fds, BPF_F_RDONLY); in do_dump()
991 static int do_update(int argc, char **argv) in do_update() argument
1003 fd = map_parse_fd_and_info(&argc, &argv, &info, &len, 0); in do_update()
1011 err = parse_elem(argv, &info, key, value, info.key_size, in do_update()
1071 static int do_lookup(int argc, char **argv) in do_lookup() argument
1082 fd = map_parse_fd_and_info(&argc, &argv, &info, &len, BPF_F_RDONLY); in do_lookup()
1090 err = parse_elem(argv, &info, key, NULL, info.key_size, 0, NULL, NULL, in do_lookup()
1123 static int do_getnext(int argc, char **argv) in do_getnext() argument
1134 fd = map_parse_fd_and_info(&argc, &argv, &info, &len, BPF_F_RDONLY); in do_getnext()
1147 err = parse_elem(argv, &info, key, NULL, info.key_size, 0, NULL, in do_getnext()
1194 static int do_delete(int argc, char **argv) in do_delete() argument
1205 fd = map_parse_fd_and_info(&argc, &argv, &info, &len, 0); in do_delete()
1216 err = parse_elem(argv, &info, key, NULL, info.key_size, 0, NULL, NULL, in do_delete()
1234 static int map_parse_read_only_fd(int *argc, char ***argv) in map_parse_read_only_fd() argument
1236 return map_parse_fd(argc, argv, BPF_F_RDONLY); in map_parse_read_only_fd()
1239 static int do_pin(int argc, char **argv) in do_pin() argument
1243 err = do_pin_any(argc, argv, map_parse_read_only_fd); in do_pin()
1249 static int do_create(int argc, char **argv) in do_create() argument
1266 if (is_prefix(*argv, "type")) { in do_create()
1274 map_type = map_type_from_str(*argv); in do_create()
1276 p_err("unrecognized map type: %s", *argv); in do_create()
1280 } else if (is_prefix(*argv, "name")) { in do_create()
1287 } else if (is_prefix(*argv, "key")) { in do_create()
1288 if (parse_u32_arg(&argc, &argv, &key_size, in do_create()
1291 } else if (is_prefix(*argv, "value")) { in do_create()
1292 if (parse_u32_arg(&argc, &argv, &value_size, in do_create()
1295 } else if (is_prefix(*argv, "entries")) { in do_create()
1296 if (parse_u32_arg(&argc, &argv, &max_entries, in do_create()
1299 } else if (is_prefix(*argv, "flags")) { in do_create()
1300 if (parse_u32_arg(&argc, &argv, &attr.map_flags, in do_create()
1303 } else if (is_prefix(*argv, "dev")) { in do_create()
1307 } else if (is_prefix(*argv, "offload_dev")) { in do_create()
1316 attr.map_ifindex = if_nametoindex(*argv); in do_create()
1319 *argv, strerror(errno)); in do_create()
1323 } else if (is_prefix(*argv, "inner_map")) { in do_create()
1331 inner_map_fd = map_parse_fd_and_info(&argc, &argv, in do_create()
1337 p_err("unknown arg %s", *argv); in do_create()
1370 static int do_pop_dequeue(int argc, char **argv) in do_pop_dequeue() argument
1381 fd = map_parse_fd_and_info(&argc, &argv, &info, &len, 0); in do_pop_dequeue()
1413 static int do_freeze(int argc, char **argv) in do_freeze() argument
1420 fd = map_parse_fd(&argc, &argv, 0); in do_freeze()
1442 static int do_help(int argc, char **argv) in do_help() argument
1484 bin_name, argv[-2]); in do_help()
1510 int do_map(int argc, char **argv) in do_map() argument
1512 return cmd_select(cmds, argc, argv, do_help); in do_map()