api: replace print functions wth format
[vpp.git] / src / vlibmemory / socket_client.c
index 69126f8..1eccb73 100644 (file)
 #include <vlibmemory/vl_memory_api_h.h>
 #undef vl_endianfun
 
+#define vl_calcsizefun
+#include <vlibmemory/vl_memory_api_h.h>
+#undef vl_calcsizefun
+
 /* instantiate all the print functions we know about */
-#define vl_print(handle, ...) clib_warning (__VA_ARGS__)
 #define vl_printfun
 #include <vlibmemory/vl_memory_api_h.h>
 #undef vl_printfun
@@ -89,7 +92,7 @@ vl_socket_client_read_internal (socket_client_main_t * scm, int wait)
          current_rx_index = vec_len (scm->socket_rx_buffer);
          vec_validate (scm->socket_rx_buffer, current_rx_index
                        + scm->socket_buffer_size - 1);
-         _vec_len (scm->socket_rx_buffer) = current_rx_index;
+         vec_set_len (scm->socket_rx_buffer, current_rx_index);
          n = read (scm->socket_fd, scm->socket_rx_buffer + current_rx_index,
                    scm->socket_buffer_size);
          if (n < 0)
@@ -100,7 +103,7 @@ vl_socket_client_read_internal (socket_client_main_t * scm, int wait)
              clib_unix_warning ("socket_read");
              return -1;
            }
-         _vec_len (scm->socket_rx_buffer) += n;
+         vec_inc_len (scm->socket_rx_buffer, n);
        }
 
 #if CLIB_DEBUG > 1
@@ -112,7 +115,7 @@ vl_socket_client_read_internal (socket_client_main_t * scm, int wait)
       data_len = ntohl (mbp->data_len);
       current_rx_index = vec_len (scm->socket_rx_buffer);
       vec_validate (scm->socket_rx_buffer, current_rx_index + data_len);
-      _vec_len (scm->socket_rx_buffer) = current_rx_index;
+      vec_set_len (scm->socket_rx_buffer, current_rx_index);
       mbp = (msgbuf_t *) (scm->socket_rx_buffer);
       msg_size = data_len + sizeof (*mbp);
 
@@ -129,15 +132,15 @@ vl_socket_client_read_internal (socket_client_main_t * scm, int wait)
              clib_unix_warning ("socket_read");
              return -1;
            }
-         _vec_len (scm->socket_rx_buffer) += n;
+         vec_inc_len (scm->socket_rx_buffer, n);
        }
 
       if (vec_len (scm->socket_rx_buffer) >= data_len + sizeof (*mbp))
        {
-         vl_msg_api_socket_handler ((void *) (mbp->data));
+         vl_msg_api_socket_handler ((void *) (mbp->data), data_len);
 
          if (vec_len (scm->socket_rx_buffer) == data_len + sizeof (*mbp))
-           _vec_len (scm->socket_rx_buffer) = 0;
+           vec_set_len (scm->socket_rx_buffer, 0);
          else
            vec_delete (scm->socket_rx_buffer, data_len + sizeof (*mbp), 0);
          mbp = 0;
@@ -423,22 +426,15 @@ vl_api_sockclnt_create_reply_t_handler (vl_api_sockclnt_create_reply_t * mp)
 _(SOCKCLNT_CREATE_REPLY, sockclnt_create_reply)                        \
 _(SOCK_INIT_SHM_REPLY, sock_init_shm_reply)                    \
 
-static void
-noop_handler (void *notused)
-{
-}
-
 void
 vl_sock_client_install_message_handlers (void)
 {
 
-#define _(N,n)                                                  \
-    vl_msg_api_set_handlers(VL_API_##N, #n,                     \
-                            vl_api_##n##_t_handler,             \
-                            noop_handler,                       \
-                            vl_api_##n##_t_endian,              \
-                            vl_api_##n##_t_print,               \
-                            sizeof(vl_api_##n##_t), 1);
+#define _(N, n)                                                               \
+  vl_msg_api_set_handlers (                                                   \
+    VL_API_##N, #n, vl_api_##n##_t_handler, vl_api_##n##_t_endian,            \
+    vl_api_##n##_t_format, sizeof (vl_api_##n##_t), 0, vl_api_##n##_t_tojson, \
+    vl_api_##n##_t_fromjson, vl_api_##n##_t_calc_size);
   foreach_sock_client_api_msg;
 #undef _
 }
@@ -477,8 +473,8 @@ vl_socket_client_connect_internal (socket_client_main_t * scm,
     SOCKET_CLIENT_DEFAULT_BUFFER_SIZE;
   vec_validate (scm->socket_tx_buffer, scm->socket_buffer_size - 1);
   vec_validate (scm->socket_rx_buffer, scm->socket_buffer_size - 1);
-  _vec_len (scm->socket_rx_buffer) = 0;
-  _vec_len (scm->socket_tx_buffer) = 0;
+  vec_set_len (scm->socket_rx_buffer, 0);
+  vec_set_len (scm->socket_tx_buffer, 0);
   scm->name = format (0, "%s", client_name);
 
   mp = vl_socket_client_msg_alloc2 (scm, sizeof (*mp));