anchor.diff:          {error, NewRef} -> exit({async_accept, inet:format_error(NewRef)})
           end,
   
  -        {noreply, State#state{acceptor=NewRef}}
  +        {noreply, State#state{acceptor=NewRef, connection_number=X}}
       catch exit:Why ->
           error_logger:error_msg("Error in async accept: ~p.\n", [Why]),
           {stop, Why, State}
  
positive.code: 
          %% New client connected - spawn a new process using the simple_one_for_one
          %% supervisor.
          {ok, Pid} = sm_sup:start_child('sm_socket', ClientSocket),
          gen_tcp:controlling_process(ClientSocket, Pid),
  
          %% Signal the network driver that we are ready to accept another connection
  
negative.code:         {ok, Ref} = prim_inet:async_accept(ListenSocket, -1),
  	io:format("ListenSocket created for ~p\n", [Ref]),
          {ok, #state{listener = ListenSocket,
                      acceptor = Ref,
  		    connection_number = 0}};
      {error, Reason} ->
          {stop, Reason}
      end.
  