lkml.org 
[lkml]   [2007]   [Feb]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[patch 06/59] NETFILTER: Fix routing of REJECT target generated packets in output chain
    -stable review patch.  If anyone has any objections, please let us know.
    ------------------

    From: Patrick McHardy <kaber@trash.net>

    Packets generated by the REJECT target in the output chain have a local
    destination address and a foreign source address. Make sure not to use
    the foreign source address for the output route lookup.

    Signed-off-by: Patrick McHardy <kaber@trash.net>
    Signed-off-by: Chris Wright <chrisw@sous-sol.org>
    ---
    net/ipv4/netfilter.c | 7 +++++--
    1 file changed, 5 insertions(+), 2 deletions(-)

    --- linux-2.6.19.2.orig/net/ipv4/netfilter.c
    +++ linux-2.6.19.2/net/ipv4/netfilter.c
    @@ -15,16 +15,19 @@ int ip_route_me_harder(struct sk_buff **
    struct flowi fl = {};
    struct dst_entry *odst;
    unsigned int hh_len;
    + unsigned int type;

    + type = inet_addr_type(iph->saddr);
    if (addr_type == RTN_UNSPEC)
    - addr_type = inet_addr_type(iph->saddr);
    + addr_type = type;

    /* some non-standard hacks like ipt_REJECT.c:send_reset() can cause
    * packets with foreign saddr to appear on the NF_IP_LOCAL_OUT hook.
    */
    if (addr_type == RTN_LOCAL) {
    fl.nl_u.ip4_u.daddr = iph->daddr;
    - fl.nl_u.ip4_u.saddr = iph->saddr;
    + if (type == RTN_LOCAL)
    + fl.nl_u.ip4_u.saddr = iph->saddr;
    fl.nl_u.ip4_u.tos = RT_TOS(iph->tos);
    fl.oif = (*pskb)->sk ? (*pskb)->sk->sk_bound_dev_if : 0;
    #ifdef CONFIG_IP_ROUTE_FWMARK
    --
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2007-02-03 03:59    [W:0.020 / U:33.744 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site