Ignore:
Timestamp:
May 2, 2007 5:14:29 AM (17 years ago)
Author:
bennylp
Message:

Ported PJSIP and PJSIP-SIMPLE to Symbian

File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjsip/src/pjsip/sip_util.c

    r1127 r1241  
    8585    endpt_hdr = pjsip_endpt_get_request_headers(endpt)->next; 
    8686    while (endpt_hdr != pjsip_endpt_get_request_headers(endpt)) { 
    87         pjsip_hdr *hdr = pjsip_hdr_shallow_clone(tdata->pool, endpt_hdr); 
     87        pjsip_hdr *hdr = (pjsip_hdr*)  
     88                         pjsip_hdr_shallow_clone(tdata->pool, endpt_hdr); 
    8889        pjsip_msg_add_hdr( tdata->msg, hdr ); 
    8990        endpt_hdr = endpt_hdr->next; 
     
    9394    if (param_from->tag.slen == 0) 
    9495        pj_create_unique_string(tdata->pool, &param_from->tag); 
    95     pjsip_msg_add_hdr(msg, (void*)param_from); 
     96    pjsip_msg_add_hdr(msg, (pjsip_hdr*)param_from); 
    9697 
    9798    /* Add To header. */ 
    98     pjsip_msg_add_hdr(msg, (void*)param_to); 
     99    pjsip_msg_add_hdr(msg, (pjsip_hdr*)param_to); 
    99100 
    100101    /* Add Contact header. */ 
    101102    if (param_contact) { 
    102         pjsip_msg_add_hdr(msg, (void*)param_contact); 
     103        pjsip_msg_add_hdr(msg, (pjsip_hdr*)param_contact); 
    103104    } 
    104105 
    105106    /* Add Call-ID header. */ 
    106     pjsip_msg_add_hdr(msg, (void*)param_call_id); 
     107    pjsip_msg_add_hdr(msg, (pjsip_hdr*)param_call_id); 
    107108 
    108109    /* Add CSeq header. */ 
    109     pjsip_msg_add_hdr(msg, (void*)param_cseq); 
     110    pjsip_msg_add_hdr(msg, (pjsip_hdr*)param_cseq); 
    110111 
    111112    /* Add a blank Via header in the front of the message. */ 
    112113    via = pjsip_via_hdr_create(tdata->pool); 
    113114    via->rport_param = 0; 
    114     pjsip_msg_insert_first_hdr(msg, (void*)via); 
     115    pjsip_msg_insert_first_hdr(msg, (pjsip_hdr*)via); 
    115116 
    116117    /* Add header params as request headers */ 
     
    135136    /* Create message body. */ 
    136137    if (param_text) { 
    137         body = pj_pool_calloc(tdata->pool, 1, sizeof(pjsip_msg_body)); 
     138        body = PJ_POOL_ZALLOC_T(tdata->pool, pjsip_msg_body); 
    138139        body->content_type.type = str_TEXT; 
    139140        body->content_type.subtype = str_PLAIN; 
     
    297298    PJ_TRY { 
    298299        /* Duplicate target URI and headers. */ 
    299         target = pjsip_uri_clone(tdata->pool, param_target); 
    300         from = pjsip_hdr_clone(tdata->pool, param_from); 
     300        target = (pjsip_uri*) pjsip_uri_clone(tdata->pool, param_target); 
     301        from = (pjsip_from_hdr*) pjsip_hdr_clone(tdata->pool, param_from); 
    301302        pjsip_fromto_hdr_set_from(from); 
    302         to = pjsip_hdr_clone(tdata->pool, param_to); 
     303        to = (pjsip_to_hdr*) pjsip_hdr_clone(tdata->pool, param_to); 
    303304        pjsip_fromto_hdr_set_to(to); 
    304         if (param_contact) 
    305             contact = pjsip_hdr_clone(tdata->pool, param_contact); 
    306         else 
     305        if (param_contact) { 
     306            contact = (pjsip_contact_hdr*)  
     307                      pjsip_hdr_clone(tdata->pool, param_contact); 
     308        } else { 
    307309            contact = NULL; 
    308         call_id = pjsip_hdr_clone(tdata->pool, param_call_id); 
     310        } 
     311        call_id = (pjsip_cid_hdr*) pjsip_hdr_clone(tdata->pool, param_call_id); 
    309312        cseq = pjsip_cseq_hdr_create(tdata->pool); 
    310313        if (param_cseq >= 0) 
     
    386389    via = rdata->msg_info.via; 
    387390    while (via) { 
    388         pjsip_msg_add_hdr( msg, pjsip_hdr_clone(tdata->pool, via)); 
     391        pjsip_msg_add_hdr( msg, (pjsip_hdr*)pjsip_hdr_clone(tdata->pool, via)); 
    389392        via = via->next; 
    390393        if (via != (void*)&req_msg->hdr) 
    391             via = pjsip_msg_find_hdr(req_msg, PJSIP_H_VIA, via); 
     394            via = (pjsip_via_hdr*)  
     395                  pjsip_msg_find_hdr(req_msg, PJSIP_H_VIA, via); 
    392396        else 
    393397            break; 
     
    395399 
    396400    /* Copy all Record-Route headers, in order. */ 
    397     rr = pjsip_msg_find_hdr(req_msg, PJSIP_H_RECORD_ROUTE, NULL); 
     401    rr = (pjsip_rr_hdr*)  
     402         pjsip_msg_find_hdr(req_msg, PJSIP_H_RECORD_ROUTE, NULL); 
    398403    while (rr) { 
    399         pjsip_msg_add_hdr(msg, pjsip_hdr_clone(tdata->pool, rr)); 
     404        pjsip_msg_add_hdr(msg, (pjsip_hdr*) pjsip_hdr_clone(tdata->pool, rr)); 
    400405        rr = rr->next; 
    401406        if (rr != (void*)&req_msg->hdr) 
    402             rr = pjsip_msg_find_hdr(req_msg, PJSIP_H_RECORD_ROUTE, rr); 
     407            rr = (pjsip_rr_hdr*) pjsip_msg_find_hdr(req_msg,  
     408                                                    PJSIP_H_RECORD_ROUTE, rr); 
    403409        else 
    404410            break; 
     
    406412 
    407413    /* Copy Call-ID header. */ 
    408     hdr = pjsip_msg_find_hdr( req_msg, PJSIP_H_CALL_ID, NULL); 
    409     pjsip_msg_add_hdr(msg, pjsip_hdr_clone(tdata->pool, hdr)); 
     414    hdr = (pjsip_hdr*) pjsip_msg_find_hdr( req_msg, PJSIP_H_CALL_ID, NULL); 
     415    pjsip_msg_add_hdr(msg, (pjsip_hdr*) pjsip_hdr_clone(tdata->pool, hdr)); 
    410416 
    411417    /* Copy From header. */ 
    412     hdr = pjsip_hdr_clone(tdata->pool, rdata->msg_info.from); 
     418    hdr = (pjsip_hdr*) pjsip_hdr_clone(tdata->pool, rdata->msg_info.from); 
    413419    pjsip_msg_add_hdr( msg, hdr); 
    414420 
    415421    /* Copy To header. */ 
    416     hdr = pjsip_hdr_clone(tdata->pool, rdata->msg_info.to); 
     422    hdr = (pjsip_hdr*) pjsip_hdr_clone(tdata->pool, rdata->msg_info.to); 
    417423    pjsip_msg_add_hdr( msg, hdr); 
    418424 
    419425    /* Copy CSeq header. */ 
    420     hdr = pjsip_hdr_clone(tdata->pool, rdata->msg_info.cseq); 
     426    hdr = (pjsip_hdr*) pjsip_hdr_clone(tdata->pool, rdata->msg_info.cseq); 
    421427    pjsip_msg_add_hdr( msg, hdr); 
    422428 
     
    495501 
    496502    /* Clear Via headers in the new request. */ 
    497     while ((via=pjsip_msg_find_hdr(ack->msg, PJSIP_H_VIA, NULL)) != NULL) 
     503    while ((via=(pjsip_hdr*)pjsip_msg_find_hdr(ack->msg, PJSIP_H_VIA, NULL)) != NULL) 
    498504        pj_list_erase(via); 
    499505 
    500506    /* Must contain single Via, just as the original INVITE. */ 
    501     hdr = pjsip_msg_find_hdr( invite_msg, PJSIP_H_VIA, NULL); 
    502     pjsip_msg_insert_first_hdr( ack->msg, pjsip_hdr_clone(ack->pool,hdr) ); 
     507    hdr = (pjsip_hdr*) pjsip_msg_find_hdr( invite_msg, PJSIP_H_VIA, NULL); 
     508    pjsip_msg_insert_first_hdr( ack->msg,  
     509                                (pjsip_hdr*) pjsip_hdr_clone(ack->pool,hdr) ); 
    503510 
    504511    /* If the original INVITE has Route headers, those header fields MUST  
    505512     * appear in the ACK. 
    506513     */ 
    507     hdr = pjsip_msg_find_hdr( invite_msg, PJSIP_H_ROUTE, NULL); 
     514    hdr = (pjsip_hdr*) pjsip_msg_find_hdr( invite_msg, PJSIP_H_ROUTE, NULL); 
    508515    while (hdr != NULL) { 
    509         pjsip_msg_add_hdr( ack->msg, pjsip_hdr_clone(ack->pool, hdr) ); 
     516        pjsip_msg_add_hdr( ack->msg,  
     517                           (pjsip_hdr*) pjsip_hdr_clone(ack->pool, hdr) ); 
    510518        hdr = hdr->next; 
    511519        if (hdr == &invite_msg->hdr) 
    512520            break; 
    513         hdr = pjsip_msg_find_hdr( invite_msg, PJSIP_H_ROUTE, hdr); 
     521        hdr = (pjsip_hdr*) pjsip_msg_find_hdr( invite_msg, PJSIP_H_ROUTE, hdr); 
    514522    } 
    515523 
     
    579587 
    580588    /* Clear Via headers in the new request. */ 
    581     while ((via=pjsip_msg_find_hdr(cancel_tdata->msg, PJSIP_H_VIA, NULL)) != NULL) 
     589    while ((via=(pjsip_hdr*)pjsip_msg_find_hdr(cancel_tdata->msg, PJSIP_H_VIA, NULL)) != NULL) 
    582590        pj_list_erase(via); 
    583591 
     
    586594     * request being cancelled.  
    587595     */ 
    588     hdr = pjsip_msg_find_hdr(req_tdata->msg, PJSIP_H_VIA, NULL); 
     596    hdr = (pjsip_hdr*) pjsip_msg_find_hdr(req_tdata->msg, PJSIP_H_VIA, NULL); 
    589597    if (hdr) { 
    590598        pjsip_msg_insert_first_hdr(cancel_tdata->msg,  
    591                                    pjsip_hdr_clone(cancel_tdata->pool, hdr)); 
     599                                   (pjsip_hdr*)pjsip_hdr_clone(cancel_tdata->pool, hdr)); 
    592600    } 
    593601 
     
    596604     * Copy "Route" header from the request. 
    597605     */ 
    598     hdr = pjsip_msg_find_hdr(req_tdata->msg, PJSIP_H_ROUTE, NULL); 
     606    hdr = (pjsip_hdr*) pjsip_msg_find_hdr(req_tdata->msg, PJSIP_H_ROUTE, NULL); 
    599607    while (hdr != NULL) { 
    600608        pjsip_msg_add_hdr(cancel_tdata->msg,  
    601                           pjsip_hdr_clone(cancel_tdata->pool, hdr)); 
     609                          (pjsip_hdr*) pjsip_hdr_clone(cancel_tdata->pool, hdr)); 
    602610        hdr = hdr->next; 
    603611        if (hdr != &req_tdata->msg->hdr) 
    604             hdr = pjsip_msg_find_hdr(req_tdata->msg, PJSIP_H_ROUTE, hdr); 
     612            hdr = (pjsip_hdr*) pjsip_msg_find_hdr(req_tdata->msg,  
     613                                                  PJSIP_H_ROUTE, hdr); 
    605614        else 
    606615            break; 
     
    638647    /* Get the first "Route" header from the message. 
    639648     */ 
    640     first_route_hdr = pjsip_msg_find_hdr(tdata->msg, PJSIP_H_ROUTE, NULL); 
     649    first_route_hdr = (const pjsip_route_hdr*)  
     650                      pjsip_msg_find_hdr(tdata->msg, PJSIP_H_ROUTE, NULL); 
    641651    if (first_route_hdr) { 
    642652        target_uri = first_route_hdr->name_addr.uri; 
     
    698708 
    699709    /* Find the first and last "Route" headers from the message. */ 
    700     last_route_hdr = first_route_hdr =  
     710    last_route_hdr = first_route_hdr = (pjsip_route_hdr*) 
    701711        pjsip_msg_find_hdr(tdata->msg, PJSIP_H_ROUTE, NULL); 
    702712    if (first_route_hdr) { 
     
    704714        while (last_route_hdr->next != (void*)&tdata->msg->hdr) { 
    705715            pjsip_route_hdr *hdr; 
    706             hdr = pjsip_msg_find_hdr(tdata->msg, PJSIP_H_ROUTE,  
     716            hdr = (pjsip_route_hdr*) 
     717                  pjsip_msg_find_hdr(tdata->msg, PJSIP_H_ROUTE,  
    707718                                     last_route_hdr->next); 
    708719            if (!hdr) 
     
    729740            PJSIP_URI_SCHEME_IS_SIPS(topmost_route_uri)) 
    730741        { 
    731             const pjsip_sip_uri *url =  
     742            const pjsip_sip_uri *url = (const pjsip_sip_uri*) 
    732743                pjsip_uri_get_uri((void*)topmost_route_uri); 
    733744            has_lr_param = url->lr_param; 
     
    748759            */ 
    749760        } else { 
    750             new_request_uri = pjsip_uri_get_uri((void*)topmost_route_uri); 
     761            new_request_uri = (const pjsip_uri*)  
     762                              pjsip_uri_get_uri((pjsip_uri*)topmost_route_uri); 
    751763            pj_list_erase(first_route_hdr); 
    752764            if (first_route_hdr == last_route_hdr) 
     
    794806    if (new_request_uri && new_request_uri!=tdata->msg->line.req.uri) { 
    795807        pjsip_route_hdr *route = pjsip_route_hdr_create(tdata->pool); 
    796         route->name_addr.uri = pjsip_uri_get_uri(tdata->msg->line.req.uri); 
     808        route->name_addr.uri = (pjsip_uri*)  
     809                               pjsip_uri_get_uri(tdata->msg->line.req.uri); 
    797810        if (last_route_hdr) 
    798811            pj_list_insert_after(last_route_hdr, route); 
     
    815828                                         pj_ssize_t sent ) 
    816829{ 
    817     pjsip_send_state *stateless_data = token; 
     830    pjsip_send_state *stateless_data = (pjsip_send_state*) token; 
    818831 
    819832    PJ_UNUSED_ARG(tdata); 
     
    916929        if (via->branch_param.slen == 0) { 
    917930            pj_str_t tmp; 
    918             via->branch_param.ptr = pj_pool_alloc(tdata->pool, 
    919                                                   PJSIP_MAX_BRANCH_LEN); 
     931            via->branch_param.ptr = (char*)pj_pool_alloc(tdata->pool, 
     932                                                         PJSIP_MAX_BRANCH_LEN); 
    920933            via->branch_param.slen = PJSIP_MAX_BRANCH_LEN; 
    921934            pj_memcpy(via->branch_param.ptr, PJSIP_RFC3261_BRANCH_ID, 
     
    961974                                  const struct pjsip_server_addresses *addr) 
    962975{ 
    963     pjsip_send_state *stateless_data = token; 
     976    pjsip_send_state *stateless_data = (pjsip_send_state*) token; 
    964977 
    965978    /* Fail on server resolution. */ 
     
    10091022 
    10101023    /* Keep stateless data. */ 
    1011     stateless_data = pj_pool_zalloc(tdata->pool, sizeof(pjsip_send_state)); 
     1024    stateless_data = PJ_POOL_ZALLOC_T(tdata->pool, pjsip_send_state); 
    10121025    stateless_data->token = token; 
    10131026    stateless_data->endpt = endpt; 
     
    11361149                                       pj_ssize_t sent) 
    11371150{ 
    1138     pjsip_send_state *send_state = token; 
     1151    pjsip_send_state *send_state = (pjsip_send_state*) token; 
    11391152    pj_bool_t cont = PJ_FALSE; 
    11401153 
     
    11561169                                       const pjsip_server_addresses *addr ) 
    11571170{ 
    1158     pjsip_send_state *send_state = token; 
     1171    pjsip_send_state *send_state = (pjsip_send_state*) token; 
    11591172 
    11601173    if (status != PJ_SUCCESS) { 
     
    12251238 
    12261239    /* Create structure to keep the sending state. */ 
    1227     send_state = pj_pool_zalloc(tdata->pool, sizeof(pjsip_send_state)); 
     1240    send_state = PJ_POOL_ZALLOC_T(tdata->pool, pjsip_send_state); 
    12281241    send_state->endpt = endpt; 
    12291242    send_state->tdata = tdata; 
     
    13181331        const pjsip_hdr *hdr = hdr_list->next; 
    13191332        while (hdr != hdr_list) { 
    1320             pjsip_msg_add_hdr( tdata->msg, pjsip_hdr_clone(tdata->pool, hdr) ); 
     1333            pjsip_msg_add_hdr(tdata->msg,  
     1334                              (pjsip_hdr*) pjsip_hdr_clone(tdata->pool, hdr) ); 
    13211335            hdr = hdr->next; 
    13221336        } 
Note: See TracChangeset for help on using the changeset viewer.