示例#1
0
文件: ip_output.c 项目: Abioy/kasan
int ip_local_out_sk(struct sock *sk, struct sk_buff *skb)
{
	int err;

	err = __ip_local_out(skb);
	if (likely(err == 1))
		err = dst_output_sk(sk, skb);

	return err;
}
示例#2
0
static int ip_forward_finish(struct sock *sk, struct sk_buff *skb)
{
    struct ip_options *opt	= &(IPCB(skb)->opt);

    IP_INC_STATS_BH(dev_net(skb_dst(skb)->dev), IPSTATS_MIB_OUTFORWDATAGRAMS);
    IP_ADD_STATS_BH(dev_net(skb_dst(skb)->dev), IPSTATS_MIB_OUTOCTETS, skb->len);

    if (unlikely(opt->optlen))
        ip_forward_options(skb);

    skb_sender_cpu_clear(skb);
    return dst_output_sk(sk, skb);
}
示例#3
0
static inline int ip6_forward_finish(struct sock *sk, struct sk_buff *skb)
{
	skb_sender_cpu_clear(skb);
	return dst_output_sk(sk, skb);
}