anchor.diff:         (send,_)    -> ok
       end
     end;
  -mk_send({udp,false},Host,Port,Cookie) ->
  +mk_send_udp(false,UdpPort,Host,Port,Cookie) ->
     fun(close,_) ->
         ok;
        (reset,NLD) ->
         mk_send(udp,Host,Port,Cookie,NLD);
        (send,Chunk) ->
         try
  -        {ok,Sck} = gen_udp:open(0,[binary]),
  +        {ok,Sck} = gen_udp:open(UdpPort,[binary]),
           gen_udp:send(Sck,Host,Port,mk_payload(Chunk,Cookie)),
           gen_udp:close(Sck)
         catch _:_ -> ok
         end
  -  end;
  -mk_send({tcp,false},Host,Port,Cookie) ->
  +  end.
  +
  +mk_send_tcp(false,Host,Port,Cookie) ->
     fun(close,_) ->
         ok;
        (reset,NLD) ->
  
positive.code: mk_send(Proto,Host,Port,Cookie,LD) ->
    mk_send({Proto,LD#ld.cache_connections},Host,Port,Cookie).
  
  mk_send({udp,true},Host,Port,Cookie) ->
    try
      {ok,Hostent} = inet:gethostbyname(Host),
      Addr = hd(Hostent#hostent.h_addr_list),
      {ok,Sck} = gen_udp:open(0,[binary]),
      fun(close,_) ->
          gen_udp:close(Sck);
         (reset,NLD) ->
  
negative.code: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  %% eunit
  %%lists:member(shell,[element(1,T)||T<-erlang:get_stacktrace()]).
  
  udp_port_test() ->
    watchdog:start(),
    watchdog:config(timeout_release,0),
    PR0 = mk_receiver(udp),
    watchdog:add_send_subscriber(16#babe,"localhost",16#dada,"PWD"),
    watchdog:message(troglodyte),
    ?assert(validate_recv(PR0,troglodyte)),
    watchdog:stop().
  
  delete_trigger_test() ->
    watchdog:start(),
  