Index: uspace/srv/net/socket/socket_client.c
===================================================================
--- uspace/srv/net/socket/socket_client.c	(revision ede63e47763744e7b1eba0111fb300543d072dc9)
+++ uspace/srv/net/socket/socket_client.c	(revision f1848d67fa6c3a3d60583a9ec31aff6dfcf95754)
@@ -386,7 +386,5 @@
 							// push the new socket identifier
 							fibril_mutex_lock( & socket->accept_lock );
-							if( ERROR_OCCURRED( dyn_fifo_push( & socket->accepted, SOCKET_GET_NEW_SOCKET_ID( call ), SOCKET_MAX_ACCEPTED_SIZE ))){
-								sockets_exclude( socket_get_sockets(), SOCKET_GET_NEW_SOCKET_ID( call ));
-							}else{
+							if( ! ERROR_OCCURRED( dyn_fifo_push( & socket->accepted, 1, SOCKET_MAX_ACCEPTED_SIZE ))){
 								// signal the accepted socket
 								fibril_condvar_signal( & socket->accept_signal );
@@ -406,4 +404,5 @@
 				}
 				fibril_rwlock_read_unlock( & socket_globals.lock );
+				break;
 			default:
 				ERROR_CODE = ENOTSUP;
@@ -420,5 +419,4 @@
 	int			socket_id;
 	services_t	service;
-	int			count;
 
 	// find the appropriate service
@@ -462,5 +460,4 @@
 	if( ! socket ) return ENOMEM;
 	bzero( socket, sizeof( * socket ));
-	count = 0;
 	fibril_rwlock_write_lock( & socket_globals.lock );
 	// request a new socket
