34 const char *content =
"12345678ABCDEFGH12345678abcdefgh";
40 rc =
zmq_send (client, content, 32, 0);
47 rc =
zmq_recv (server, buffer, 32, 0);
60 static void run_test (
int opt, T optval,
int expected_error,
int bounce_test)
98 const char* endpoint =
"ipc://test_filter_ipc.sock";
119 #if !defined (ZMQ_HAVE_WINDOWS) 123 run_test<int> (0, 0, 0, 1);
125 #if defined ZMQ_HAVE_SO_PEERCRED || defined ZMQ_HAVE_LOCAL_PEERCRED 128 int ngroups = getgroups(100, groups);
129 assert (ngroups != -1);
130 gid_t group = getgid(), supgroup = group, notgroup = group + 1;
131 for (
int i = 0; i < ngroups; i++) {
132 if (supgroup == group && group != groups[i])
133 supgroup = groups[i];
134 if (notgroup <= groups[i])
135 notgroup = groups[i] + 1;
148 # if defined ZMQ_HAVE_SO_PEERCRED 161 #endif // defined ZMQ_HAVE_SO_PEERCRED || defined ZMQ_HAVE_LOCAL_PEERCRED ZMQ_EXPORT int zmq_setsockopt(void *s, int option, const void *optval, size_t optvallen)
ZMQ_EXPORT void * zmq_ctx_new(void)
#define ZMQ_IPC_FILTER_GID
void setup_test_environment(void)
ZMQ_EXPORT int zmq_recv(void *s, void *buf, size_t len, int flags)
#define ZMQ_IPC_FILTER_UID
ZMQ_EXPORT int zmq_errno(void)
ZMQ_EXPORT void * zmq_socket(void *, int type)
#define ZMQ_IPC_FILTER_PID
ZMQ_EXPORT int zmq_connect(void *s, const char *addr)
static void run_test(int opt, T optval, int expected_error, int bounce_test)
ZMQ_EXPORT int zmq_send(void *s, const void *buf, size_t len, int flags)
void close_zero_linger(void *socket)
void bounce(void *server, void *client)
ZMQ_EXPORT int zmq_bind(void *s, const char *addr)
ZMQ_EXPORT int zmq_ctx_term(void *context)
#define ZMQ_RECONNECT_IVL
static void bounce_fail(void *server, void *client)