anchor.diff:  -spec streamsock_writer(tcp | tls, inet:ip_address(), inet:port_number(), fun()) -> fun().
   streamsock_writer(Transport, Addr, Port, Maker) ->
       erlamsa_netutils:set_routing_ip(tcp, Addr, Port),
  -    fun F(_N, Meta) ->
  -        Attempt = get_attempt(),
  +    fun F(Attempt, Meta) ->
           erlamsa_netutils:netserver_start(Transport, false),
           {Res, Sock} = erlamsa_netutils:connect(Transport, Addr, Port, [binary, {active, true}], ?TCP_TIMEOUT),
           case Res of
               ok -> {F, {net,
                   fun (Data) -> Packet = Maker(Data), 
  -                              erlamsa_netutils:send(Transport, Sock, Packet), 
  -                              receive 
  -                                 {_ProtoTransport, _ClientSocket, RecvData} -> erlamsa_logger:log_data(info, "reply [case = ~p] from target",
  -                                             [Attempt], RecvData),
  -                                 ok
  -                              after 
  -                                 25 -> ok  %% FIXME: AS PARAMATER!!!!
  -                              end
  +                              erlamsa_netutils:send(Transport, Sock, Packet)
  +                              %% TODO: receiving here could catch races, as an option?
  +                                %   receive 
  +                                %      {_ProtoTransport, _ClientSocket, RecvData} -> erlamsa_logger:log_data(info, "reply [case = ~p] from target",
  +                                %                  [Attempt], RecvData),
  +                                %      ok
  +                                %   after 
  +                                %      25 -> ok  %% FIXME: AS PARAMATER!!!!
  +                                %   end
                           end,
  -                %% TODO: ugly timeout before closing..., should be in another thread
  -                fun () -> timer:sleep(25), erlamsa_netutils:close(Transport, Sock), ok end
  +                fun () -> 
  +                    receive 
  +                        {_ProtoTransport, _ClientSocket, RecvData} -> 
  +                            erlamsa_logger:log_data(info, "reply [case = ~p] from target",
  +                                    [Attempt], RecvData),
  +                            ok
  +                    after 
  +                        25 -> ok  %% FIXME: AS PARAMATER!!!!
  +                    end,
  +                    erlamsa_netutils:close(Transport, Sock), 
  +                    ok 
  +                end
                   }, [{output, Transport} | Meta]};
               _Else ->
                   Err = lists:flatten(io_lib:format("Error opening ~p socket to ~s:~p '~s'",
  
positive.code:         ssl -> [{certfile, CertFile}, {keyfile, KeyFile}];
          _Else -> []
      end,
      fun F(_N, Meta) ->
          erlamsa_netutils:netserver_start(Transport, false),
          {Res, ListenSock} = erlamsa_netutils:listen(Transport, LocalPort,
                                              [binary, {active, false},
  
negative.code:                         erlamsa_logger:log(LogLevel, "process ~p exit with reason ~p", [OsPid, LogStatus])
                  after ?EXEC_SLEEP -> 
                      exec:stop(Pid)               
                  end,
                  exec:stop(Watcher)
              end
          }, [{output, exec} | Meta]}
      end.
  