}
int
-vppcom_connect_to_vpp (char *app_name)
+vppcom_connect_to_vpp (const char *app_name)
{
vcl_worker_t *wrk = vcl_worker_get_current ();
vppcom_cfg_t *vcl_cfg = &vcm->cfg;
{
if (vl_socket_client_connect2 (&wrk->bapi_sock_ctx,
(char *) vcl_cfg->vpp_api_socket_name,
- app_name, 0 /* default rx/tx buffer */ ))
+ (char *) app_name,
+ 0 /* default rx/tx buffer */ ))
{
VERR ("app (%s) socket connect failed!", app_name);
return VPPCOM_ECONNREFUSED;
clib_memcpy_fast (ep->ip, &ip->ip6, sizeof (ip6_address_t));
}
+static inline int
+vcl_proto_is_dgram (uint8_t proto)
+{
+ return proto == VPPCOM_PROTO_UDP;
+}
+
/*
* Helpers
*/
/*
* VCL Binary API
*/
-int vppcom_connect_to_vpp (char *app_name);
+int vppcom_connect_to_vpp (const char *app_name);
void vppcom_disconnect_from_vpp (void);
void vppcom_init_error_string_table (void);
void vppcom_send_session_enable_disable (u8 is_enable);
* VPPCOM Public API functions
*/
int
-vppcom_app_create (char *app_name)
+vppcom_app_create (const char *app_name)
{
vppcom_cfg_t *vcl_cfg = &vcm->cfg;
int rv;
return session->n_accepted_sessions;
}
+const char *
+vppcom_proto_str (vppcom_proto_t proto)
+{
+ char const *proto_str;
+
+ switch (proto)
+ {
+ case VPPCOM_PROTO_TCP:
+ proto_str = "TCP";
+ break;
+ case VPPCOM_PROTO_UDP:
+ proto_str = "UDP";
+ break;
+ case VPPCOM_PROTO_TLS:
+ proto_str = "TLS";
+ break;
+ case VPPCOM_PROTO_QUIC:
+ proto_str = "QUIC";
+ break;
+ default:
+ proto_str = "UNKNOWN";
+ break;
+ }
+ return proto_str;
+}
+
+const char *
+vppcom_retval_str (int retval)
+{
+ char const *st;
+
+ switch (retval)
+ {
+ case VPPCOM_OK:
+ st = "VPPCOM_OK";
+ break;
+
+ case VPPCOM_EAGAIN:
+ st = "VPPCOM_EAGAIN";
+ break;
+
+ case VPPCOM_EFAULT:
+ st = "VPPCOM_EFAULT";
+ break;
+
+ case VPPCOM_ENOMEM:
+ st = "VPPCOM_ENOMEM";
+ break;
+
+ case VPPCOM_EINVAL:
+ st = "VPPCOM_EINVAL";
+ break;
+
+ case VPPCOM_EBADFD:
+ st = "VPPCOM_EBADFD";
+ break;
+
+ case VPPCOM_EAFNOSUPPORT:
+ st = "VPPCOM_EAFNOSUPPORT";
+ break;
+
+ case VPPCOM_ECONNABORTED:
+ st = "VPPCOM_ECONNABORTED";
+ break;
+
+ case VPPCOM_ECONNRESET:
+ st = "VPPCOM_ECONNRESET";
+ break;
+
+ case VPPCOM_ENOTCONN:
+ st = "VPPCOM_ENOTCONN";
+ break;
+
+ case VPPCOM_ECONNREFUSED:
+ st = "VPPCOM_ECONNREFUSED";
+ break;
+
+ case VPPCOM_ETIMEDOUT:
+ st = "VPPCOM_ETIMEDOUT";
+ break;
+
+ default:
+ st = "UNKNOWN_STATE";
+ break;
+ }
+
+ return st;
+}
+
/*
* fd.io coding-style-patch-verification: ON
*
/*
- * Copyright (c) 2017-2019 Cisco and/or its affiliates.
+ * Copyright (c) 2017-2020 Cisco and/or its affiliates.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
VPPCOM_PROTO_QUIC,
} vppcom_proto_t;
-static inline char *
-vppcom_proto_str (vppcom_proto_t proto)
-{
- char *proto_str;
-
- switch (proto)
- {
- case VPPCOM_PROTO_TCP:
- proto_str = "TCP";
- break;
- case VPPCOM_PROTO_UDP:
- proto_str = "UDP";
- break;
- case VPPCOM_PROTO_TLS:
- proto_str = "TLS";
- break;
- case VPPCOM_PROTO_QUIC:
- proto_str = "QUIC";
- break;
- default:
- proto_str = "UNKNOWN";
- break;
- }
- return proto_str;
-}
-
-static inline int
-vcl_proto_is_dgram (uint8_t proto)
-{
- return proto == VPPCOM_PROTO_UDP;
-}
-
typedef enum
{
VPPCOM_IS_IP6 = 0,
/*
* VPPCOM Public API Functions
*/
-static inline const char *
-vppcom_retval_str (int retval)
-{
- char *st;
-
- switch (retval)
- {
- case VPPCOM_OK:
- st = "VPPCOM_OK";
- break;
-
- case VPPCOM_EAGAIN:
- st = "VPPCOM_EAGAIN";
- break;
-
- case VPPCOM_EFAULT:
- st = "VPPCOM_EFAULT";
- break;
-
- case VPPCOM_ENOMEM:
- st = "VPPCOM_ENOMEM";
- break;
- case VPPCOM_EINVAL:
- st = "VPPCOM_EINVAL";
- break;
-
- case VPPCOM_EBADFD:
- st = "VPPCOM_EBADFD";
- break;
-
- case VPPCOM_EAFNOSUPPORT:
- st = "VPPCOM_EAFNOSUPPORT";
- break;
-
- case VPPCOM_ECONNABORTED:
- st = "VPPCOM_ECONNABORTED";
- break;
-
- case VPPCOM_ECONNRESET:
- st = "VPPCOM_ECONNRESET";
- break;
-
- case VPPCOM_ENOTCONN:
- st = "VPPCOM_ENOTCONN";
- break;
-
- case VPPCOM_ECONNREFUSED:
- st = "VPPCOM_ECONNREFUSED";
- break;
-
- case VPPCOM_ETIMEDOUT:
- st = "VPPCOM_ETIMEDOUT";
- break;
-
- default:
- st = "UNKNOWN_STATE";
- break;
- }
-
- return st;
-}
-
-/* TBD: make these constructor/destructor function */
-extern int vppcom_app_create (char *app_name);
+extern int vppcom_app_create (const char *app_name);
extern void vppcom_app_destroy (void);
extern int vppcom_session_create (uint8_t proto, uint8_t is_nonblocking);
extern int vppcom_session_listener (uint32_t session_handle);
extern int vppcom_session_n_accepted (uint32_t session_handle);
+extern const char *vppcom_proto_str (vppcom_proto_t proto);
+extern const char *vppcom_retval_str (int retval);
+
/**
* Request from application to register a new worker
*