Lines Matching refs:ipc
688 struct ipcm_cookie ipc; in ping_v4_sendmsg() local
724 ipcm_init_sk(&ipc, inet); in ping_v4_sendmsg()
727 err = ip_cmsg_send(sk, msg, &ipc, false); in ping_v4_sendmsg()
729 kfree(ipc.opt); in ping_v4_sendmsg()
732 if (ipc.opt) in ping_v4_sendmsg()
735 if (!ipc.opt) { in ping_v4_sendmsg()
743 ipc.opt = &opt_copy.opt; in ping_v4_sendmsg()
748 saddr = ipc.addr; in ping_v4_sendmsg()
749 ipc.addr = faddr = daddr; in ping_v4_sendmsg()
751 if (ipc.opt && ipc.opt->opt.srr) { in ping_v4_sendmsg()
756 faddr = ipc.opt->opt.faddr; in ping_v4_sendmsg()
758 tos = get_rttos(&ipc, inet); in ping_v4_sendmsg()
761 (ipc.opt && ipc.opt->opt.is_strictroute)) { in ping_v4_sendmsg()
766 if (!ipc.oif || netif_index_is_l3_master(sock_net(sk), ipc.oif)) in ping_v4_sendmsg()
767 ipc.oif = inet->mc_index; in ping_v4_sendmsg()
770 } else if (!ipc.oif) in ping_v4_sendmsg()
771 ipc.oif = inet->uc_index; in ping_v4_sendmsg()
773 flowi4_init_output(&fl4, ipc.oif, ipc.sockc.mark, tos, in ping_v4_sendmsg()
800 if (!ipc.addr) in ping_v4_sendmsg()
801 ipc.addr = fl4.daddr; in ping_v4_sendmsg()
815 0, &ipc, &rt, msg->msg_flags); in ping_v4_sendmsg()
826 kfree(ipc.opt); in ping_v4_sendmsg()