Fork us on GitHub Follow us on Facebook Follow us on Twitter

Changeset bc9da2a in mainline


Ignore:
Timestamp:
2010-02-18T16:42:00Z (12 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master
Children:
228666c
Parents:
f74392f
Message:

Avoid duplicating wrappers for low level IPC in connect_to_service_timeout().
Connect to services in blocking mode.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/net/modules.c

    rf74392f rbc9da2a  
    5555
    5656int connect_to_service_timeout( services_t need, suseconds_t timeout ){
    57         ipcarg_t phone;
    58         int res;
     57        if (timeout <= 0)
     58                return async_connect_me_to_blocking( PHONE_NS, need, 0, 0);
     59       
     60        while( true ){
     61                int phone;
    5962
    60         while( true ){
    61                 res = async_req_3_5( PHONE_NS, IPC_M_CONNECT_ME_TO, need, 0, 0, NULL, NULL, NULL, NULL, & phone );
    62                 if( res >= 0 ){
     63                phone = async_connect_me_to( PHONE_NS, need, 0, 0);
     64                if( (phone >= 0) || (phone != ENOENT) )
    6365                        return phone;
    64                 }
    65                 if( timeout > 0 ){
    66                         timeout -= MODULE_WAIT_TIME;
    67                         if( timeout <= 0 ) return ETIMEOUT;
    68                 }
     66       
     67                timeout -= MODULE_WAIT_TIME;
     68                if( timeout <= 0 ) return ETIMEOUT;
     69
    6970                usleep( MODULE_WAIT_TIME );
    7071        }
Note: See TracChangeset for help on using the changeset viewer.