kernel-fxtec-pro1x/net/netfilter/ipvs
Julian Anastasov 190ecd27cd ipvs: do not schedule conns from real servers
This patch is needed to avoid scheduling of
packets from local real server when we add ip_vs_in
in LOCAL_OUT hook to support local client.

 	Currently, when ip_vs_in can not find existing
connection it tries to create new one by calling ip_vs_schedule.

 	The default indication from ip_vs_schedule was if
connection was scheduled to real server. If real server is
not available we try to use the bypass forwarding method
or to send ICMP error. But in some cases we do not want to use
the bypass feature. So, add flag 'ignored' to indicate if
the scheduler ignores this packet.

 	Make sure we do not create new connections from replies.
We can hit this problem for persistent services and local real
server when ip_vs_in is added to LOCAL_OUT hook to handle
local clients.

 	Also, make sure ip_vs_schedule ignores SYN packets
for Active FTP DATA from local real server. The FTP DATA
connection should be created on SYN+ACK from client to assign
correct connection daddr.

Signed-off-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: Simon Horman <horms@verge.net.au>
2010-10-21 10:50:41 +02:00
..
ip_vs_app.c ipvs: changes related to service usecnt 2010-09-21 18:12:30 +02:00
ip_vs_conn.c IPVS: Fallback if persistence engine fails 2010-10-04 22:45:24 +09:00
ip_vs_core.c ipvs: do not schedule conns from real servers 2010-10-21 10:50:41 +02:00
ip_vs_ctl.c Fixed race condition at ip_vs.ko module init. 2010-10-19 17:13:16 +02:00
ip_vs_dh.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
ip_vs_est.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
ip_vs_ftp.c ipvs: optimize checksums for apps 2010-10-21 10:50:02 +02:00
ip_vs_lblc.c fix typos concerning "initiali[zs]e" 2010-06-16 18:05:05 +02:00
ip_vs_lblcr.c fix typos concerning "initiali[zs]e" 2010-06-16 18:05:05 +02:00
ip_vs_lc.c IPVS: use pr_err and friends instead of IP_VS_ERR and friends 2009-08-02 18:29:30 -07:00
ip_vs_nfct.c IPVS: Add struct ip_vs_conn_param 2010-10-04 22:45:24 +09:00
ip_vs_nq.c IPVS: use pr_err and friends instead of IP_VS_ERR and friends 2009-08-02 18:29:30 -07:00
ip_vs_pe.c IPVS: management of persistence engine modules 2010-10-04 22:45:24 +09:00
ip_vs_pe_sip.c IPVS: ip_vs_dbg_callid() is only needed for debugging 2010-10-13 21:22:35 +02:00
ip_vs_proto.c netfilter: xt_ipvs (netfilter matcher for IPVS) 2010-07-23 12:42:58 +02:00
ip_vs_proto_ah_esp.c IPVS: Add struct ip_vs_conn_param 2010-10-04 22:45:24 +09:00
ip_vs_proto_sctp.c ipvs: do not schedule conns from real servers 2010-10-21 10:50:41 +02:00
ip_vs_proto_tcp.c ipvs: do not schedule conns from real servers 2010-10-21 10:50:41 +02:00
ip_vs_proto_udp.c ipvs: do not schedule conns from real servers 2010-10-21 10:50:41 +02:00
ip_vs_rr.c IPVS: use pr_err and friends instead of IP_VS_ERR and friends 2009-08-02 18:29:30 -07:00
ip_vs_sched.c IPVS: ip_vs_{un,}bind_scheduler NULL arguments 2010-10-04 22:45:24 +09:00
ip_vs_sed.c IPVS: use pr_err and friends instead of IP_VS_ERR and friends 2009-08-02 18:29:30 -07:00
ip_vs_sh.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
ip_vs_sync.c IPVS: Add struct ip_vs_pe 2010-10-04 22:45:24 +09:00
ip_vs_wlc.c IPVS: use pr_fmt 2009-07-30 14:29:44 -07:00
ip_vs_wrr.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
ip_vs_xmit.c ipvs: switch to notrack mode 2010-10-21 10:50:20 +02:00
Kconfig IPVS: sip persistence engine 2010-10-04 22:45:24 +09:00
Makefile IPVS: sip persistence engine 2010-10-04 22:45:24 +09:00