Lines Matching refs:fds
734 static int prog_fd_by_nametag(void *nametag, int **fds, bool tag)
784 tmp = realloc(*fds, (nb_fds + 1) * sizeof(int));
789 *fds = tmp;
791 (*fds)[nb_fds++] = fd;
798 close((*fds)[nb_fds]);
802 int prog_parse_fds(int *argc, char ***argv, int **fds)
817 (*fds)[0] = bpf_prog_get_fd_by_id(id);
818 if ((*fds)[0] < 0) {
836 return prog_fd_by_nametag(tag, fds, true);
849 return prog_fd_by_nametag(name, fds, false);
858 (*fds)[0] = open_obj_pinned_any(path, BPF_OBJ_PROG);
859 if ((*fds)[0] < 0)
870 int *fds = NULL;
873 fds = malloc(sizeof(int));
874 if (!fds) {
878 nb_fds = prog_parse_fds(argc, argv, &fds);
883 close(fds[nb_fds]);
889 fd = fds[0];
891 free(fds);
895 static int map_fd_by_name(char *name, int **fds)
935 tmp = realloc(*fds, (nb_fds + 1) * sizeof(int));
940 *fds = tmp;
942 (*fds)[nb_fds++] = fd;
949 close((*fds)[nb_fds]);
953 int map_parse_fds(int *argc, char ***argv, int **fds)
968 (*fds)[0] = bpf_map_get_fd_by_id(id);
969 if ((*fds)[0] < 0) {
986 return map_fd_by_name(name, fds);
995 (*fds)[0] = open_obj_pinned_any(path, BPF_OBJ_MAP);
996 if ((*fds)[0] < 0)
1007 int *fds = NULL;
1010 fds = malloc(sizeof(int));
1011 if (!fds) {
1015 nb_fds = map_parse_fds(argc, argv, &fds);
1020 close(fds[nb_fds]);
1026 fd = fds[0];
1028 free(fds);