MAP: Remove dual loop in MAP-T in preparation for refactor.
[vpp.git] / extras / vom / vom / api_types.cpp
index 1bde8be..418f3e4 100644 (file)
@@ -28,6 +28,11 @@ to_api(const ip_address_t& a, vapi_type_address& v)
     memcpy(v.un.ip6, a.to_v6().to_bytes().data(), 16);
   }
 }
+void
+to_api(const boost::asio::ip::address& a, vapi_type_ip4_address& v)
+{
+  memcpy(v, a.to_v4().to_bytes().data(), 4);
+}
 
 ip_address_t
 from_api(const vapi_type_address& v)
@@ -71,11 +76,13 @@ from_api(const vapi_type_prefix& v)
   return route::prefix_t(from_api(v.address), v.address_length);
 }
 
-void
-to_api(const route::prefix_t& p, vapi_type_prefix& v)
+vapi_type_prefix
+to_api(const route::prefix_t& p)
 {
+  vapi_type_prefix v;
   to_api(p.address(), v.address);
   v.address_length = p.mask_width();
+  return v;
 }
 };