anchor.diff:  
   %% @private
   handle_call({req, Msg, Timeout}, From, State) ->
  -    {noreply, send_request(new_request(Msg, From, Timeout), State)}.
  +    {noreply, send_request(new_request(Msg, From, Timeout), State)};
  +
  +handle_call(stop, _From, State) ->
  +    _ = disconnect(State),
  +    {stop, normal, ok, State}.
   
   %% @private
   %% @todo handle timeout
  
positive.code:             {ok, State#state{sock = Sock}};
          Error -> Error
      end.
  
  
  %% @private
  
negative.code:     _ = send_caller({error, timeout}, Active),
      {noreply, State#state{ active = undefined }};
  
  handle_info({tcp_closed, _Socket}, State) ->
      disconnect(State);
  
  handle_info({_Proto, Sock, _Data}, State) ->
      ok = inet:setopts(Sock, [{active, once}]),
      {noreply, State}.
  