anchor.diff:      ?P("[passive,~w] *** prepare server *** ", [N]),
       {_Server, S} = busy_disconnect_prepare_server(Config, [{active,false}]),
       ?P("[passive,~w] server prepared - start sending", [N]),
  -    busy_disconnect_passive_send(S, MuchoData).
  -
  -busy_disconnect_passive_send(S, Data) ->
  +    {_OSFam, OSName} = os:type(),
  +    busy_disconnect_passive_send(S, MuchoData, OSName).
  +
  +busy_disconnect_passive_send(S, Data, OS) ->
       case gen_tcp:send(S, Data) of
   	ok ->
  -            busy_disconnect_passive_send(S, Data);
  +            busy_disconnect_passive_send(S, Data, OS);
   	{error, closed} ->
  +            ok;
  +	{error, eprototype = Reason} when (OS =:= darwin) ->
  +	    ?P("send failed with ~w", [Reason]),
               ok
       end.
   
  
positive.code: recvttl_ok(_, _) -> false.
  
  %% pktoptions is not supported for IPv6
  recvtclass_ok({unix,netbsd}, _OSVer) -> false;
  recvtclass_ok({unix,openbsd}, _OSVer) -> false; % not semver_lt(OSVer, {6,9,0});
  recvtclass_ok({unix,darwin}, OSVer) -> false; % not semver_lt(OSVer, {19,6,0});
  recvtclass_ok({unix,sunos}, OSVer) -> not semver_lt(OSVer, {5,12,0});
  %% Using the option returns einval, so it is not implemented.
  recvtclass_ok({unix,freebsd}, OSVer) -> not semver_lt(OSVer, {12,2,0});
  
negative.code: %% platforms - change {unix,_} to false?
  
  %% pktoptions is not supported for IPv4
  recvtos_ok({unix,netbsd},  _OSVer) -> false;
  recvtos_ok({unix,openbsd}, _OSVer) -> false; % not semver_lt(OSVer, {6,9,0});
  recvtos_ok({unix,darwin},  _OSVer) -> false; % not semver_lt(OSVer, {19,6,0});
  %% Using the option returns einval, so it is not implemented.
  recvtos_ok({unix,freebsd}, OSVer) -> not semver_lt(OSVer, {12,2,0});
  recvtos_ok({unix,sunos}, OSVer) -> not semver_lt(OSVer, {5,12,0});
  