Ignore:
Timestamp:
Jul 20, 2007 8:08:30 AM (12 years ago)
Author:
bennylp
Message:

Ticket #354: build PJLIB as dynamic libraries (.DSO) in Symbian

File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjlib/src/pjlib-test/ioq_tcp.c

    r1238 r1405  
    5151                             callback_accept_status, 
    5252                             callback_connect_status; 
     53static unsigned              callback_call_count; 
    5354static pj_ioqueue_key_t     *callback_read_key, 
    5455                            *callback_write_key, 
     
    6667    callback_read_op = op_key; 
    6768    callback_read_size = bytes_read; 
     69    callback_call_count++; 
    6870} 
    6971 
     
    7577    callback_write_op = op_key; 
    7678    callback_write_size = bytes_written; 
     79    callback_call_count++; 
    7780} 
    7881 
     
    97100        callback_accept_op = op_key; 
    98101        callback_accept_status = status; 
     102        callback_call_count++; 
    99103    } 
    100104} 
     
    104108    callback_connect_key = key; 
    105109    callback_connect_status = status; 
     110    callback_call_count++; 
    106111} 
    107112 
     
    169174    while (pending_op > 0) { 
    170175        timeout.sec = 1; timeout.msec = 0; 
     176#ifdef PJ_SYMBIAN 
     177        PJ_UNUSED_ARG(ioque); 
     178        status = pj_symbianos_poll(-1, 1000); 
     179#else 
    171180        status = pj_ioqueue_poll(ioque, &timeout); 
     181#endif 
    172182        if (status > 0) { 
    173183            if (callback_read_size) { 
     
    198208    // Subsequent poll should yield zero too. 
    199209    timeout.sec = timeout.msec = 0; 
     210#ifdef PJ_SYMBIAN 
     211    status = pj_symbianos_poll(-1, 1); 
     212#else 
    200213    status = pj_ioqueue_poll(ioque, &timeout); 
     214#endif 
    201215    if (status != 0) 
    202216        return -173; 
     
    227241    char *send_buf, *recv_buf; 
    228242    pj_ioqueue_t *ioque = NULL; 
    229     pj_ioqueue_key_t *skey, *ckey0, *ckey1; 
     243    pj_ioqueue_key_t *skey=NULL, *ckey0=NULL, *ckey1=NULL; 
    230244    pj_ioqueue_op_key_t accept_op; 
    231245    int bufsize = BUF_MIN_SIZE; 
     
    244258 
    245259    // Create server socket and client socket for connecting 
    246     rc = pj_sock_socket(PJ_AF_INET, PJ_SOCK_STREAM, 0, &ssock); 
     260    rc = pj_sock_socket(pj_AF_INET(), pj_SOCK_STREAM(), 0, &ssock); 
    247261    if (rc != PJ_SUCCESS) { 
    248262        app_perror("...error creating socket", rc); 
     
    250264    } 
    251265 
    252     rc = pj_sock_socket(PJ_AF_INET, PJ_SOCK_STREAM, 0, &csock1); 
     266    rc = pj_sock_socket(pj_AF_INET(), pj_SOCK_STREAM(), 0, &csock1); 
    253267    if (rc != PJ_SUCCESS) { 
    254268        app_perror("...error creating socket", rc); 
     
    322336    callback_read_size = callback_write_size = 0; 
    323337    callback_accept_status = callback_connect_status = -2; 
     338    callback_call_count = 0; 
    324339 
    325340    callback_read_key = callback_write_key =  
     
    330345        pj_time_val timeout = {1, 0}; 
    331346 
    332         status=pj_ioqueue_poll(ioque, &timeout); 
     347#ifdef PJ_SYMBIAN 
     348        callback_call_count = 0; 
     349        pj_symbianos_poll(-1, 1000); 
     350        status = callback_call_count; 
     351#else 
     352        status = pj_ioqueue_poll(ioque, &timeout); 
     353#endif 
    333354        if (status > 0) { 
    334355            if (callback_accept_status != -2) { 
     
    374395    if (pending_op == 0) { 
    375396        pj_time_val timeout = {1, 0}; 
     397#ifdef PJ_SYMBIAN 
     398        status = pj_symbianos_poll(-1, 1000); 
     399#else 
    376400        status = pj_ioqueue_poll(ioque, &timeout); 
     401#endif 
    377402        if (status != 0) { 
    378403            status=-60; goto on_error; 
     
    408433 
    409434on_error: 
    410     if (ssock != PJ_INVALID_SOCKET) 
     435    if (skey != NULL) 
     436        pj_ioqueue_unregister(skey); 
     437    else if (ssock != PJ_INVALID_SOCKET) 
    411438        pj_sock_close(ssock); 
    412     if (csock1 != PJ_INVALID_SOCKET) 
     439     
     440    if (ckey1 != NULL) 
     441        pj_ioqueue_unregister(ckey1); 
     442    else if (csock1 != PJ_INVALID_SOCKET) 
    413443        pj_sock_close(csock1); 
    414     if (csock0 != PJ_INVALID_SOCKET) 
     444     
     445    if (ckey0 != NULL) 
     446        pj_ioqueue_unregister(ckey0); 
     447    else if (csock0 != PJ_INVALID_SOCKET) 
    415448        pj_sock_close(csock0); 
     449     
    416450    if (ioque != NULL) 
    417451        pj_ioqueue_destroy(ioque); 
     
    427461static int compliance_test_1(void) 
    428462{ 
    429     pj_sock_t csock1=-1; 
     463    pj_sock_t csock1=PJ_INVALID_SOCKET; 
    430464    pj_sockaddr_in addr; 
    431465    pj_pool_t *pool = NULL; 
    432466    pj_ioqueue_t *ioque = NULL; 
    433     pj_ioqueue_key_t *ckey1; 
     467    pj_ioqueue_key_t *ckey1 = NULL; 
    434468    pj_ssize_t status = -1; 
    435469    int pending_op = 0; 
     
    447481 
    448482    // Create client socket 
    449     rc = pj_sock_socket(PJ_AF_INET, PJ_SOCK_STREAM, 0, &csock1); 
     483    rc = pj_sock_socket(pj_AF_INET(), pj_SOCK_STREAM(), 0, &csock1); 
    450484    if (rc != PJ_SUCCESS) { 
    451485        app_perror("...ERROR in pj_sock_socket()", rc); 
     
    484518        pj_time_val timeout = {1, 0}; 
    485519 
    486         status=pj_ioqueue_poll(ioque, &timeout); 
     520#ifdef PJ_SYMBIAN 
     521        callback_call_count = 0; 
     522        pj_symbianos_poll(-1, 1000); 
     523        status = callback_call_count; 
     524#else 
     525        status = pj_ioqueue_poll(ioque, &timeout); 
     526#endif 
    487527        if (status > 0) { 
    488528            if (callback_connect_key==ckey1) { 
     
    513553    if (pending_op == 0) { 
    514554        pj_time_val timeout = {1, 0}; 
     555#ifdef PJ_SYMBIAN 
     556        status = pj_symbianos_poll(-1, 1000); 
     557#else 
    515558        status = pj_ioqueue_poll(ioque, &timeout); 
     559#endif 
    516560        if (status != 0) { 
    517561            status=-60; goto on_error; 
     
    523567 
    524568on_error: 
    525     if (csock1 != PJ_INVALID_SOCKET) 
     569    if (ckey1 != NULL) 
     570        pj_ioqueue_unregister(ckey1); 
     571    else if (csock1 != PJ_INVALID_SOCKET) 
    526572        pj_sock_close(csock1); 
     573     
    527574    if (ioque != NULL) 
    528575        pj_ioqueue_destroy(ioque); 
     
    577624    pj_status_t rc; 
    578625 
     626    listener.sock = PJ_INVALID_SOCKET; 
     627    listener.key = NULL; 
     628     
     629    for (i=0; i<MAX_PAIR; ++i) { 
     630        server[i].sock = PJ_INVALID_SOCKET; 
     631        server[i].key = NULL; 
     632    } 
     633     
     634    for (i=0; i<MAX_PAIR; ++i) { 
     635        client[i].sock = PJ_INVALID_SOCKET; 
     636        client[i].key = NULL;    
     637    } 
     638     
    579639    // Create pool. 
    580640    pool = pj_pool_create(mem, NULL, POOL_SIZE, 4000, NULL); 
     
    594654 
    595655    // Create listener socket 
    596     rc = pj_sock_socket(PJ_AF_INET, PJ_SOCK_STREAM, 0, &listener.sock); 
     656    rc = pj_sock_socket(pj_AF_INET(), pj_SOCK_STREAM(), 0, &listener.sock); 
    597657    if (rc != PJ_SUCCESS) { 
    598658        app_perror("...error creating socket", rc); 
     
    636696        // Client connect and server accept. 
    637697        for (i=0; i<MAX_PAIR; ++i) { 
    638             rc = pj_sock_socket(PJ_AF_INET, PJ_SOCK_STREAM, 0, &client[i].sock); 
     698            rc = pj_sock_socket(pj_AF_INET(), pj_SOCK_STREAM(), 0, &client[i].sock); 
    639699            if (rc != PJ_SUCCESS) { 
    640700                app_perror("...error creating socket", rc); 
     
    684744            pj_time_val timeout = {1, 0}; 
    685745 
    686             status=pj_ioqueue_poll(ioque, &timeout); 
     746#ifdef PJ_SYMBIAN 
     747            status = pj_symbianos_poll(-1, 1000); 
     748#else 
     749            status = pj_ioqueue_poll(ioque, &timeout); 
     750#endif 
    687751            if (status > 0) { 
    688752                if (status > pending_op) { 
     
    705769        if (pending_op == 0) { 
    706770            pj_time_val timeout = {1, 0}; 
     771#ifdef PJ_SYMBIAN 
     772            status = pj_symbianos_poll(-1, 1000); 
     773#else 
    707774            status = pj_ioqueue_poll(ioque, &timeout); 
     775#endif 
    708776            if (status != 0) { 
    709777                status=-120; goto on_error; 
     
    720788 
    721789            // Check addresses 
    722             if (server[i].local_addr.sin_family != PJ_AF_INET || 
     790            if (server[i].local_addr.sin_family != pj_AF_INET() || 
    723791                server[i].local_addr.sin_addr.s_addr == 0 || 
    724792                server[i].local_addr.sin_port == 0) 
     
    729797            } 
    730798 
    731             if (server[i].rem_addr.sin_family != PJ_AF_INET || 
     799            if (server[i].rem_addr.sin_family != pj_AF_INET() || 
    732800                server[i].rem_addr.sin_addr.s_addr == 0 || 
    733801                server[i].rem_addr.sin_port == 0) 
Note: See TracChangeset for help on using the changeset viewer.