CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2011/04/24 13:36:54
Modified files:
sys/net : pf.c
sys/netinet : in_pcb.c raw_ip.c tcp_input.c tcp_output.c
udp_usrreq.c
sys/netinet6 : raw_ip6.c
sys/sys : mbuf.h
Log message:
Double link between pf states and sockets. Henning has already
implemented half of it. The additional part is:
- The pf state lookup for outgoing packets is optimized by using
mbuf->inp->state.
- For incomming tcp, udp, raw, raw6 packets the socket lookup always
is optimized by using mbuf->state->inp.
- All protocols establish the link for incomming packets.
- All protocols set the inp in the mbuf for outgoing packets.
This allows the linkage beginning with the first packet for
outgoing connections.
- In case of divert states, delete the state when the socket closes.
Otherwise new connections could match on old states instead of
being diverted to the listen socket.
ok henning@