anchor.diff:    ?MATCH(Id, ?APPLY(spawn_socket, [])),
     ?SET(Id, rip,   RemoteIp),
     ?SET(Id, rport, RemotePort),
  -  ?MATCH(Port, ?APPLY(sent_syn, [Id])),
  +  ?MATCH(Port, ?APPLY(send_syn, [Id])),
     ?SET(Id, tcp_state, syn_sent),
     ?SET(Id, socket_type, connect),
     ?SET(Id, port, Port),
  
positive.code:   ?SET(NewId, rseq,   {RemoteSeq, 1}),
    ?SET(NewId, socket_type, accept),
    ?SET(NewId, parent, Id),
    ?APPLY(sent_syn_ack, [NewId]),
    ?SET(NewId, tcp_state, syn_rcvd).
  
  
  
negative.code: reset_features(S, [Id], _) ->
    [ {(get_socket(S, Id))#socket.tcp_state, '->', closed} ].
  
  send_syn_callouts(_, [Id]) ->
    ?MATCH(Packet, ?APPLY(sent, [Id])),
    Port = {call, erlang, element, [#pkt.sport, Packet]},
    ?ASSERT(?MODULE, check_packet, [Packet, '_', '_', [syn]]),
  