anchor.diff:      send(Socket, Bin, Flags, Timeout);
   send(Socket, Data, Flags, Timeout) when is_binary(Data) andalso is_list(Flags)  ->
       EFlags = enc_send_flags(Flags),
  -    do_send(Socket, make_ref(), Data, EFlags, Timeout).
  -
  -do_send(SockRef, SendRef, Data, _EFlags, Timeout)
  -  when (Timeout =< 0) ->
  -    %% <KOLLA>
  -    %% THIS IS THE WRONG SEND REF
  -    %% WE SHOULD NOT HAVE THIS REF AS AN ARGUMENT - SEE RECV
  -    %% </KOLLA>
  -    nif_cancel(SockRef, send, SendRef),
  -    flush_select_msgs(SockRef, SendRef),
  -    {error, {timeout, size(Data)}};
  -do_send(SockRef, SendRef, Data, EFlags, Timeout) ->
  -    TS = timestamp(Timeout),
  +    do_send(Socket, Data, EFlags, Timeout).
  +
  +do_send(SockRef, Data, EFlags, Timeout) ->
  +    TS      = timestamp(Timeout),
  +    SendRef = make_ref(),
       case nif_send(SockRef, SendRef, Data, EFlags) of
           ok ->
               ok;
  
positive.code: 
  
  
  %% close - close a file descriptor
  
  -spec close(Socket) -> ok | {error, Reason} when
  
negative.code:         {error, eagain} ->
  	    NewTimeout = next_timeout(TS, Timeout),
              receive
                  {select, LSockRef, AccRef, ready_input} ->
                      do_accept(LSockRef, SI, next_timeout(TS, Timeout))
              after NewTimeout ->
                      nif_cancel(LSockRef, accept, AccRef),
                      flush_select_msgs(LSockRef, AccRef),
                      {error, timeout}
              end
      end.
  
  
  