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 ---