36 assert (connectSocket);
37 int rc =
zmq_connect (connectSocket,
"inproc://sink");
52 void* ctx = (
void*)((
void**)payload)[0];
53 char* endpt = (
char*)((
void**)payload)[1];
57 assert (connectSocket);
69 void* ctx = (
void*)((
void**)payload)[0];
70 char* endpt = (
char*)((
void**)payload)[1];
75 int rc =
zmq_bind (bindSocket, endpt);
91 int rc =
zmq_bind (bindSocket,
"inproc://bbc");
96 assert (connectSocket);
111 assert (memcmp (
"foobar", data, 6) == 0);
131 assert (connectSocket);
132 int rc =
zmq_connect (connectSocket,
"inproc://cbb");
142 rc =
zmq_bind (bindSocket,
"inproc://cbb");
152 assert (memcmp (
"foobar", data, 6) == 0);
172 assert (connectSocket);
173 int rc =
zmq_connect (connectSocket,
"inproc://cbbps");
185 rc =
zmq_bind (bindSocket,
"inproc://cbbps");
202 assert (memcmp (
"after", data, 5) == 0);
217 const unsigned int no_of_connects = 10;
222 void *connectSocket [no_of_connects];
225 for (
unsigned int i = 0; i < no_of_connects; ++i)
228 assert (connectSocket [i]);
229 rc =
zmq_connect (connectSocket [i],
"inproc://multiple");
240 rc =
zmq_bind (bindSocket,
"inproc://multiple");
243 for (
unsigned int i = 0; i < no_of_connects; ++i)
252 assert (memcmp (
"foobar", data, 6) == 0);
256 for (
unsigned int i = 0; i < no_of_connects; ++i)
271 const unsigned int no_of_threads = 30;
276 void *threads [no_of_threads];
279 for (
unsigned int i = 0; i < no_of_threads; ++i)
287 rc =
zmq_bind (bindSocket,
"inproc://sink");
290 for (
unsigned int i = 0; i < no_of_threads; ++i)
299 assert (memcmp (
"foobar", data, 6) == 0);
303 for (
unsigned int i = 0; i < no_of_threads; ++i)
317 const unsigned int no_of_times = 50;
321 void *threads[no_of_times*2];
322 void *thr_args[no_of_times][2];
323 char endpts[no_of_times][20];
326 for (
unsigned int i = 0; i < no_of_times; ++i)
328 thr_args[i][0] = (
void*) ctx;
329 thr_args[i][1] = (
void*) endpts[i];
330 sprintf (endpts[i],
"inproc://foo_%d", i);
334 for (
unsigned int i = 0; i < no_of_times; ++i)
341 for (
unsigned int i = 0; i < no_of_times; ++i)
366 rc =
zmq_bind (sb,
"inproc://identity");
413 assert (connectSocket);
414 int rc =
zmq_connect (connectSocket,
"inproc://a");
432 assert (bindSocket1);
433 int rc =
zmq_bind (bindSocket1,
"inproc://unbind");
440 assert (bindSocket2);
441 rc =
zmq_bind (bindSocket2,
"inproc://unbind");
446 assert (connectSocket);
447 rc =
zmq_connect (connectSocket,
"inproc://unbind");
461 assert (memcmp (
"foobar", data, 6) == 0);
481 assert (connectSocket);
482 int rc =
zmq_connect (connectSocket,
"inproc://cbb");
void msleep(int milliseconds)
ZMQ_EXPORT int zmq_setsockopt(void *s, int option, const void *optval, size_t optvallen)
ZMQ_EXPORT int zmq_unbind(void *s, const char *addr)
static void simult_bind(void *payload)
ZMQ_EXPORT void * zmq_ctx_new(void)
static void pusher(void *ctx)
void setup_test_environment(void)
ZMQ_EXPORT int zmq_send_const(void *s, const void *buf, size_t len, int flags)
void test_multiple_threads()
ZMQ_EXPORT void * zmq_msg_data(zmq_msg_t *msg)
ZMQ_EXPORT void * zmq_socket(void *, int type)
ZMQ_EXPORT void zmq_threadclose(void *thread)
void test_connect_before_bind()
ZMQ_EXPORT int zmq_connect(void *s, const char *addr)
ZMQ_EXPORT int zmq_close(void *s)
ZMQ_EXPORT int zmq_ctx_shutdown(void *context)
ZMQ_EXPORT int zmq_msg_recv(zmq_msg_t *msg, void *s, int flags)
void test_connect_before_bind_pub_sub()
ZMQ_EXPORT int zmq_msg_more(zmq_msg_t *msg)
void test_shutdown_during_pend()
void test_bind_before_connect()
ZMQ_EXPORT int zmq_send(void *s, const void *buf, size_t len, int flags)
ZMQ_EXPORT int zmq_bind(void *s, const char *addr)
ZMQ_EXPORT int zmq_ctx_term(void *context)
ZMQ_EXPORT void * zmq_threadstart(zmq_thread_fn *func, void *arg)
void test_simultaneous_connect_bind_threads()
void test_multiple_connects()
ZMQ_EXPORT int zmq_msg_init(zmq_msg_t *msg)
static void simult_conn(void *payload)