fib_semantics.c (664b9c4b7392ce723b013201843264bf95481ce5) | fib_semantics.c (8bda81a4d400cf8a72e554012f0d8c45e07a3904) |
---|---|
1// SPDX-License-Identifier: GPL-2.0-or-later 2/* 3 * INET An implementation of the TCP/IP protocol suite for the LINUX 4 * operating system. INET is implemented using the BSD Socket 5 * interface as the means of communication with the user level. 6 * 7 * IPv4 Forwarding Information Base: semantics. 8 * --- 726 unchanged lines hidden (view full) --- 735 if (nla_len(nla) < sizeof(u32)) { 736 NL_SET_ERR_MSG(extack, "Invalid RTA_FLOW"); 737 return -EINVAL; 738 } 739 fib_cfg.fc_flow = nla_get_u32(nla); 740 } 741 742 fib_cfg.fc_encap = nla_find(attrs, attrlen, RTA_ENCAP); | 1// SPDX-License-Identifier: GPL-2.0-or-later 2/* 3 * INET An implementation of the TCP/IP protocol suite for the LINUX 4 * operating system. INET is implemented using the BSD Socket 5 * interface as the means of communication with the user level. 6 * 7 * IPv4 Forwarding Information Base: semantics. 8 * --- 726 unchanged lines hidden (view full) --- 735 if (nla_len(nla) < sizeof(u32)) { 736 NL_SET_ERR_MSG(extack, "Invalid RTA_FLOW"); 737 return -EINVAL; 738 } 739 fib_cfg.fc_flow = nla_get_u32(nla); 740 } 741 742 fib_cfg.fc_encap = nla_find(attrs, attrlen, RTA_ENCAP); |
743 /* RTA_ENCAP_TYPE length checked in 744 * lwtunnel_valid_encap_type_attr 745 */ |
|
743 nla = nla_find(attrs, attrlen, RTA_ENCAP_TYPE); 744 if (nla) 745 fib_cfg.fc_encap_type = nla_get_u16(nla); 746 } 747 748 ret = fib_nh_init(net, nexthop_nh, &fib_cfg, 749 rtnh->rtnh_hops + 1, extack); 750 if (ret) --- 1517 unchanged lines hidden --- | 746 nla = nla_find(attrs, attrlen, RTA_ENCAP_TYPE); 747 if (nla) 748 fib_cfg.fc_encap_type = nla_get_u16(nla); 749 } 750 751 ret = fib_nh_init(net, nexthop_nh, &fib_cfg, 752 rtnh->rtnh_hops + 1, extack); 753 if (ret) --- 1517 unchanged lines hidden --- |