vl_shmem_hdr_t *shmem_hdr;
/* svm_queue_sub(below) returns {-1, -2} */
- if (!pm->connected_to_vlib) return -3;
+ if (!pm->connected_to_vlib)
+ return VAC_NOT_CONNECTED;
*l = 0;
/* svm_queue_sub(below) returns {-1, -2} */
- if (am->our_pid == 0) return (-4);
+ if (am->our_pid == 0)
+ return (VAC_SHM_NOT_READY);
/* Poke timeout thread */
if (timeout)
vl_msg_api_free((void *) msg);
/* Client might forget to resume RX thread on failure */
vac_rx_resume ();
- return -1;
+ return VAC_TIMEOUT;
}
/*
svm_queue_t *q;
vac_main_t *pm = &vac_main;
- if (!pm->connected_to_vlib) return -1;
+ if (!pm->connected_to_vlib)
+ return VAC_NOT_CONNECTED;
if (!mp) return (-1);
memcpy(mp, p, l);
#include <stdint.h>
#include <stdbool.h>
+typedef enum
+{
+ VAC_SVM_QUEUE_SUB_1 = -1,
+ VAC_SVM_QUEUE_SUB_2 = -2,
+ VAC_NOT_CONNECTED = -3,
+ VAC_SHM_NOT_READY = -4,
+ VAC_TIMEOUT = -5,
+} vac_errno_t;
+
typedef void (*vac_callback_t)(unsigned char * data, int len);
typedef void (*vac_error_callback_t)(void *, unsigned char *, int);
int vac_connect(char * name, char * chroot_prefix, vac_callback_t cb,