Changeset 1620 for pjproject/trunk
- Timestamp:
- Dec 5, 2007 4:30:04 AM (17 years ago)
- Location:
- pjproject/trunk/pjsip-apps/src
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
pjproject/trunk/pjsip-apps/src/pjsua/pjsua_app.c
r1618 r1620 91 91 static pjsua_call_id current_call = PJSUA_INVALID_ID; 92 92 static pj_str_t uri_arg; 93 94 static pjsua_transport_id tls_id;95 93 96 94 #ifdef STEREO_DEMO … … 570 568 case OPT_NO_UDP: /* no-udp */ 571 569 if (cfg->no_tcp) { 572 //PJ_LOG(1,(THIS_FILE,"Error: cannot disable both TCP and UDP"));573 //return PJ_EINVAL;570 PJ_LOG(1,(THIS_FILE,"Error: can not disable both TCP and UDP")); 571 return PJ_EINVAL; 574 572 } 575 573 … … 583 581 case OPT_NO_TCP: /* no-tcp */ 584 582 if (cfg->no_udp) { 585 //PJ_LOG(1,(THIS_FILE,"Error: cannot disable both TCP and UDP"));586 //return PJ_EINVAL;583 PJ_LOG(1,(THIS_FILE,"Error: can not disable both TCP and UDP")); 584 return PJ_EINVAL; 587 585 } 588 586 … … 2219 2217 2220 2218 status = pjsua_acc_create_request(current_acc, &method, dst_uri, &tdata); 2221 if (status == PJ_SUCCESS) { 2222 status = pjsip_endpt_send_request(endpt, tdata, -1, NULL, NULL); 2223 } 2224 2219 2220 status = pjsip_endpt_send_request(endpt, tdata, -1, NULL, NULL); 2225 2221 if (status != PJ_SUCCESS) { 2226 pjsua_perror(THIS_FILE, "Unable to create/send request", status);2222 pjsua_perror(THIS_FILE, "Unable to send request", status); 2227 2223 return; 2228 2224 } 2229 2230 2225 } 2231 2226 … … 3430 3425 } 3431 3426 3432 /* Add IPv6 UDP */3433 #if 0 && defined(PJ_HAS_IPV6) && PJ_HAS_IPV63434 if (1) {3435 pjsua_acc_id aid;3436 3437 status = pjsua_transport_create(PJSIP_TRANSPORT_UDP6,3438 &app_config.udp_cfg,3439 &transport_id);3440 if (status != PJ_SUCCESS)3441 goto on_error;3442 3443 /* Add local account */3444 pjsua_acc_add_local(transport_id, PJ_TRUE, &aid);3445 //pjsua_acc_set_transport(aid, transport_id);3446 pjsua_acc_set_online_status(current_acc, PJ_TRUE);3447 3448 if (app_config.udp_cfg.port == 0) {3449 pjsua_transport_info ti;3450 pj_sockaddr_in *a;3451 3452 pjsua_transport_get_info(transport_id, &ti);3453 a = (pj_sockaddr_in*)&ti.local_addr;3454 3455 tcp_cfg.port = pj_ntohs(a->sin_port);3456 }3457 }3458 #endif /* PJ_HAS_IPV6 */3459 3460 3427 /* Add TCP transport unless it's disabled */ 3461 3428 if (!app_config.no_tcp) { … … 3488 3455 goto on_error; 3489 3456 3490 tls_id = transport_id;3491 3492 3457 /* Add local account */ 3493 3458 pjsua_acc_add_local(transport_id, PJ_FALSE, &acc_id); … … 3591 3556 app_config.pool = NULL; 3592 3557 } 3593 3594 pjsua_transport_close(tls_id, 0);3595 3558 3596 3559 status = pjsua_destroy(); -
pjproject/trunk/pjsip-apps/src/samples/debug.c
r1618 r1620 28 28 * #include "playfile.c" 29 29 */ 30 //#include "aectest.c" 31 //#include "strerror.c" 30 #include "aectest.c" 32 31 33 #include <pjlib.h>34 #include <pjlib-util.h>35 36 #define THIS_FILE "test.c"37 38 void check_error(const char *func, pj_status_t status)39 {40 if (status != PJ_SUCCESS) {41 char errmsg[PJ_ERR_MSG_SIZE];42 pj_strerror(status, errmsg, sizeof(errmsg));43 PJ_LOG(1,(THIS_FILE, "%s error: %s", func, errmsg));44 exit(1);45 }46 }47 48 #define DO(func) status = func; check_error(#func, status);49 50 int main()51 {52 pj_sock_t sock;53 pj_sockaddr_in addr;54 pj_str_t stun_srv = pj_str("stun.fwdnet.net");55 pj_caching_pool cp;56 pj_status_t status;57 58 DO( pj_init() );59 60 pj_caching_pool_init(&cp, NULL, 0);61 62 DO( pjlib_util_init() );63 DO( pj_sock_socket(pj_AF_INET(), pj_SOCK_DGRAM(), 0, &sock) );64 DO( pj_sock_bind_in(sock, 0, 0) );65 66 DO( pjstun_get_mapped_addr(&cp.factory, 1, &sock,67 &stun_srv, 3478,68 &stun_srv, 3478,69 &addr) );70 71 PJ_LOG(3,(THIS_FILE, "Mapped address is %s:%d",72 pj_inet_ntoa(addr.sin_addr),73 (int)pj_ntohs(addr.sin_port)));74 75 DO( pj_sock_close(sock) );76 pj_caching_pool_destroy(&cp);77 pj_shutdown();78 79 return 0;80 }81 82 83 #if 084 #include <pjlib.h>85 86 static void on_accept_complete(pj_ioqueue_key_t *key,87 pj_ioqueue_op_key_t *op_key,88 pj_sock_t sock,89 pj_status_t status)90 {91 }92 93 static void on_read_complete(pj_ioqueue_key_t *key,94 pj_ioqueue_op_key_t *op_key,95 pj_ssize_t bytes_read)96 {97 }98 99 100 int main()101 {102 pj_status_t status;103 pj_caching_pool cp;104 pj_pool_t *pool;105 pj_sock_t sock, new_sock;106 pj_ioqueue_t *ioqueue;107 pj_ioqueue_op_key_t op_key;108 pj_ioqueue_callback cb;109 pj_ioqueue_key_t *key;110 111 status = pj_init();112 PJ_ASSERT_RETURN(status==PJ_SUCCESS, 1);113 114 pj_caching_pool_init(&cp, NULL, 0);115 pool = pj_pool_create(&cp.factory, "app", 1000, 1000, NULL);116 117 status = pj_sock_socket(pj_AF_INET(), pj_SOCK_STREAM(), 0, &sock);118 PJ_ASSERT_RETURN(status==PJ_SUCCESS, 1);119 120 status = pj_sock_bind_in(sock, 0, 80);121 if (status != PJ_SUCCESS)122 return 1;123 124 status = pj_ioqueue_create(pool, PJ_IOQUEUE_MAX_HANDLES, &ioqueue);125 PJ_ASSERT_RETURN(status==PJ_SUCCESS, 1);126 127 status = pj_sock_listen(sock, 5);128 PJ_ASSERT_RETURN(status==PJ_SUCCESS, 1);129 130 pj_bzero(&cb, sizeof(cb));131 cb.on_accept_complete = &on_accept_complete;132 cb.on_read_complete = &on_read_complete;133 134 status = pj_ioqueue_register_sock(pool, ioqueue, sock, NULL, &cb, &key);135 PJ_ASSERT_RETURN(status==PJ_SUCCESS, 1);136 137 pj_ioqueue_op_key_init(&op_key, sizeof(op_key));138 status = pj_ioqueue_accept(key, &op_key, &new_sock, NULL, NULL, NULL);139 PJ_ASSERT_RETURN(status==PJ_EPENDING, 1);140 }141 142 #endif
Note: See TracChangeset
for help on using the changeset viewer.