20 vapi_enum_ip_neighbor_flags
26 out =
static_cast<vapi_enum_ip_neighbor_flags
>(out |
29 out =
static_cast<vapi_enum_ip_neighbor_flags
>(
53 to_api(
const boost::asio::ip::address_v4&
a, vapi_type_ip4_address& v)
55 std::copy_n(std::begin(a.to_bytes()), a.to_bytes().size(), v);
58 to_api(
const boost::asio::ip::address_v6&
a, vapi_type_ip6_address& v)
60 std::copy_n(std::begin(a.to_bytes()), a.to_bytes().size(), v);
68 memcpy(v.un.ip4, a.to_v4().to_bytes().data(), 4);
71 memcpy(v.un.ip6, a.to_v6().to_bytes().data(), 16);
77 vapi_union_address_union& u,
78 vapi_enum_address_family& af)
82 memcpy(u.ip4, a.to_v4().to_bytes().data(), 4);
85 memcpy(u.ip6, a.to_v6().to_bytes().data(), 16);
93 memcpy(u.ip4, a.to_v4().to_bytes().data(), 4);
95 memcpy(u.ip6, a.to_v6().to_bytes().data(), 16);
99 boost::asio::ip::address_v6
102 std::array<uint8_t, 16>
a;
103 std::copy(v, v + 16, std::begin(a));
104 boost::asio::ip::address_v6 v6(a);
109 boost::asio::ip::address_v4
112 std::array<uint8_t, 4>
a;
113 std::copy(v, v + 4, std::begin(a));
114 boost::asio::ip::address_v4 v4(a);
125 std::array<uint8_t, 16>
a;
126 std::copy(v.un.ip6, v.un.ip6 + 16, std::begin(a));
127 boost::asio::ip::address_v6 v6(a);
130 std::array<uint8_t, 4>
a;
131 std::copy(v.un.ip6, v.un.ip6 + 4, std::begin(a));
132 boost::asio::ip::address_v4 v4(a);
140 from_api(
const vapi_union_address_union& u, vapi_enum_fib_path_nh_proto
proto)
145 std::array<uint8_t, 16>
a;
146 std::copy(u.ip6, u.ip6 + 16, std::begin(a));
147 boost::asio::ip::address_v6 v6(a);
150 std::array<uint8_t, 4>
a;
151 std::copy(u.ip6, u.ip6 + 4, std::begin(a));
152 boost::asio::ip::address_v4 v4(a);
160 from_api(
const vapi_union_address_union& u, vapi_enum_address_family af)
165 std::array<uint8_t, 16>
a;
166 std::copy(u.ip6, u.ip6 + 16, std::begin(a));
167 boost::asio::ip::address_v6 v6(a);
170 std::array<uint8_t, 4>
a;
171 std::copy(u.ip6, u.ip6 + 4, std::begin(a));
172 boost::asio::ip::address_v4 v4(a);
211 v.grp_address_length);
217 vapi_enum_address_family af;
226 vapi_enum_fib_path_nh_proto
242 vapi_enum_address_family
boost::asio::ip::address ip_address_t
const boost::asio::ip::address & address() const
Get the address.
static const nh_proto_t IPV6
static const nh_proto_t IPV4
const boost::asio::ip::address & grp_address() const
Get the address.
static const flags_t STATIC
An L3 protocol can be used to construct a prefix that is used to match packets are part of a route...
vapi_enum_ip_neighbor_flags to_api(const neighbour::flags_t &f)
uint8_t mask_width() const
Get the network mask width.
uint8_t mask_width() const
Get the network mask width.
Types belonging to Routing.
static const flags_t NONE
static const l3_proto_t IPV6
const boost::asio::ip::address & src_address() const
static const flags_t NO_FIB_ENTRY
struct mac_address_t_ mac_address_t
std::array< uint8_t, 6 > bytes
Underlying bytes array.
invalid_decode(const std::string reason)
manual_print typedef address
static const nh_proto_t MPLS
The VPP Object Model (VOM) library.
const neighbour::flags_t from_api(vapi_enum_ip_neighbor_flags f)
f64 end
end of the time range
Type def of a Ethernet address.
static const nh_proto_t ETHERNET