Ignore:
Timestamp:
Jun 28, 2006 4:46:49 PM (18 years ago)
Author:
bennylp
Message:

Major improvements in PJSIP to support TCP. The changes fall into these categories: (1) the TCP transport implementation itself (*.[hc]), (2) bug-fix in SIP transaction when using reliable transports, (3) support for TCP transport in PJSUA-LIB/PJSUA, and (4) changes in PJSIP-TEST to support TCP testing.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjsip/src/pjsua-lib/pjsua_acc.c

    r512 r563  
    7878{ 
    7979    pjsua_acc *acc = &pjsua_var.acc[acc_id]; 
    80     pjsip_transport *tp = pjsua_var.tpdata[tp_id].tp; 
     80    struct transport_data *t = &pjsua_var.tpdata[tp_id]; 
    8181    char uri[80]; 
    8282 
    8383    /* Transport must be valid */ 
    84     pj_assert(tp != NULL); 
     84    pj_assert(t->data.ptr != NULL); 
    8585     
    8686    /* Build URI for the account */ 
    8787    pj_ansi_sprintf(uri, "<sip:%.*s:%d;transport=%s>",  
    88                          (int)tp->local_name.host.slen, 
    89                          tp->local_name.host.ptr, 
    90                          tp->local_name.port, 
    91                          pjsip_transport_get_type_name(tp->key.type)); 
     88                         (int)t->local_name.host.slen, 
     89                         t->local_name.host.ptr, 
     90                         t->local_name.port, 
     91                         pjsip_transport_get_type_name(t->type)); 
    9292 
    9393 
     
    145145 
    146146    PJ_TODO(attach_account_to_transport); 
    147     if (pjsua_var.tpdata[0].tp) 
     147    if (pjsua_var.tpdata[0].data.ptr) 
    148148        update_acc_contact(acc_id, 0); 
    149149 
     
    221221 
    222222    /* Must have a transport */ 
    223     PJ_ASSERT_RETURN(pjsua_var.tpdata[0].tp != NULL, PJ_EINVALIDOP); 
     223    PJ_TODO(associate_acc_with_transport); 
     224    PJ_ASSERT_RETURN(pjsua_var.tpdata[0].data.ptr != NULL, PJ_EINVALIDOP); 
    224225 
    225226    PJSUA_LOCK(); 
     
    282283{ 
    283284    pjsua_acc_config cfg; 
    284     pjsip_transport *tp; 
     285    struct transport_data *t = &pjsua_var.tpdata[tid]; 
    285286    char uri[62]; 
    286287 
     288    /* ID must be valid */ 
     289    PJ_ASSERT_RETURN(tid>=0 && tid<PJ_ARRAY_SIZE(pjsua_var.tpdata), PJ_EINVAL); 
     290 
    287291    /* Transport must be valid */ 
    288     tp = pjsua_var.tpdata[tid].tp; 
    289     PJ_ASSERT_RETURN(tp != NULL, PJ_EINVAL); 
     292    PJ_ASSERT_RETURN(t->data.ptr != NULL, PJ_EINVAL); 
    290293     
    291294    pjsua_acc_config_default(&cfg); 
    292295 
    293296    /* Build URI for the account */ 
    294     pj_ansi_sprintf(uri, "<sip:%.*s:%d>",  
    295                          (int)tp->local_name.host.slen, 
    296                          tp->local_name.host.ptr, 
    297                          tp->local_name.port); 
     297    pj_ansi_sprintf(uri, "<sip:%.*s:%d;transport=%s>",  
     298                         (int)t->local_name.host.slen, 
     299                         t->local_name.host.ptr, 
     300                         t->local_name.port, 
     301                         pjsip_transport_get_type_name(t->type)); 
    298302 
    299303    cfg.id = pj_str(uri); 
Note: See TracChangeset for help on using the changeset viewer.