Changeset d510c0fe in mainline
- Timestamp:
- 2010-01-06T14:02:23Z (15 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 04729b1e
- Parents:
- 1b053ca2
- Location:
- uspace/srv/net
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/net/socket/socket_client.c
r1b053ca2 rd510c0fe 386 386 // push the new socket identifier 387 387 fibril_mutex_lock( & socket->accept_lock ); 388 if( ERROR_OCCURRED( dyn_fifo_push( & socket->accepted, SOCKET_GET_NEW_SOCKET_ID( call ), SOCKET_MAX_ACCEPTED_SIZE ))){ 389 sockets_exclude( socket_get_sockets(), SOCKET_GET_NEW_SOCKET_ID( call )); 390 }else{ 388 if( ! ERROR_OCCURRED( dyn_fifo_push( & socket->accepted, 1, SOCKET_MAX_ACCEPTED_SIZE ))){ 391 389 // signal the accepted socket 392 390 fibril_condvar_signal( & socket->accept_signal ); … … 406 404 } 407 405 fibril_rwlock_read_unlock( & socket_globals.lock ); 406 break; 408 407 default: 409 408 ERROR_CODE = ENOTSUP; … … 420 419 int socket_id; 421 420 services_t service; 422 int count;423 421 424 422 // find the appropriate service … … 462 460 if( ! socket ) return ENOMEM; 463 461 bzero( socket, sizeof( * socket )); 464 count = 0;465 462 fibril_rwlock_write_lock( & socket_globals.lock ); 466 463 // request a new socket -
uspace/srv/net/tl/tcp/tcp.c
r1b053ca2 rd510c0fe 793 793 } 794 794 795 socket_id *= -1;796 795 printf("new_sock %d\n", socket_id); 797 796 socket_data->pseudo_header = listening_socket_data->pseudo_header; … … 904 903 905 904 // queue the received packet 906 if( ! ERROR_OCCURRED( dyn_fifo_push( & listening_socket->accepted, socket->socket_id, listening_socket_data->backlog ))){905 if( ! ERROR_OCCURRED( dyn_fifo_push( & listening_socket->accepted, ( -1 * socket->socket_id ), listening_socket_data->backlog ))){ 907 906 // notify the destination socket 908 907 async_msg_5( socket->phone, NET_SOCKET_ACCEPTED, ( ipcarg_t ) listening_socket->socket_id, socket_data->data_fragment_size, TCP_HEADER_SIZE, 0, ( ipcarg_t ) socket->socket_id ); … … 1898 1897 socket_id = dyn_fifo_value( & socket->accepted ); 1899 1898 if( socket_id < 0 ) return ENOTSOCK; 1899 socket_id *= -1; 1900 1900 1901 1901 accepted = socket_cores_find( local_sockets, socket_id );
Note:
See TracChangeset
for help on using the changeset viewer.