kernel_optimize_test/include/net
Julian Anastasov 87375ab47c [IPVS]: ip_vs_ftp breaks connections using persistence
ip_vs_ftp when loaded can create NAT connections with unknown client
port for passive FTP. For such expectations we lookup with cport=0 on
incoming packet but it matches the format of the persistence templates
causing packets to other persistent virtual servers to be forwarded to
real server without creating connection. Later the reply packets are
treated as foreign and not SNAT-ed.

This patch changes the connection lookup for packets from clients:

* introduce IP_VS_CONN_F_TEMPLATE connection flag to mark the
  connection as template

* create new connection lookup function just for templates -
  ip_vs_ct_in_get

* make sure ip_vs_conn_in_get hits only connections with
  IP_VS_CONN_F_NO_CPORT flag set when s_port is 0. By this way
  we avoid returning template when looking for cport=0 (ftp)

Signed-off-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-09-14 21:08:51 -07:00
..
bluetooth [Bluetooth] Add support for extended inquiry responses 2005-09-13 01:32:25 +02:00
irda [IRDA]: IrDA prototype fixes 2005-09-05 18:08:11 -07:00
sctp [TCP]: Move the tcp sock states to net/tcp_states.h 2005-08-29 15:41:54 -07:00
tc_act
act_api.h [NET]: Kill skb->tc_classid 2005-08-29 15:31:18 -07:00
act_generic.h [PKT_SCHED]: Fixup simple action define. 2005-05-19 12:42:39 -07:00
addrconf.h [NET]: Fix sparse warnings 2005-08-29 16:01:32 -07:00
af_unix.h [NET]: Fix sparse warnings 2005-08-29 16:01:32 -07:00
ah.h
arp.h [NET]: Kill skb->real_dev 2005-08-29 15:32:25 -07:00
atmclip.h
ax25.h [AX.25]: Add descriptions to constants 2005-09-12 14:24:24 -07:00
checksum.h
compat.h [NET]: Need struct sock forward decl in net/compat.h 2005-09-08 12:32:46 -07:00
datalink.h [NET]: Kill skb->real_dev 2005-08-29 15:32:25 -07:00
dn_dev.h
dn_fib.h
dn_neigh.h
dn_nsp.h
dn_route.h
dn.h [TCP]: Move the tcp sock states to net/tcp_states.h 2005-08-29 15:41:54 -07:00
dsfield.h
dst.h
esp.h
flow.h
gen_stats.h
icmp.h [NET]: Fix sparse warnings 2005-08-29 16:01:32 -07:00
ieee80211_crypt.h [NET] ieee80211 subsystem 2005-05-12 22:48:20 -04:00
ieee80211.h [PATCH] ieee80211: Fix debug comments ipw->ieee80211 2005-08-28 19:23:07 -04:00
if_inet6.h
inet_common.h [INET]: Move the TCP hashtable functions/structs to inet_hashtables.[ch] 2005-08-29 15:38:39 -07:00
inet_connection_sock.h [INET]: compile errors when DEBUG is defined 2005-08-29 22:51:28 -07:00
inet_ecn.h
inet_hashtables.h [ICSK]: Generalise tcp_listen_{start,stop} 2005-08-29 15:49:24 -07:00
inet_timewait_sock.h [TIMEWAIT]: Move inet_timewait_death_row routines to net/ipv4/inet_timewait_sock.c 2005-08-29 15:55:58 -07:00
inet6_hashtables.h [INET6_HASHTABLES]: Move inet6_lookup functions to net/ipv6/inet6_hashtables.c 2005-08-29 15:57:29 -07:00
inetpeer.h
ip_fib.h [NET]: Fix sparse warnings 2005-08-29 16:01:32 -07:00
ip_mp_alg.h
ip_vs.h [IPVS]: ip_vs_ftp breaks connections using persistence 2005-09-14 21:08:51 -07:00
ip.h [IP]: Introduce ip_options_get_from_user 2005-08-29 16:01:39 -07:00
ip6_checksum.h
ip6_fib.h [IPV6]: V6 route events reported with wrong netlink PID and seq number 2005-06-21 13:51:04 -07:00
ip6_route.h [TCP]: Move the tcp sock states to net/tcp_states.h 2005-08-29 15:41:54 -07:00
ip6_tunnel.h
ipcomp.h
ipconfig.h
ipip.h
ipv6.h [IPV6]: Support IPV6_{RECV,}TCLASS socket options / ancillary data. 2005-09-08 10:19:03 +09:00
ipx.h
iw_handler.h [PATCH] WE-19 for kernel 2.6.13 2005-09-06 22:40:24 -04:00
lapb.h
llc_c_ac.h
llc_c_ev.h
llc_c_st.h
llc_conn.h
llc_if.h
llc_pdu.h
llc_s_ac.h
llc_s_ev.h
llc_s_st.h
llc_sap.h
llc.h [NET]: Kill skb->real_dev 2005-08-29 15:32:25 -07:00
ndisc.h
neighbour.h [NET]: Store skb->timestamp as offset to a base timestamp 2005-08-29 15:58:24 -07:00
netrom.h [NETROM]: Introduct stuct nr_private 2005-09-12 14:28:03 -07:00
p8022.h [NET]: Fix sparse warnings 2005-08-29 16:01:32 -07:00
pkt_act.h
pkt_cls.h [NET]: Remove explicit initializations of skb->input_dev 2005-08-29 15:33:26 -07:00
pkt_sched.h [PKT_SCHED]: Cleanup qdisc creation and alignment macros 2005-07-05 14:15:09 -07:00
protocol.h
psnap.h [NET]: Kill skb->real_dev 2005-08-29 15:32:25 -07:00
raw.h [NET]: Fix sparse warnings 2005-08-29 16:01:32 -07:00
rawv6.h [IPV4/6]: Check if packet was actually delivered to a raw socket to decide whether to send an ICMP unreachable 2005-08-29 15:37:22 -07:00
request_sock.h [ICSK]: Move generalised functions from tcp to inet_connection_sock 2005-08-29 15:49:50 -07:00
rose.h
route.h [NET]: Fix sparse warnings 2005-08-29 16:01:32 -07:00
sch_generic.h [PKT_SCHED]: Cleanup qdisc creation and alignment macros 2005-07-05 14:15:09 -07:00
scm.h
slhc_vj.h [NET]: Remove __ARGS from include/net/slhc_vj.h 2005-07-05 15:12:04 -07:00
snmp.h [PATCH] smp_processor_id() cleanup 2005-06-21 18:46:13 -07:00
sock.h [NET]: Do not protect sysctl_optmem_max with CONFIG_SYSCTL 2005-09-05 18:14:11 -07:00
syncppp.h
tcp_ecn.h [NET]: Introduce inet_connection_sock 2005-08-29 15:43:19 -07:00
tcp_states.h [TCP]: Move the tcp sock states to net/tcp_states.h 2005-08-29 15:41:54 -07:00
tcp.h [TCP]: Keep TSO enabled even during loss events. 2005-09-01 22:47:01 -07:00
transp_v6.h [IPV6]: Support IPV6_{RECV,}TCLASS socket options / ancillary data. 2005-09-08 10:19:03 +09:00
udp.h [NET]: Fix sparse warnings 2005-08-29 16:01:32 -07:00
x25.h [NET]: Kill skb->real_dev 2005-08-29 15:32:25 -07:00
x25device.h [NET]: Remove explicit initializations of skb->input_dev 2005-08-29 15:33:26 -07:00
xfrm.h [IPV4]: possible cleanups 2005-08-29 15:33:20 -07:00