|
@@ -379,9 +379,14 @@ static int l2tp_nl_tunnel_send(struct sk_buff *skb, u32 portid, u32 seq, int fla
|
|
|
|
|
|
switch (tunnel->encap) {
|
|
|
case L2TP_ENCAPTYPE_UDP:
|
|
|
+ switch (sk->sk_family) {
|
|
|
+ case AF_INET:
|
|
|
+ if (nla_put_u8(skb, L2TP_ATTR_UDP_CSUM, !sk->sk_no_check_tx))
|
|
|
+ goto nla_put_failure;
|
|
|
+ break;
|
|
|
+ }
|
|
|
if (nla_put_u16(skb, L2TP_ATTR_UDP_SPORT, ntohs(inet->inet_sport)) ||
|
|
|
- nla_put_u16(skb, L2TP_ATTR_UDP_DPORT, ntohs(inet->inet_dport)) ||
|
|
|
- nla_put_u8(skb, L2TP_ATTR_UDP_CSUM, !sk->sk_no_check_tx))
|
|
|
+ nla_put_u16(skb, L2TP_ATTR_UDP_DPORT, ntohs(inet->inet_dport)))
|
|
|
goto nla_put_failure;
|
|
|
/* NOBREAK */
|
|
|
case L2TP_ENCAPTYPE_IP:
|