anchor.diff:      ok = gen_tcp:close(Listen),
       PayloadSize = 1024 * 1024,
       Payload = binary:copy(<<"0123456789ABCDEF">>, 256 * 1024), % 1 MB
  -    ?P("send payload (on client socket)"),
  -    ok = gen_tcp:send(Server, Payload),
  -    ?P("verify client socket queue size"),
  -    case erlang:port_info(Server, queue_size) of
  -	{queue_size, N} when N > 0 -> ok;
  -	{queue_size, 0} when OS =:= win32 -> ok;
  -	{queue_size, 0} = T -> ct:fail(T)
  -    end,
  +    lz_ensure_non_empty_queue(Client, Payload, OS),
       ?P("verify linger: {true, 0}"),
       {ok, [{linger, {true, 0}}]} = inet:getopts(Server, [linger]),
       ?P("close client socket"),
  
positive.code: 	{queue_size, 0} ->
              ?P("queue size verification failed - port info: "
                 "~n   ~p", [erlang:port_info(Sock)]),
              lz_ensure_non_empty_queue(Sock, Payload, OS, N-1)
      end.
  
  
  
negative.code:     ok.
  
  lz_ensure_non_empty_queue(Sock, Payload, OS) ->
      lz_ensure_non_empty_queue(Sock, Payload, OS, 1).
  
  -define(LZ_MAX_SENDS, 3).
  
  lz_ensure_non_empty_queue(Sock, _Payload, _OS, N) when (N > ?LZ_MAX_SENDS) ->
      ?P("queue size verification failed - port info: "
         "~n   Socket:      ~p"
         "~n   Socket info: ~p", [Sock, erlang:port_info(Sock)]),
  