api: remove legacy pd msg handlers

While looking at a coverity warning it was discovered that it's caused
by return value modified by pd msg handlers. As these are legacy, it's
a good time to remove them and also fix the warning this way.

Type: fix
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: Ic72ab8b2b7a2e55188d1c31cfd18a74b7cf82c43
This commit is contained in:
Klement Sekera
2021-10-18 12:28:48 +02:00
parent f0e67d78ae
commit a4ba8da26f
5 changed files with 0 additions and 48 deletions

View File

@ -232,8 +232,6 @@ typedef struct api_main_t
{
/** Message handler vector */
void (**msg_handlers) (void *);
/** Plaform-dependent (aka hardware) message handler vector */
int (**pd_msg_handlers) (void *, int);
/** non-default message cleanup handler vector */
void (**msg_cleanup_handlers) (void *);

View File

@ -30,7 +30,6 @@
#define REPLY_MACRO(t) \
do { \
vl_api_registration_t *rp; \
rv = vl_msg_api_pd_handler (mp, rv); \
rp = vl_api_client_index_to_registration (mp->client_index); \
if (rp == 0) \
return; \
@ -46,7 +45,6 @@ do { \
#define REPLY_MACRO_END(t) \
do { \
vl_api_registration_t *rp; \
rv = vl_msg_api_pd_handler (mp, rv); \
rp = vl_api_client_index_to_registration (mp->client_index); \
if (rp == 0) \
return; \
@ -65,7 +63,6 @@ do { \
#define REPLY_MACRO2(t, body) \
do { \
vl_api_registration_t *rp; \
rv = vl_msg_api_pd_handler (mp, rv); \
rp = vl_api_client_index_to_registration (mp->client_index); \
if (rp == 0) \
return; \
@ -81,7 +78,6 @@ do { \
#define REPLY_MACRO2_END(t, body) \
do { \
vl_api_registration_t *rp; \
rv = vl_msg_api_pd_handler (mp, rv); \
rp = vl_api_client_index_to_registration (mp->client_index); \
if (rp == 0) \
return; \
@ -101,7 +97,6 @@ do { \
#define REPLY_MACRO2_ZERO(t, body) \
do { \
vl_api_registration_t *rp; \
rv = vl_msg_api_pd_handler (mp, rv); \
rp = vl_api_client_index_to_registration (mp->client_index); \
if (rp == 0) \
return; \
@ -117,7 +112,6 @@ do { \
#define REPLY_MACRO_DETAILS2(t, body) \
do { \
vl_api_registration_t *rp; \
rv = vl_msg_api_pd_handler (mp, rv); \
rp = vl_api_client_index_to_registration (mp->client_index); \
if (rp == 0) \
return; \
@ -141,7 +135,6 @@ do { \
#define REPLY_MACRO3(t, n, body) \
do { \
vl_api_registration_t *rp; \
rv = vl_msg_api_pd_handler (mp, rv); \
rp = vl_api_client_index_to_registration (mp->client_index); \
if (rp == 0) \
return; \
@ -157,7 +150,6 @@ do { \
#define REPLY_MACRO3_ZERO(t, n, body) \
do { \
vl_api_registration_t *rp; \
rv = vl_msg_api_pd_handler (mp, rv); \
rp = vl_api_client_index_to_registration (mp->client_index); \
if (rp == 0) \
return; \
@ -174,7 +166,6 @@ do { \
do { \
vl_api_registration_t *rp; \
u8 is_error = 0; \
rv = vl_msg_api_pd_handler (mp, rv); \
\
rp = vl_api_client_index_to_registration (mp->client_index); \
if (rp == 0) \

View File

@ -1081,41 +1081,6 @@ vl_msg_api_post_mortem_dump (void)
/* Layered message handling support */
void
vl_msg_api_register_pd_handler (void *fp, u16 msg_id_host_byte_order)
{
api_main_t *am = vlibapi_get_main ();
/* Mild idiot proofing */
if (msg_id_host_byte_order > 10000)
clib_warning ("msg_id_host_byte_order endian issue? %d arg vs %d",
msg_id_host_byte_order,
clib_net_to_host_u16 (msg_id_host_byte_order));
vec_validate (am->pd_msg_handlers, msg_id_host_byte_order);
am->pd_msg_handlers[msg_id_host_byte_order] = fp;
}
int
vl_msg_api_pd_handler (void *mp, int rv)
{
api_main_t *am = vlibapi_get_main ();
int (*fp) (void *, int);
u16 msg_id;
if (clib_arch_is_little_endian)
msg_id = clib_net_to_host_u16 (*((u16 *) mp));
else
msg_id = *((u16 *) mp);
if (msg_id >= vec_len (am->pd_msg_handlers)
|| am->pd_msg_handlers[msg_id] == 0)
return rv;
fp = am->pd_msg_handlers[msg_id];
rv = (*fp) (mp, rv);
return rv;
}
void
vl_msg_api_set_first_available_msg_id (u16 first_avail)
{