aboutsummaryrefslogtreecommitdiffstats
path: root/extras/vom
diff options
context:
space:
mode:
authorOle Troan <ot@cisco.com>2018-12-17 12:02:26 +0100
committerNeale Ranns <nranns@cisco.com>2018-12-18 11:54:24 +0000
commit8006c6aa425126529b4017768a9201e4f03964ad (patch)
tree7b7342e6fb4964a5c8ca65c3d13d8dcc980f120d /extras/vom
parent02782d6ebd13ce02f2d3facebb54fec3c2137c88 (diff)
PAPI: Add MACAddress object wrapper for vl_api_mac_address_t
Change the definition of vl_api_mac_address_t to an aliased type. Change-Id: I1434f316d0fad6a099592f39bceeb8faeaf1d134 Signed-off-by: Ole Troan <ot@cisco.com>
Diffstat (limited to 'extras/vom')
-rw-r--r--extras/vom/vom/api_types.cpp12
-rw-r--r--extras/vom/vom/api_types.hpp2
-rw-r--r--extras/vom/vom/bridge_domain_arp_entry_cmds.cpp4
-rw-r--r--extras/vom/vom/gbp_contract_cmds.cpp2
-rw-r--r--extras/vom/vom/gbp_endpoint_cmds.cpp2
5 files changed, 9 insertions, 13 deletions
diff --git a/extras/vom/vom/api_types.cpp b/extras/vom/vom/api_types.cpp
index 418f3e43564..53cd047332a 100644
--- a/extras/vom/vom/api_types.cpp
+++ b/extras/vom/vom/api_types.cpp
@@ -54,20 +54,16 @@ from_api(const vapi_type_address& v)
return addr;
}
-vapi_type_mac_address
-to_api(const mac_address_t& a)
+void
+to_api(const mac_address_t& a, vapi_type_mac_address& v)
{
- vapi_type_mac_address v;
-
- std::copy(std::begin(a.bytes), std::end(a.bytes), v.bytes);
-
- return (v);
+ std::copy(std::begin(a.bytes), std::end(a.bytes), v);
}
mac_address_t
from_api(const vapi_type_mac_address& v)
{
- return mac_address_t(v.bytes);
+ return mac_address_t(v);
}
route::prefix_t
diff --git a/extras/vom/vom/api_types.hpp b/extras/vom/vom/api_types.hpp
index c28ae1e997d..784ace2c293 100644
--- a/extras/vom/vom/api_types.hpp
+++ b/extras/vom/vom/api_types.hpp
@@ -29,7 +29,7 @@ void to_api(const boost::asio::ip::address& a, vapi_type_ip4_address& v);
ip_address_t from_api(const vapi_type_address& v);
ip_address_t from_api(const vapi_type_ip4_address& v);
-vapi_type_mac_address to_api(const mac_address_t& a);
+void to_api(const mac_address_t& a, vapi_type_mac_address& m);
mac_address_t from_api(const vapi_type_mac_address& v);
diff --git a/extras/vom/vom/bridge_domain_arp_entry_cmds.cpp b/extras/vom/vom/bridge_domain_arp_entry_cmds.cpp
index da5c547bb3b..a72ad3ed874 100644
--- a/extras/vom/vom/bridge_domain_arp_entry_cmds.cpp
+++ b/extras/vom/vom/bridge_domain_arp_entry_cmds.cpp
@@ -45,7 +45,7 @@ create_cmd::issue(connection& con)
auto& payload = req.get_request().get_payload();
payload.bd_id = m_bd;
payload.is_add = 1;
- payload.mac = to_api(m_mac);
+ to_api(m_mac, payload.mac);
to_api(m_ip_addr, payload.ip);
VAPI_CALL(req.execute());
@@ -90,7 +90,7 @@ delete_cmd::issue(connection& con)
auto& payload = req.get_request().get_payload();
payload.bd_id = m_bd;
payload.is_add = 0;
- payload.mac = to_api(m_mac);
+ to_api(m_mac, payload.mac);
to_api(m_ip_addr, payload.ip);
VAPI_CALL(req.execute());
diff --git a/extras/vom/vom/gbp_contract_cmds.cpp b/extras/vom/vom/gbp_contract_cmds.cpp
index 1a3975b832a..8b15e8cb519 100644
--- a/extras/vom/vom/gbp_contract_cmds.cpp
+++ b/extras/vom/vom/gbp_contract_cmds.cpp
@@ -78,7 +78,7 @@ create_cmd::issue(connection& con)
payload.contract.rules[ii].nh_set.n_nhs = nh_size;
while (jj < nh_size) {
to_api(nh_it->getIp(), payload.contract.rules[ii].nh_set.nhs[jj].ip);
- payload.contract.rules[ii].nh_set.nhs[jj].mac = to_api(nh_it->getMac());
+ to_api(nh_it->getMac(), payload.contract.rules[ii].nh_set.nhs[jj].mac);
payload.contract.rules[ii].nh_set.nhs[jj].bd_id = nh_it->getBdId();
payload.contract.rules[ii].nh_set.nhs[jj].rd_id = nh_it->getRdId();
++nh_it;
diff --git a/extras/vom/vom/gbp_endpoint_cmds.cpp b/extras/vom/vom/gbp_endpoint_cmds.cpp
index b15b941b125..2732d1cc297 100644
--- a/extras/vom/vom/gbp_endpoint_cmds.cpp
+++ b/extras/vom/vom/gbp_endpoint_cmds.cpp
@@ -56,7 +56,7 @@ create_cmd::issue(connection& con)
for (n = 0; n < payload.endpoint.n_ips; n++) {
to_api(m_ip_addrs[n], payload.endpoint.ips[n]);
}
- payload.endpoint.mac = to_api(m_mac);
+ to_api(m_mac, payload.endpoint.mac);
VAPI_CALL(req.execute());