Lines Matching refs:r
71 void inet_diag_msg_common_fill(struct inet_diag_msg *r, struct sock *sk) in inet_diag_msg_common_fill() argument
73 r->idiag_family = sk->sk_family; in inet_diag_msg_common_fill()
75 r->id.idiag_sport = htons(sk->sk_num); in inet_diag_msg_common_fill()
76 r->id.idiag_dport = sk->sk_dport; in inet_diag_msg_common_fill()
77 r->id.idiag_if = sk->sk_bound_dev_if; in inet_diag_msg_common_fill()
78 sock_diag_save_cookie(sk, r->id.idiag_cookie); in inet_diag_msg_common_fill()
82 *(struct in6_addr *)r->id.idiag_src = sk->sk_v6_rcv_saddr; in inet_diag_msg_common_fill()
83 *(struct in6_addr *)r->id.idiag_dst = sk->sk_v6_daddr; in inet_diag_msg_common_fill()
87 memset(&r->id.idiag_src, 0, sizeof(r->id.idiag_src)); in inet_diag_msg_common_fill()
88 memset(&r->id.idiag_dst, 0, sizeof(r->id.idiag_dst)); in inet_diag_msg_common_fill()
90 r->id.idiag_src[0] = sk->sk_rcv_saddr; in inet_diag_msg_common_fill()
91 r->id.idiag_dst[0] = sk->sk_daddr; in inet_diag_msg_common_fill()
112 struct inet_diag_msg *r, int ext, in inet_diag_msg_attrs_fill() argument
129 if (r->idiag_family == AF_INET6) { in inet_diag_msg_attrs_fill()
144 r->idiag_uid = from_kuid_munged(user_ns, sock_i_uid(sk)); in inet_diag_msg_attrs_fill()
145 r->idiag_inode = sock_i_ino(sk); in inet_diag_msg_attrs_fill()
163 struct inet_diag_msg *r; in inet_sk_diag_fill() local
171 nlh = nlmsg_put(skb, portid, seq, unlh->nlmsg_type, sizeof(*r), in inet_sk_diag_fill()
176 r = nlmsg_data(nlh); in inet_sk_diag_fill()
179 inet_diag_msg_common_fill(r, sk); in inet_sk_diag_fill()
180 r->idiag_state = sk->sk_state; in inet_sk_diag_fill()
181 r->idiag_timer = 0; in inet_sk_diag_fill()
182 r->idiag_retrans = 0; in inet_sk_diag_fill()
184 if (inet_diag_msg_attrs_fill(sk, skb, r, ext, user_ns, net_admin)) in inet_sk_diag_fill()
204 handler->idiag_get_info(sk, r, NULL); in inet_sk_diag_fill()
211 r->idiag_timer = 1; in inet_sk_diag_fill()
212 r->idiag_retrans = icsk->icsk_retransmits; in inet_sk_diag_fill()
213 r->idiag_expires = in inet_sk_diag_fill()
216 r->idiag_timer = 4; in inet_sk_diag_fill()
217 r->idiag_retrans = icsk->icsk_probes_out; in inet_sk_diag_fill()
218 r->idiag_expires = in inet_sk_diag_fill()
221 r->idiag_timer = 2; in inet_sk_diag_fill()
222 r->idiag_retrans = icsk->icsk_probes_out; in inet_sk_diag_fill()
223 r->idiag_expires = in inet_sk_diag_fill()
226 r->idiag_timer = 0; in inet_sk_diag_fill()
227 r->idiag_expires = 0; in inet_sk_diag_fill()
252 handler->idiag_get_info(sk, r, info); in inet_sk_diag_fill()
296 struct inet_diag_msg *r; in inet_twsk_diag_fill() local
300 nlh = nlmsg_put(skb, portid, seq, unlh->nlmsg_type, sizeof(*r), in inet_twsk_diag_fill()
305 r = nlmsg_data(nlh); in inet_twsk_diag_fill()
312 inet_diag_msg_common_fill(r, sk); in inet_twsk_diag_fill()
313 r->idiag_retrans = 0; in inet_twsk_diag_fill()
315 r->idiag_state = tw->tw_substate; in inet_twsk_diag_fill()
316 r->idiag_timer = 3; in inet_twsk_diag_fill()
317 r->idiag_expires = jiffies_to_msecs(tmo); in inet_twsk_diag_fill()
318 r->idiag_rqueue = 0; in inet_twsk_diag_fill()
319 r->idiag_wqueue = 0; in inet_twsk_diag_fill()
320 r->idiag_uid = 0; in inet_twsk_diag_fill()
321 r->idiag_inode = 0; in inet_twsk_diag_fill()
332 struct inet_diag_msg *r; in inet_req_diag_fill() local
336 nlh = nlmsg_put(skb, portid, seq, unlh->nlmsg_type, sizeof(*r), in inet_req_diag_fill()
341 r = nlmsg_data(nlh); in inet_req_diag_fill()
342 inet_diag_msg_common_fill(r, sk); in inet_req_diag_fill()
343 r->idiag_state = TCP_SYN_RECV; in inet_req_diag_fill()
344 r->idiag_timer = 1; in inet_req_diag_fill()
345 r->idiag_retrans = reqsk->num_retrans; in inet_req_diag_fill()
351 r->idiag_expires = (tmo >= 0) ? jiffies_to_msecs(tmo) : 0; in inet_req_diag_fill()
352 r->idiag_rqueue = 0; in inet_req_diag_fill()
353 r->idiag_wqueue = 0; in inet_req_diag_fill()
354 r->idiag_uid = 0; in inet_req_diag_fill()
355 r->idiag_inode = 0; in inet_req_diag_fill()
366 const struct inet_diag_req_v2 *r, in sk_diag_fill() argument
379 return inet_csk_diag_fill(sk, skb, r, user_ns, portid, seq, in sk_diag_fill()
811 const struct inet_diag_req_v2 *r, in inet_csk_diag_dump() argument
818 return inet_csk_diag_fill(sk, skb, r, in inet_csk_diag_dump()
853 const struct inet_diag_req_v2 *r, struct nlattr *bc) in inet_diag_dump_icsk() argument
857 u32 idiag_states = r->idiag_states; in inet_diag_dump_icsk()
887 if (r->sdiag_family != AF_UNSPEC && in inet_diag_dump_icsk()
888 sk->sk_family != r->sdiag_family) in inet_diag_dump_icsk()
891 if (r->id.idiag_sport != inet->inet_sport && in inet_diag_dump_icsk()
892 r->id.idiag_sport) in inet_diag_dump_icsk()
895 if (r->id.idiag_dport || in inet_diag_dump_icsk()
899 if (inet_csk_diag_dump(sk, skb, cb, r, in inet_diag_dump_icsk()
950 if (r->sdiag_family != AF_UNSPEC && in inet_diag_dump_icsk()
951 sk->sk_family != r->sdiag_family) in inet_diag_dump_icsk()
953 if (r->id.idiag_sport != htons(sk->sk_num) && in inet_diag_dump_icsk()
954 r->id.idiag_sport) in inet_diag_dump_icsk()
956 if (r->id.idiag_dport != sk->sk_dport && in inet_diag_dump_icsk()
957 r->id.idiag_dport) in inet_diag_dump_icsk()
964 res = sk_diag_fill(sk, skb, r, in inet_diag_dump_icsk()
990 const struct inet_diag_req_v2 *r, in __inet_diag_dump() argument
996 handler = inet_diag_lock_handler(r->sdiag_protocol); in __inet_diag_dump()
998 handler->dump(skb, cb, r, bc); in __inet_diag_dump()
1132 struct inet_diag_msg *r; in inet_diag_handler_get_info() local
1136 nlh = nlmsg_put(skb, 0, 0, SOCK_DIAG_BY_FAMILY, sizeof(*r), 0); in inet_diag_handler_get_info()
1140 r = nlmsg_data(nlh); in inet_diag_handler_get_info()
1141 memset(r, 0, sizeof(*r)); in inet_diag_handler_get_info()
1142 inet_diag_msg_common_fill(r, sk); in inet_diag_handler_get_info()
1144 r->id.idiag_sport = inet_sk(sk)->inet_sport; in inet_diag_handler_get_info()
1145 r->idiag_state = sk->sk_state; in inet_diag_handler_get_info()
1167 handler->idiag_get_info(sk, r, info); in inet_diag_handler_get_info()