anchor.diff:              ERROR
       end.
   
  -do_sendmsg_rest([B|IOVec], Written) when (Written >= size(B)) ->
  -    do_sendmsg_rest(IOVec, Written - size(B));
  +do_sendmsg_rest([B|IOVec], Written) when (Written >= byte_size(B)) ->
  +    do_sendmsg_rest(IOVec, Written - byte_size(B));
   do_sendmsg_rest([B|IOVec], Written) ->
       <<_:Written/binary, Rest/binary>> = B,
       [Rest|IOVec].
  
positive.code:                       SockRef, Data, To, Flags, Deadline, SendName);
  
                  {?ESOCK_TAG, _Socket, abort, {SendRef, Reason}} ->
                      {error, {Reason, size(Data)}}
  
              after Timeout ->
                      _ = cancel(SockRef, SendName, SendRef),
                      {error, {timeout, size(Data)}}
              end;
  
  
  
negative.code:                       SockRef, Data, To, Flags, Deadline, SendName);
  
                  {?ESOCK_TAG, _Socket, abort, {SendRef, Reason}} ->
                      {error, {Reason, byte_size(Data)}}
  
              after Timeout ->
                      _ = cancel(SockRef, SendName, SendRef),
                      {error, {timeout, byte_size(Data)}}
              end;
  
  
  