vxlan_tunnel::mode_t::mode_t(int v, const std::string s)
: enum_base<vxlan_tunnel::mode_t>(v, s)
-{
-}
+{}
vxlan_tunnel::endpoint_t::endpoint_t(const boost::asio::ip::address& src,
const boost::asio::ip::address& dst,
: src(src)
, dst(dst)
, vni(vni)
-{
-}
+{}
vxlan_tunnel::endpoint_t::endpoint_t()
: src()
, dst()
, vni(0)
-{
-}
+{}
bool
vxlan_tunnel::endpoint_t::operator==(const endpoint_t& other) const
, m_mcast_itf()
, m_rd()
, m_table_id(route::DEFAULT_TABLE)
-{
-}
+{}
vxlan_tunnel::vxlan_tunnel(const boost::asio::ip::address& src,
const boost::asio::ip::address& dst,
, m_mcast_itf(mcast_itf.singular())
, m_rd()
, m_table_id(route::DEFAULT_TABLE)
-{
-}
+{}
vxlan_tunnel::vxlan_tunnel(const boost::asio::ip::address& src,
const boost::asio::ip::address& dst,
, m_mcast_itf()
, m_rd(rd.singular())
, m_table_id(m_rd->table_id())
-{
-}
+{}
vxlan_tunnel::vxlan_tunnel(const vxlan_tunnel& o)
: interface(o)
, m_mcast_itf(o.m_mcast_itf)
, m_rd(o.m_rd)
, m_table_id(o.m_table_id)
-{
-}
+{}
bool
vxlan_tunnel::operator==(const vxlan_tunnel& other) const
if (m_hdl) {
if (mode_t::STANDARD == m_mode)
HW::enqueue(new vxlan_tunnel_cmds::create_cmd(
- m_hdl, name(), m_tep,
+ m_hdl,
+ name(),
+ m_tep,
(m_mcast_itf ? m_mcast_itf->handle() : handle_t::INVALID)));
else if (mode_t::GBP_L2 == m_mode)
HW::enqueue(new vxlan_gbp_tunnel_cmds::create_cmd(
- m_hdl, name(), m_tep, true,
+ m_hdl,
+ name(),
+ m_tep,
+ true,
(m_mcast_itf ? m_mcast_itf->handle() : handle_t::INVALID)));
else if (mode_t::GBP_L3 == m_mode)
HW::enqueue(new vxlan_gbp_tunnel_cmds::create_cmd(
- m_hdl, name(), m_tep, false,
+ m_hdl,
+ name(),
+ m_tep,
+ false,
(m_mcast_itf ? m_mcast_itf->handle() : handle_t::INVALID)));
}
if (m_rd && (m_rd->table_id() != route::DEFAULT_TABLE)) {
if (rc_t::OK != m_hdl.rc()) {
if (mode_t::STANDARD == m_mode)
HW::enqueue(new vxlan_tunnel_cmds::create_cmd(
- m_hdl, name(), m_tep,
+ m_hdl,
+ name(),
+ m_tep,
(m_mcast_itf ? m_mcast_itf->handle() : handle_t::INVALID)));
else if (mode_t::GBP_L2 == m_mode)
HW::enqueue(new vxlan_gbp_tunnel_cmds::create_cmd(
- m_hdl, name(), m_tep, true,
+ m_hdl,
+ name(),
+ m_tep,
+ true,
(m_mcast_itf ? m_mcast_itf->handle() : handle_t::INVALID)));
else if (mode_t::GBP_L3 == m_mode)
HW::enqueue(new vxlan_gbp_tunnel_cmds::create_cmd(
- m_hdl, name(), m_tep, false,
+ m_hdl,
+ name(),
+ m_tep,
+ false,
(m_mcast_itf ? m_mcast_itf->handle() : handle_t::INVALID)));
}
if (!m_table_id && m_rd) {
auto& payload = record.get_payload();
handle_t hdl(payload.sw_if_index);
boost::asio::ip::address src =
- from_bytes(payload.is_ipv6, payload.src_address);
+ from_bytes(payload.src_address.af, (uint8_t*)&payload.src_address.un);
boost::asio::ip::address dst =
- from_bytes(payload.is_ipv6, payload.dst_address);
+ from_bytes(payload.dst_address.af, (uint8_t*)&payload.dst_address.un);
std::shared_ptr<vxlan_tunnel> vt =
vxlan_tunnel(src, dst, payload.vni).singular();
boost::asio::ip::address dst = from_api(payload.tunnel.dst);
std::shared_ptr<vxlan_tunnel> vt =
- vxlan_tunnel(src, dst, payload.tunnel.vni,
+ vxlan_tunnel(src,
+ dst,
+ payload.tunnel.vni,
(payload.tunnel.mode == VXLAN_GBP_API_TUNNEL_MODE_L2
? mode_t::GBP_L2
: mode_t::GBP_L3))