1. 23 2月, 2011 3 次提交
  2. 21 2月, 2011 2 次提交
  3. 20 2月, 2011 2 次提交
  4. 19 2月, 2011 5 次提交
  5. 18 2月, 2011 14 次提交
  6. 17 2月, 2011 2 次提交
    • J
      netfilter: ip6t_LOG: fix a flaw in printing the MAC · 0af320fb
      Joerg Marx 提交于
      The flaw was in skipping the second byte in MAC header due to increasing
      the pointer AND indexed access starting at '1'.
      Signed-off-by: NJoerg Marx <joerg.marx@secunet.com>
      Signed-off-by: NPatrick McHardy <kaber@trash.net>
      0af320fb
    • F
      netfilter: tproxy: do not assign timewait sockets to skb->sk · d503b30b
      Florian Westphal 提交于
      Assigning a socket in timewait state to skb->sk can trigger
      kernel oops, e.g. in nfnetlink_log, which does:
      
      if (skb->sk) {
              read_lock_bh(&skb->sk->sk_callback_lock);
              if (skb->sk->sk_socket && skb->sk->sk_socket->file) ...
      
      in the timewait case, accessing sk->sk_callback_lock and sk->sk_socket
      is invalid.
      
      Either all of these spots will need to add a test for sk->sk_state != TCP_TIME_WAIT,
      or xt_TPROXY must not assign a timewait socket to skb->sk.
      
      This does the latter.
      
      If a TW socket is found, assign the tproxy nfmark, but skip the skb->sk assignment,
      thus mimicking behaviour of a '-m socket .. -j MARK/ACCEPT' re-routing rule.
      
      The 'SYN to TW socket' case is left unchanged -- we try to redirect to the
      listener socket.
      
      Cc: Balazs Scheidler <bazsi@balabit.hu>
      Cc: KOVACS Krisztian <hidden@balabit.hu>
      Signed-off-by: NFlorian Westphal <fwestphal@astaro.com>
      Signed-off-by: NPatrick McHardy <kaber@trash.net>
      d503b30b
  7. 16 2月, 2011 2 次提交
  8. 15 2月, 2011 8 次提交
    • D
      ipv4: Cache learned redirect information in inetpeer. · f39925db
      David S. Miller 提交于
      Note that we do not generate the redirect netevent any longer,
      because we don't create a new cached route.
      
      Instead, once the new neighbour is bound to the cached route,
      we emit a neigh update event instead.
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f39925db
    • D
      ipv4: Cache learned PMTU information in inetpeer. · 2c8cec5c
      David S. Miller 提交于
      The general idea is that if we learn new PMTU information, we
      bump the peer genid.
      
      This triggers the dst_ops->check() code to validate and if
      necessary propagate the new PMTU value into the metrics.
      
      Learned PMTU information self-expires.
      
      This means that it is not necessary to kill a cached route
      entry just because the PMTU information is too old.
      
      As a consequence:
      
      1) When the path appears unreachable (dst_ops->link_failure
         or dst_ops->negative_advice) we unwind the PMTU state if
         it is out of date, instead of killing the cached route.
      
         A redirected route will still be invalidated in these
         situations.
      
      2) rt_check_expire(), rt_worker_func(), et al. are no longer
         necessary at all.
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      2c8cec5c
    • I
      arp_notify: unconditionally send gratuitous ARP for NETDEV_NOTIFY_PEERS. · d11327ad
      Ian Campbell 提交于
      NETDEV_NOTIFY_PEER is an explicit request by the driver to send a link
      notification while NETDEV_UP/NETDEV_CHANGEADDR generate link
      notifications as a sort of side effect.
      
      In the later cases the sysctl option is present because link
      notification events can have undesired effects e.g. if the link is
      flapping. I don't think this applies in the case of an explicit
      request from a driver.
      
      This patch makes NETDEV_NOTIFY_PEER unconditional, if preferred we
      could add a new sysctl for this case which defaults to on.
      
      This change causes Xen post-migration ARP notifications (which cause
      switches to relearn their MAC tables etc) to be sent by default.
      Signed-off-by: NIan Campbell <ian.campbell@citrix.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d11327ad
    • B
      ROSE: AX25: finding routes simplification · 68aa3fd5
      Bernard Pidoux 提交于
      With previous patch, rose_get_neigh() routine
      investigates the full list of neighbor nodes
      until it finds or not an already connected node whether
      it is called locally or through a level 3 transit frame.
      If no routes are opened through an adjacent connected node
      then a classical connect request is attempted.
      
      Then there is no more reason for an extra loop such
      as the one removed by this patch.
      Signed-off-by: NBernard Pidoux <f6bvp@free.fr>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      68aa3fd5
    • B
      ROSE: rose AX25 packet routing improvement · c5d8b24a
      Bernard Pidoux 提交于
      FPAC AX25 packet application is using Linux kernel ROSE
      routing skills in order to connect or send packets to remote stations
      knowing their ROSE address via a network of interconnected nodes.
      
      Each FPAC node has a ROSE routing table that Linux ROSE module is
      looking at each time a ROSE frame is relayed by the node or when
      a connect request to a neighbor node is received.
      
      A previous patch improved the system time response by looking at
      already established routes each time the system was looking for a
      route to relay a frame. If a neighbor node routing the destination
      address was already connected, then the frame would be sent
      through him. If not, a connection request would be issued.
      
      The present patch extends the same routing capability to a connect
      request asked by a user locally connected into an FPAC node.
      Without this patch, a connect request was not well handled unless it
      was directed to an immediate connected neighbor of the local node.
      
      Implemented at a number of ROSE FPAC node stations, the present patch
      improved dramatically FPAC ROSE routing time response and efficiency.
      Signed-off-by: NBernard Pidoux <f6bvp@free.fr>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c5d8b24a
    • E
      ipv4: fix rcu lock imbalance in fib_select_default() · 31d40937
      Eric Dumazet 提交于
      Commit 0c838ff1 (ipv4: Consolidate all default route selection
      implementations.) forgot to remove one rcu_read_unlock() from
      fib_select_default().
      Signed-off-by: NEric Dumazet <eric.dumazet@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      31d40937
    • B
      sch_mqprio: Always set num_tc to 0 in mqprio_destroy() · ac7100ba
      Ben Hutchings 提交于
      All the cleanup code in mqprio_destroy() is currently conditional on
      priv->qdiscs being non-null, but that condition should only apply to
      the per-queue qdisc cleanup.  We should always set the number of
      traffic classes back to 0 here.
      Signed-off-by: NBen Hutchings <bhutchings@solarflare.com>
      ac7100ba
    • P
      netfilter: nf_iterate: fix incorrect RCU usage · de9963f0
      Patrick McHardy 提交于
      As noticed by Eric, nf_iterate doesn't use RCU correctly by
      accessing the prev pointer of a RCU protected list element when
      a verdict of NF_REPEAT is issued.
      
      Fix by jumping backwards to the hook invocation directly instead
      of loading the previous list element before continuing the list
      iteration.
      Reported-by: NEric Dumazet <eric.dumazet@gmail.com>
      Acked-by: NEric Dumazet <eric.dumazet@gmail.com>
      Signed-off-by: NPatrick McHardy <kaber@trash.net>
      de9963f0
  9. 14 2月, 2011 2 次提交