diff options
Diffstat (limited to 'pjsip-apps/src/samples/debug.c')
-rw-r--r-- | pjsip-apps/src/samples/debug.c | 61 |
1 files changed, 60 insertions, 1 deletions
diff --git a/pjsip-apps/src/samples/debug.c b/pjsip-apps/src/samples/debug.c index 0abedbf5..a86a78d9 100644 --- a/pjsip-apps/src/samples/debug.c +++ b/pjsip-apps/src/samples/debug.c @@ -27,4 +27,63 @@ * E.g.: * #include "playfile.c" */ -#include "aectest.c" +//#include "aectest.c" +#include <pjlib.h> + + +static void on_accept_complete(pj_ioqueue_key_t *key, + pj_ioqueue_op_key_t *op_key, + pj_sock_t sock, + pj_status_t status) +{ +} + +static void on_read_complete(pj_ioqueue_key_t *key, + pj_ioqueue_op_key_t *op_key, + pj_ssize_t bytes_read) +{ +} + + +int main() +{ + pj_status_t status; + pj_caching_pool cp; + pj_pool_t *pool; + pj_sock_t sock, new_sock; + pj_ioqueue_t *ioqueue; + pj_ioqueue_op_key_t op_key; + pj_ioqueue_callback cb; + pj_ioqueue_key_t *key; + + status = pj_init(); + PJ_ASSERT_RETURN(status==PJ_SUCCESS, 1); + + pj_caching_pool_init(&cp, NULL, 0); + pool = pj_pool_create(&cp.factory, "app", 1000, 1000, NULL); + + status = pj_sock_socket(pj_AF_INET(), pj_SOCK_STREAM(), 0, &sock); + PJ_ASSERT_RETURN(status==PJ_SUCCESS, 1); + + status = pj_sock_bind_in(sock, 0, 80); + if (status != PJ_SUCCESS) + return 1; + + status = pj_ioqueue_create(pool, PJ_IOQUEUE_MAX_HANDLES, &ioqueue); + PJ_ASSERT_RETURN(status==PJ_SUCCESS, 1); + + status = pj_sock_listen(sock, 5); + PJ_ASSERT_RETURN(status==PJ_SUCCESS, 1); + + pj_bzero(&cb, sizeof(cb)); + cb.on_accept_complete = &on_accept_complete; + cb.on_read_complete = &on_read_complete; + + status = pj_ioqueue_register_sock(pool, ioqueue, sock, NULL, &cb, &key); + PJ_ASSERT_RETURN(status==PJ_SUCCESS, 1); + + pj_ioqueue_op_key_init(&op_key, sizeof(op_key)); + status = pj_ioqueue_accept(key, &op_key, &new_sock, NULL, NULL, NULL); + PJ_ASSERT_RETURN(status==PJ_EPENDING, 1); +} + |