From 0856b97b494ea54f3daa6e0c31a2f882bf23a551 Mon Sep 17 00:00:00 2001 From: Eyal Bari Date: Wed, 15 Mar 2017 14:54:19 +0200 Subject: API: define optional base_id for REPLY_MACRO's this enables sharing the api_helper_macros.h implementation Change-Id: Ie3fc89f3b4b5a47fcfd4b5776db90e249c55dbc3 Signed-off-by: Eyal Bari --- src/vlibapi/api_helper_macros.h | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'src/vlibapi') diff --git a/src/vlibapi/api_helper_macros.h b/src/vlibapi/api_helper_macros.h index 4e281342db5..aacea7c15e7 100644 --- a/src/vlibapi/api_helper_macros.h +++ b/src/vlibapi/api_helper_macros.h @@ -23,6 +23,10 @@ #define f64_endian(a) #define f64_print(a,b) +#ifndef REPLY_MSG_ID_BASE +#define REPLY_MSG_ID_BASE 0 +#endif + #define REPLY_MACRO(t) \ do { \ unix_shared_memory_queue_t * q; \ @@ -32,7 +36,7 @@ do { \ return; \ \ rmp = vl_msg_api_alloc (sizeof (*rmp)); \ - rmp->_vl_msg_id = ntohs((t)); \ + rmp->_vl_msg_id = htons((t)+REPLY_MSG_ID_BASE); \ rmp->context = mp->context; \ rmp->retval = ntohl(rv); \ \ @@ -48,7 +52,7 @@ do { \ return; \ \ rmp = vl_msg_api_alloc (sizeof (*rmp)); \ - rmp->_vl_msg_id = ntohs((t)); \ + rmp->_vl_msg_id = htons((t)+REPLY_MSG_ID_BASE); \ rmp->context = mp->context; \ rmp->retval = ntohl(rv); \ do {body;} while (0); \ @@ -64,7 +68,7 @@ do { \ return; \ \ rmp = vl_msg_api_alloc (sizeof (*rmp) + n); \ - rmp->_vl_msg_id = ntohs((t)); \ + rmp->_vl_msg_id = htons((t)+REPLY_MSG_ID_BASE); \ rmp->context = mp->context; \ rmp->retval = ntohl(rv); \ do {body;} while (0); \ @@ -93,7 +97,7 @@ do { \ rv = VNET_API_ERROR_TABLE_TOO_BIG; \ is_error = 1; \ } \ - rmp->_vl_msg_id = ntohs((t)); \ + rmp->_vl_msg_id = htons((t)+REPLY_MSG_ID_BASE); \ rmp->context = mp->context; \ rmp->retval = ntohl(rv); \ if (!is_error) \ -- cgit 1.2.3-korg