Lines Matching refs:ipc
490 struct ipcm_cookie ipc; in raw_sendmsg() local
541 ipc.addr = inet->inet_saddr; in raw_sendmsg()
542 ipc.opt = NULL; in raw_sendmsg()
543 ipc.tx_flags = 0; in raw_sendmsg()
544 ipc.ttl = 0; in raw_sendmsg()
545 ipc.tos = -1; in raw_sendmsg()
546 ipc.oif = sk->sk_bound_dev_if; in raw_sendmsg()
549 err = ip_cmsg_send(net, msg, &ipc, false); in raw_sendmsg()
551 kfree(ipc.opt); in raw_sendmsg()
554 if (ipc.opt) in raw_sendmsg()
558 saddr = ipc.addr; in raw_sendmsg()
559 ipc.addr = daddr; in raw_sendmsg()
561 if (!ipc.opt) { in raw_sendmsg()
569 ipc.opt = &opt_copy.opt; in raw_sendmsg()
574 if (ipc.opt) { in raw_sendmsg()
581 if (ipc.opt->opt.srr) { in raw_sendmsg()
584 daddr = ipc.opt->opt.faddr; in raw_sendmsg()
587 tos = get_rtconn_flags(&ipc, sk); in raw_sendmsg()
592 if (!ipc.oif) in raw_sendmsg()
593 ipc.oif = inet->mc_index; in raw_sendmsg()
596 } else if (!ipc.oif) in raw_sendmsg()
597 ipc.oif = inet->uc_index; in raw_sendmsg()
599 flowi4_init_output(&fl4, ipc.oif, sk->sk_mark, tos, in raw_sendmsg()
606 if (!saddr && ipc.oif) { in raw_sendmsg()
607 err = l3mdev_get_saddr(net, ipc.oif, &fl4); in raw_sendmsg()
642 sock_tx_timestamp(sk, &ipc.tx_flags); in raw_sendmsg()
644 if (!ipc.addr) in raw_sendmsg()
645 ipc.addr = fl4.daddr; in raw_sendmsg()
649 &ipc, &rt, msg->msg_flags); in raw_sendmsg()
661 kfree(ipc.opt); in raw_sendmsg()