+#define M2(T, mp, n) \
+do { \
+ socket_client_main_t *scm = vam->socket_client_main; \
+ vam->result_ready = 0; \
+ if (scm && scm->socket_enable) \
+ mp = vl_socket_client_msg_alloc (sizeof(*mp)); \
+ else \
+ mp = vl_msg_api_alloc_as_if_client(sizeof(*mp) + n); \
+ memset (mp, 0, sizeof (*mp)); \
+ mp->_vl_msg_id = ntohs (VL_API_##T+__plugin_msg_base); \
+ mp->client_index = vam->my_client_index; \
+} while(0);