} vppcom_main_t;
extern vppcom_main_t *vcm;
+extern vppcom_main_t _vppcom_main;
#define VCL_INVALID_SESSION_INDEX ((u32)~0)
#define VCL_INVALID_SESSION_HANDLE ((u64)~0)
vcl_session_is_cl (vcl_session_t * s)
{
if (s->session_type == VPPCOM_PROTO_UDP)
- return 1;
+ return !(s->flags & VCL_SESSION_F_CONNECTED);
return 0;
}
|| s->session_state == STATE_DISCONNECT);
}
+static inline u8
+vcl_session_is_closed (vcl_session_t * s)
+{
+ return (!s || (s->session_state == STATE_CLOSED));
+}
+
static inline int
vcl_session_closing_error (vcl_session_t * s)
{
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);
u32 vcl_max_nsid_len (void);
-u8 *format_api_error (u8 * s, va_list * args);
-
void vls_init ();
#endif /* SRC_VCL_VCL_PRIVATE_H_ */