Lines Matching full:tcp
41 # include <netinet/tcp.h>
103 decode_sockbuf(struct tcb *const tcp, const int fd, const kernel_ulong_t addr, in decode_sockbuf() argument
107 switch (verbose(tcp) ? getfdproto(tcp, fd) : SOCK_PROTO_UNKNOWN) { in decode_sockbuf()
109 decode_netlink(tcp, fd, addr, addrlen); in decode_sockbuf()
112 printstrn(tcp, addr, addrlen); in decode_sockbuf()
137 printxval(addrfams, tcp->u_arg[0], "AF_???"); in SYS_FUNC()
139 tprint_sock_type(tcp->u_arg[1]); in SYS_FUNC()
141 switch (tcp->u_arg[0]) { in SYS_FUNC()
144 printxval_search(inet_protocols, tcp->u_arg[2], "IPPROTO_???"); in SYS_FUNC()
149 printxval_searchn_ex(ARRSZ_PAIR(ax25_protocols), tcp->u_arg[2], in SYS_FUNC()
154 printxval(netlink_protocols, tcp->u_arg[2], "NETLINK_???"); in SYS_FUNC()
160 ntohs(tcp->u_arg[2]), "ETH_P_???"); in SYS_FUNC()
165 printxval_index(can_protocols, tcp->u_arg[2], "IRDAPROTO_???"); in SYS_FUNC()
169 printxval_index(can_protocols, tcp->u_arg[2], "CAN_???"); in SYS_FUNC()
173 printxval_index(bt_protocols, tcp->u_arg[2], "BTPROTO_???"); in SYS_FUNC()
177 printxval(addrfams, tcp->u_arg[2], "AF_???"); in SYS_FUNC()
181 printxval(isdn_protocols, tcp->u_arg[2], "ISDN_P_???"); in SYS_FUNC()
185 printxval_index(phonet_protocols, tcp->u_arg[2], "PN_PROTO_???"); in SYS_FUNC()
189 printxval_index(caif_protocols, tcp->u_arg[2], "CAIFPROTO_???"); in SYS_FUNC()
193 printxval_index(nfc_protocols, tcp->u_arg[2], in SYS_FUNC()
198 printxval_index(kcm_protocols, tcp->u_arg[2], "KCMPROTO_???"); in SYS_FUNC()
202 printxval_index(smc_protocols, tcp->u_arg[2], "SMCPROTO_???"); in SYS_FUNC()
206 tprintf("%" PRI_klu, tcp->u_arg[2]); in SYS_FUNC()
214 fetch_socklen(struct tcb *const tcp, int *const plen, in fetch_socklen() argument
217 return verbose(tcp) && sockaddr && socklen in fetch_socklen()
218 && umove(tcp, socklen, plen) == 0; in fetch_socklen()
222 decode_sockname(struct tcb *tcp) in decode_sockname() argument
226 if (entering(tcp)) { in decode_sockname()
227 printfd(tcp, tcp->u_arg[0]); in decode_sockname()
229 if (fetch_socklen(tcp, &ulen, tcp->u_arg[1], tcp->u_arg[2])) { in decode_sockname()
230 set_tcb_priv_ulong(tcp, ulen); in decode_sockname()
233 printaddr(tcp->u_arg[1]); in decode_sockname()
235 printaddr(tcp->u_arg[2]); in decode_sockname()
240 ulen = get_tcb_priv_ulong(tcp); in decode_sockname()
242 if (syserror(tcp) || umove(tcp, tcp->u_arg[2], &rlen) < 0) { in decode_sockname()
243 printaddr(tcp->u_arg[1]); in decode_sockname()
246 decode_sockaddr(tcp, tcp->u_arg[1], ulen > rlen ? rlen : ulen); in decode_sockname()
258 return decode_sockname(tcp) | RVAL_FD; in SYS_FUNC()
263 int rc = decode_sockname(tcp); in SYS_FUNC()
267 printflags(sock_type_flags, tcp->u_arg[3], "SOCK_???"); in SYS_FUNC()
275 printfd(tcp, tcp->u_arg[0]); in SYS_FUNC()
277 decode_sockbuf(tcp, tcp->u_arg[0], tcp->u_arg[1], tcp->u_arg[2]); in SYS_FUNC()
278 tprintf(", %" PRI_klu ", ", tcp->u_arg[2]); in SYS_FUNC()
280 printflags(msg_flags, tcp->u_arg[3], "MSG_???"); in SYS_FUNC()
287 printfd(tcp, tcp->u_arg[0]); in SYS_FUNC()
289 decode_sockbuf(tcp, tcp->u_arg[0], tcp->u_arg[1], tcp->u_arg[2]); in SYS_FUNC()
290 tprintf(", %" PRI_klu ", ", tcp->u_arg[2]); in SYS_FUNC()
292 printflags(msg_flags, tcp->u_arg[3], "MSG_???"); in SYS_FUNC()
294 const int addrlen = tcp->u_arg[5]; in SYS_FUNC()
296 decode_sockaddr(tcp, tcp->u_arg[4], addrlen); in SYS_FUNC()
305 if (entering(tcp)) { in SYS_FUNC()
306 printfd(tcp, tcp->u_arg[0]); in SYS_FUNC()
309 if (syserror(tcp)) { in SYS_FUNC()
310 printaddr(tcp->u_arg[1]); in SYS_FUNC()
312 decode_sockbuf(tcp, tcp->u_arg[0], tcp->u_arg[1], in SYS_FUNC()
313 tcp->u_rval); in SYS_FUNC()
316 tprintf(", %" PRI_klu ", ", tcp->u_arg[2]); in SYS_FUNC()
317 printflags(msg_flags, tcp->u_arg[3], "MSG_???"); in SYS_FUNC()
326 if (entering(tcp)) { in SYS_FUNC()
327 printfd(tcp, tcp->u_arg[0]); in SYS_FUNC()
329 if (fetch_socklen(tcp, &ulen, tcp->u_arg[4], tcp->u_arg[5])) { in SYS_FUNC()
330 set_tcb_priv_ulong(tcp, ulen); in SYS_FUNC()
334 if (syserror(tcp)) { in SYS_FUNC()
335 printaddr(tcp->u_arg[1]); in SYS_FUNC()
337 decode_sockbuf(tcp, tcp->u_arg[0], tcp->u_arg[1], in SYS_FUNC()
338 tcp->u_rval); in SYS_FUNC()
341 tprintf(", %" PRI_klu ", ", tcp->u_arg[2]); in SYS_FUNC()
343 printflags(msg_flags, tcp->u_arg[3], "MSG_???"); in SYS_FUNC()
346 ulen = get_tcb_priv_ulong(tcp); in SYS_FUNC()
348 if (!fetch_socklen(tcp, &rlen, tcp->u_arg[4], tcp->u_arg[5])) { in SYS_FUNC()
350 printaddr(tcp->u_arg[4]); in SYS_FUNC()
353 printaddr(tcp->u_arg[5]); in SYS_FUNC()
356 if (syserror(tcp)) { in SYS_FUNC()
358 printaddr(tcp->u_arg[4]); in SYS_FUNC()
364 decode_sockaddr(tcp, tcp->u_arg[4], ulen > rlen ? rlen : ulen); in SYS_FUNC()
376 return decode_sockname(tcp); in SYS_FUNC()
380 printpair_fd(struct tcb *tcp, const int i0, const int i1) in printpair_fd() argument
383 printfd(tcp, i0); in printpair_fd()
385 printfd(tcp, i1); in printpair_fd()
390 decode_pair_fd(struct tcb *const tcp, const kernel_ulong_t addr) in decode_pair_fd() argument
394 if (umove_or_printaddr(tcp, addr, &pair)) in decode_pair_fd()
397 printpair_fd(tcp, pair[0], pair[1]); in decode_pair_fd()
401 do_pipe(struct tcb *tcp, int flags_arg) in do_pipe() argument
403 if (exiting(tcp)) { in do_pipe()
404 decode_pair_fd(tcp, tcp->u_arg[0]); in do_pipe()
407 printflags(open_mode_flags, tcp->u_arg[flags_arg], "O_???"); in do_pipe()
416 if (exiting(tcp) && !syserror(tcp)) in SYS_FUNC()
417 printpair_fd(tcp, tcp->u_rval, getrval2(tcp)); in SYS_FUNC()
420 return do_pipe(tcp, -1); in SYS_FUNC()
426 return do_pipe(tcp, 1); in SYS_FUNC()
431 if (entering(tcp)) { in SYS_FUNC()
432 printxval(addrfams, tcp->u_arg[0], "AF_???"); in SYS_FUNC()
434 tprint_sock_type(tcp->u_arg[1]); in SYS_FUNC()
435 tprintf(", %" PRI_klu, tcp->u_arg[2]); in SYS_FUNC()
438 decode_pair_fd(tcp, tcp->u_arg[3]); in SYS_FUNC()
478 print_sockopt_fd_level_name(struct tcb *tcp, int fd, unsigned int level, in print_sockopt_fd_level_name() argument
481 printfd(tcp, fd); in print_sockopt_fd_level_name()
585 print_get_linger(struct tcb *const tcp, const kernel_ulong_t addr, in print_get_linger() argument
596 if (umoven_or_printaddr(tcp, addr, len, &linger)) in print_get_linger()
621 print_get_ucred(struct tcb *const tcp, const kernel_ulong_t addr, in print_get_ucred() argument
634 if (umoven_or_printaddr(tcp, addr, len, &uc)) in print_get_ucred()
674 print_tpacket_stats(struct tcb *const tcp, const kernel_ulong_t addr, in print_tpacket_stats() argument
688 if (umoven_or_printaddr(tcp, addr, len, &stats)) in print_tpacket_stats()
730 print_icmp_filter(struct tcb *const tcp, const kernel_ulong_t addr, int len) in print_icmp_filter() argument
741 if (umoven_or_printaddr(tcp, addr, len, &filter)) in print_icmp_filter()
750 print_uint32(struct tcb *tcp, void *elem_buf, size_t elem_size, void *data) in print_uint32() argument
758 print_getsockopt(struct tcb *const tcp, const unsigned int level, in print_getsockopt() argument
773 if (addr && verbose(tcp)) in print_getsockopt()
778 print_get_linger(tcp, addr, rlen); in print_getsockopt()
781 print_get_ucred(tcp, addr, rlen); in print_getsockopt()
791 print_sock_fprog(tcp, addr, rlen); in print_getsockopt()
802 print_tpacket_stats(tcp, addr, rlen); in print_getsockopt()
811 print_icmp_filter(tcp, addr, rlen); in print_getsockopt()
820 print_array(tcp, addr, MIN(ulen, rlen) / sizeof(buf), in print_getsockopt()
826 printnum_int(tcp, addr, "%d"); in print_getsockopt()
834 if (verbose(tcp)) { in print_getsockopt()
836 printnum_int(tcp, addr, "%d"); in print_getsockopt()
838 printstrn(tcp, addr, rlen); in print_getsockopt()
849 if (entering(tcp)) { in SYS_FUNC()
850 print_sockopt_fd_level_name(tcp, tcp->u_arg[0], in SYS_FUNC()
851 tcp->u_arg[1], tcp->u_arg[2], true); in SYS_FUNC()
853 if (verbose(tcp) && tcp->u_arg[4] in SYS_FUNC()
854 && umove(tcp, tcp->u_arg[4], &ulen) == 0) { in SYS_FUNC()
855 set_tcb_priv_ulong(tcp, ulen); in SYS_FUNC()
858 printaddr(tcp->u_arg[3]); in SYS_FUNC()
860 printaddr(tcp->u_arg[4]); in SYS_FUNC()
864 ulen = get_tcb_priv_ulong(tcp); in SYS_FUNC()
866 if (syserror(tcp) || umove(tcp, tcp->u_arg[4], &rlen) < 0) { in SYS_FUNC()
867 printaddr(tcp->u_arg[3]); in SYS_FUNC()
870 print_getsockopt(tcp, tcp->u_arg[1], tcp->u_arg[2], in SYS_FUNC()
871 tcp->u_arg[3], ulen, rlen); in SYS_FUNC()
882 print_set_linger(struct tcb *const tcp, const kernel_ulong_t addr, in print_set_linger() argument
889 } else if (!umove_or_printaddr(tcp, addr, &linger)) { in print_set_linger()
898 print_mreq(struct tcb *const tcp, const kernel_ulong_t addr, in print_mreq() argument
905 } else if (!umove_or_printaddr(tcp, addr, &mreq)) { in print_mreq()
915 print_mreq6(struct tcb *const tcp, const kernel_ulong_t addr, in print_mreq6() argument
922 } else if (!umove_or_printaddr(tcp, addr, &mreq)) { in print_mreq6()
932 print_tpacket_req(struct tcb *const tcp, const kernel_ulong_t addr, const int len) in print_tpacket_req() argument
937 umove(tcp, addr, &req) < 0) { in print_tpacket_req()
953 print_packet_mreq(struct tcb *const tcp, const kernel_ulong_t addr, const int len) in print_packet_mreq() argument
958 umove(tcp, addr, &mreq) < 0) { in print_packet_mreq()
978 print_setsockopt(struct tcb *const tcp, const unsigned int level, in print_setsockopt() argument
982 if (addr && verbose(tcp)) in print_setsockopt()
987 print_set_linger(tcp, addr, len); in print_setsockopt()
992 decode_sock_fprog(tcp, addr); in print_setsockopt()
1004 print_mreq(tcp, addr, len); in print_setsockopt()
1010 print_group_req(tcp, addr, len); in print_setsockopt()
1027 print_mreq6(tcp, addr, len); in print_setsockopt()
1033 print_group_req(tcp, addr, len); in print_setsockopt()
1046 print_tpacket_req(tcp, addr, len); in print_setsockopt()
1052 print_packet_mreq(tcp, addr, len); in print_setsockopt()
1061 print_icmp_filter(tcp, addr, len); in print_setsockopt()
1070 printnum_int(tcp, addr, "%d"); in print_setsockopt()
1076 if (verbose(tcp)) { in print_setsockopt()
1078 printnum_int(tcp, addr, "%d"); in print_setsockopt()
1080 printstrn(tcp, addr, len); in print_setsockopt()
1089 print_sockopt_fd_level_name(tcp, tcp->u_arg[0], in SYS_FUNC()
1090 tcp->u_arg[1], tcp->u_arg[2], false); in SYS_FUNC()
1091 print_setsockopt(tcp, tcp->u_arg[1], tcp->u_arg[2], in SYS_FUNC()
1092 tcp->u_arg[3], tcp->u_arg[4]); in SYS_FUNC()
1093 tprintf(", %d", (int) tcp->u_arg[4]); in SYS_FUNC()