• David S. Miller's avatar
    Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next · 85224844
    David S. Miller authored
    Pablo Neira Ayuso says:
    
    ====================
    pull request: netfilter/ipvs updates for net-next
    
    The following patchset contains Netfilter/IPVS updates for net-next,
    most relevantly they are:
    
    1) Four patches to make the new nf_tables masquerading support
       independent of the x_tables infrastructure. This also resolves a
       compilation breakage if the masquerade target is disabled but the
       nf_tables masq expression is enabled.
    
    2) ipset updates via Jozsef Kadlecsik. This includes the addition of the
       skbinfo extension that allows you to store packet metainformation in the
       elements. This can be used to fetch and restore this to the packets through
       the iptables SET target, patches from Anton Danilov.
    
    3) Add the hash:mac set type to ipset, from Jozsef Kadlecsick.
    
    4) Add simple weighted fail-over scheduler via Simon Horman. This provides
       a fail-over IPVS scheduler (unlike existing load balancing schedulers).
       Connections are directed to the appropriate server based solely on
       highest weight value and server availability, patch from Kenny Mathis.
    
    5) Support IPv6 real servers in IPv4 virtual-services and vice versa.
       Simon Horman informs that the motivation for this is to allow more
       flexibility in the choice of IP version offered by both virtual-servers
       and real-servers as they no longer need to match: An IPv4 connection
       from an end-user may be forwarded to a real-server using IPv6 and
       vice versa. No ip_vs_sync support yet though. Patches from Alex Gartrell
       and Julian Anastasov.
    
    6) Add global generation ID to the nf_tables ruleset. When dumping from
       several different object lists, we need a way to identify that an update
       has ocurred so userspace knows that it needs to refresh its lists. This
       also includes a new command to obtain the 32-bits generation ID. The
       less significant 16-bits of this ID is also exposed through res_id field
       in the nfnetlink header to quickly detect the interference and retry when
       there is no risk of ID wraparound.
    
    7) Move br_netfilter out of the bridge core. The br_netfilter code is
       built in the bridge core by default. This causes problems of different
       kind to people that don't want this: Jesper reported performance drop due
       to the inconditional hook registration and I remember to have read complains
       on netdev from people regarding the unexpected behaviour of our bridging
       stack when br_netfilter is enabled (fragmentation handling, layer 3 and
       upper inspection). People that still need this should easily undo the
       damage by modprobing the new br_netfilter module.
    
    8) Dump the set policy nf_tables that allows set parameterization. So
       userspace can keep user-defined preferences when saving the ruleset.
       From Arturo Borrero.
    
    9) Use __seq_open_private() helper function to reduce boiler plate code
       in x_tables, From Rob Jones.
    
    10) Safer default behaviour in case that you forget to load the protocol
       tracker. Daniel Borkmann and Florian Westphal detected that if your
       ruleset is stateful, you allow traffic to at least one single SCTP port
       and the SCTP protocol tracker is not loaded, then any SCTP traffic may
       be pass through unfiltered. After this patch, the connection tracking
       classifies SCTP/DCCP/UDPlite/GRE packets as invalid if your kernel has
       been compiled with support for these modules.
    ====================
    
    Trivially resolved conflict in include/linux/skbuff.h, Eric moved some
    netfilter skbuff members around, and the netfilter tree adjusted the
    ifdef guards for the bridging info pointer.
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    85224844
br_private.h 23.2 KB