Lines Matching refs:ipc
702 struct ipcm_cookie ipc; in ping_v4_sendmsg() local
738 ipc.addr = inet->inet_saddr; in ping_v4_sendmsg()
739 ipc.opt = NULL; in ping_v4_sendmsg()
740 ipc.oif = sk->sk_bound_dev_if; in ping_v4_sendmsg()
741 ipc.tx_flags = 0; in ping_v4_sendmsg()
742 ipc.ttl = 0; in ping_v4_sendmsg()
743 ipc.tos = -1; in ping_v4_sendmsg()
745 sock_tx_timestamp(sk, &ipc.tx_flags); in ping_v4_sendmsg()
748 err = ip_cmsg_send(sock_net(sk), msg, &ipc, false); in ping_v4_sendmsg()
750 kfree(ipc.opt); in ping_v4_sendmsg()
753 if (ipc.opt) in ping_v4_sendmsg()
756 if (!ipc.opt) { in ping_v4_sendmsg()
764 ipc.opt = &opt_copy.opt; in ping_v4_sendmsg()
769 saddr = ipc.addr; in ping_v4_sendmsg()
770 ipc.addr = faddr = daddr; in ping_v4_sendmsg()
772 if (ipc.opt && ipc.opt->opt.srr) { in ping_v4_sendmsg()
775 faddr = ipc.opt->opt.faddr; in ping_v4_sendmsg()
777 tos = get_rttos(&ipc, inet); in ping_v4_sendmsg()
780 (ipc.opt && ipc.opt->opt.is_strictroute)) { in ping_v4_sendmsg()
785 if (!ipc.oif) in ping_v4_sendmsg()
786 ipc.oif = inet->mc_index; in ping_v4_sendmsg()
789 } else if (!ipc.oif) in ping_v4_sendmsg()
790 ipc.oif = inet->uc_index; in ping_v4_sendmsg()
792 flowi4_init_output(&fl4, ipc.oif, sk->sk_mark, tos, in ping_v4_sendmsg()
815 if (!ipc.addr) in ping_v4_sendmsg()
816 ipc.addr = fl4.daddr; in ping_v4_sendmsg()
830 0, &ipc, &rt, msg->msg_flags); in ping_v4_sendmsg()
840 kfree(ipc.opt); in ping_v4_sendmsg()