From 8006c6aa425126529b4017768a9201e4f03964ad Mon Sep 17 00:00:00 2001 From: Ole Troan Date: Mon, 17 Dec 2018 12:02:26 +0100 Subject: 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 --- extras/vom/vom/api_types.cpp | 12 ++++-------- extras/vom/vom/api_types.hpp | 2 +- extras/vom/vom/bridge_domain_arp_entry_cmds.cpp | 4 ++-- extras/vom/vom/gbp_contract_cmds.cpp | 2 +- extras/vom/vom/gbp_endpoint_cmds.cpp | 2 +- 5 files changed, 9 insertions(+), 13 deletions(-) (limited to 'extras') 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()); -- cgit 1.2.3-korg