Lines Matching refs:nh

53 	struct nlmsghdr *nh = (void *)data;  in init_genl_req()  local
57 nh->nlmsg_type = family; in init_genl_req()
58 nh->nlmsg_flags = NLM_F_REQUEST; in init_genl_req()
59 nh->nlmsg_len = NLMSG_LENGTH(GENL_HDRLEN); in init_genl_req()
60 off += NLMSG_ALIGN(sizeof(*nh)); in init_genl_req()
69 static int nl_error(struct nlmsghdr *nh) in nl_error() argument
71 struct nlmsgerr *err = (struct nlmsgerr *)NLMSG_DATA(nh); in nl_error()
72 int len = nh->nlmsg_len - sizeof(*nh); in nl_error()
83 struct rtattr *attrs = (struct rtattr *)NLMSG_DATA(nh); in nl_error()
111 struct nlmsghdr *nh; in capture_events() local
136 nh = (struct nlmsghdr *)buffer; in capture_events()
138 for (; NLMSG_OK(nh, res_len); nh = NLMSG_NEXT(nh, res_len)) { in capture_events()
139 if (nh->nlmsg_type == NLMSG_ERROR) in capture_events()
142 ghdr = (struct genlmsghdr *)NLMSG_DATA(nh); in capture_events()
149 msg_len = nh->nlmsg_len - NLMSG_LENGTH(GENL_HDRLEN); in capture_events()
208 static int do_nl_req(int fd, struct nlmsghdr *nh, int len, int max) in do_nl_req() argument
212 void *data = nh; in do_nl_req()
218 nh->nlmsg_flags |= NLM_F_ACK; in do_nl_req()
222 nh->nlmsg_len = len; in do_nl_req()
233 for (; NLMSG_OK(nh, rem); nh = NLMSG_NEXT(nh, rem)) { in do_nl_req()
234 if (nh->nlmsg_type == NLMSG_DONE) in do_nl_req()
237 if (nh->nlmsg_type == NLMSG_ERROR && nl_error(nh)) in do_nl_req()
319 struct nlmsghdr *nh; in resolve_mptcp_pm_netlink() local
325 nh = (void *)data; in resolve_mptcp_pm_netlink()
335 do_nl_req(fd, nh, off, sizeof(data)); in resolve_mptcp_pm_netlink()
346 struct nlmsghdr *nh; in dsf() local
357 nh = (void *)data; in dsf()
446 do_nl_req(fd, nh, off, 0); in dsf()
457 struct nlmsghdr *nh; in csf() local
471 nh = (void *)data; in csf()
572 do_nl_req(fd, nh, off, 0); in csf()
582 struct nlmsghdr *nh; in remove_addr() local
590 nh = (void *)data; in remove_addr()
622 do_nl_req(fd, nh, off, 0); in remove_addr()
635 struct nlmsghdr *nh; in announce_addr() local
642 nh = (void *)data; in announce_addr()
748 do_nl_req(fd, nh, off, 0); in announce_addr()
759 struct nlmsghdr *nh; in add_addr() local
768 nh = (void *)data; in add_addr()
880 do_nl_req(fd, nh, off, 0); in add_addr()
890 struct nlmsghdr *nh; in del_addr() local
897 nh = (void *)data; in del_addr()
948 do_nl_req(fd, nh, off, 0); in del_addr()
1048 static void print_addrs(struct nlmsghdr *nh, int pm_family, int total_len) in print_addrs() argument
1052 for (; NLMSG_OK(nh, total_len); nh = NLMSG_NEXT(nh, total_len)) { in print_addrs()
1053 int len = nh->nlmsg_len; in print_addrs()
1055 if (nh->nlmsg_type == NLMSG_DONE) in print_addrs()
1057 if (nh->nlmsg_type == NLMSG_ERROR) in print_addrs()
1058 nl_error(nh); in print_addrs()
1059 if (nh->nlmsg_type != pm_family) in print_addrs()
1063 attrs = (struct rtattr *) ((char *) NLMSG_DATA(nh) + in print_addrs()
1081 struct nlmsghdr *nh; in get_addr() local
1087 nh = (void *)data; in get_addr()
1111 print_addrs(nh, pm_family, do_nl_req(fd, nh, off, sizeof(data))); in get_addr()
1121 struct nlmsghdr *nh; in dump_addrs() local
1125 nh = (void *)data; in dump_addrs()
1128 nh->nlmsg_flags |= NLM_F_DUMP; in dump_addrs()
1129 nh->nlmsg_seq = 1; in dump_addrs()
1130 nh->nlmsg_pid = pid; in dump_addrs()
1131 nh->nlmsg_len = off; in dump_addrs()
1133 print_addrs(nh, pm_family, do_nl_req(fd, nh, off, sizeof(data))); in dump_addrs()
1142 struct nlmsghdr *nh; in flush_addrs() local
1146 nh = (void *)data; in flush_addrs()
1150 do_nl_req(fd, nh, off, 0); in flush_addrs()
1154 static void print_limits(struct nlmsghdr *nh, int pm_family, int total_len) in print_limits() argument
1159 for (; NLMSG_OK(nh, total_len); nh = NLMSG_NEXT(nh, total_len)) { in print_limits()
1160 int len = nh->nlmsg_len; in print_limits()
1162 if (nh->nlmsg_type == NLMSG_DONE) in print_limits()
1164 if (nh->nlmsg_type == NLMSG_ERROR) in print_limits()
1165 nl_error(nh); in print_limits()
1166 if (nh->nlmsg_type != pm_family) in print_limits()
1170 attrs = (struct rtattr *) ((char *) NLMSG_DATA(nh) + in print_limits()
1196 struct nlmsghdr *nh; in get_set_limits() local
1209 nh = (void *)data; in get_set_limits()
1231 len = do_nl_req(fd, nh, off, len); in get_set_limits()
1233 print_limits(nh, pm_family, len); in get_set_limits()
1291 struct nlmsghdr *nh; in set_flags() local
1304 nh = (void *)data; in set_flags()
1467 do_nl_req(fd, nh, off, 0); in set_flags()