X-Git-Url: http://git.cascardo.eti.br/?a=blobdiff_plain;f=net%2Ftipc%2Fbearer.c;h=11333916279f29abc2795546cadd95ce95e52639;hb=60852d679575b0d7ce62497938116f92654ae908;hp=b39f631fd6d7c4ceb251af7e6109da4c1ecee545;hpb=959e1781aa230aecc90e4deb80117fd9a53dede7;p=cascardo%2Flinux.git diff --git a/net/tipc/bearer.c b/net/tipc/bearer.c index b39f631fd6d7..11333916279f 100644 --- a/net/tipc/bearer.c +++ b/net/tipc/bearer.c @@ -477,6 +477,24 @@ int tipc_bearer_mtu(struct net *net, u32 bearer_id) return mtu; } +/* tipc_bearer_xmit_skb - sends buffer to destination over bearer + */ +void tipc_bearer_xmit_skb(struct net *net, u32 bearer_id, + struct sk_buff *skb, + struct tipc_media_addr *dest) +{ + struct tipc_net *tn = tipc_net(net); + struct tipc_bearer *b; + + rcu_read_lock(); + b = rcu_dereference_rtnl(tn->bearer_list[bearer_id]); + if (likely(b)) + b->media->send_msg(net, skb, b, dest); + rcu_read_unlock(); + /* Until we remove cloning in tipc_l2_send_msg(): */ + kfree_skb(skb); +} + /* tipc_bearer_xmit() -send buffer to destination over bearer */ void tipc_bearer_xmit(struct net *net, u32 bearer_id,