1. 21 3月, 2006 1 次提交
  2. 08 2月, 2006 1 次提交
  3. 01 2月, 2006 1 次提交
  4. 31 1月, 2006 1 次提交
  5. 19 1月, 2006 1 次提交
    • D
      [IPV4]: Fix multiple bugs in IGMPv3 · ad12583f
      David L Stevens 提交于
      1) fix "mld_marksources()" to
              a) send nothing when all queried sources are excluded
              b) send full exclude report when source queried sources are
                      not excluded
              c) don't schedule a timer when there's nothing to report
      
      2) fix "add_grec()" to send empty-source records when it should
              The original check doesn't account for a non-empty source
              list with all sources inactive; the new code keeps that
              short-circuit case, and also generates the group header
              with an empty list if needed.
      
      3) fix mca_crcount decrement to be after add_grec(), which needs
              its original value
      
      4) add/remove delete records and prevent current advertisements
              when an exclude-mode filter moves from "active" to "inactive"
              or vice versa based on new filter additions.
      
              Items 1-3 are just IPv4 versions of the IPv6 bugs found
      by Yan Zheng and fixed earlier. Item #4 is a related bug that
      affects exclude-mode change records only (but not queries) and
      also occurs in IPv6 (IPv6 version coming soon).
      Signed-off-by: NDavid L Stevens <dlstevens@us.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ad12583f
  6. 12 1月, 2006 1 次提交
  7. 04 1月, 2006 1 次提交
  8. 03 12月, 2005 1 次提交
  9. 11 11月, 2005 1 次提交
    • H
      [NET]: Detect hardware rx checksum faults correctly · fb286bb2
      Herbert Xu 提交于
      Here is the patch that introduces the generic skb_checksum_complete
      which also checks for hardware RX checksum faults.  If that happens,
      it'll call netdev_rx_csum_fault which currently prints out a stack
      trace with the device name.  In future it can turn off RX checksum.
      
      I've converted every spot under net/ that does RX checksum checks to
      use skb_checksum_complete or __skb_checksum_complete with the
      exceptions of:
      
      * Those places where checksums are done bit by bit.  These will call
      netdev_rx_csum_fault directly.
      
      * The following have not been completely checked/converted:
      
      ipmr
      ip_vs
      netfilter
      dccp
      
      This patch is based on patches and suggestions from Stephen Hemminger
      and David S. Miller.
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      fb286bb2
  10. 03 11月, 2005 1 次提交
    • Y
      [MCAST]: ip[6]_mc_add_src should be called when number of sources is zero · 8713dbf0
      Yan Zheng 提交于
      And filter mode is exclude.
      
      Further explanation by David Stevens:
      
      Multicast source filters aren't widely used yet, and that's really the only
      feature that's affected if an application actually exercises this bug, as far
      as I can tell. An ordinary filter-less multicast join should still work, and
      only forwarded multicast traffic making use of filters and doing empty-source
      filters with the MSFILTER ioctl would be at risk of not getting multicast
      traffic forwarded to them because the reports generated would not be based on
      the correct counts.
      
      Signed-off-by: Yan Zheng <yanzheng@21cn.com
      Acked-by: NDavid L Stevens <dlstevens@us.ibm.com>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@mandriva.com>
      8713dbf0
  11. 04 10月, 2005 1 次提交
    • H
      [IPV4]: Replace __in_dev_get with __in_dev_get_rcu/rtnl · e5ed6399
      Herbert Xu 提交于
      The following patch renames __in_dev_get() to __in_dev_get_rtnl() and
      introduces __in_dev_get_rcu() to cover the second case.
      
      1) RCU with refcnt should use in_dev_get().
      2) RCU without refcnt should use __in_dev_get_rcu().
      3) All others must hold RTNL and use __in_dev_get_rtnl().
      
      There is one exception in net/ipv4/route.c which is in fact a pre-existing
      race condition.  I've marked it as such so that we remember to fix it.
      
      This patch is based on suggestions and prior work by Suzanne Wood and
      Paul McKenney.
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      e5ed6399
  12. 15 9月, 2005 1 次提交
  13. 30 8月, 2005 1 次提交
  14. 09 7月, 2005 5 次提交
    • D
      [IPV4]: fix IPv4 leave-group group matching · 84b42bae
      David L Stevens 提交于
              This patch fixes the multicast group matching for 
      IP_DROP_MEMBERSHIP, similar to the IP_ADD_MEMBERSHIP fix in a prior
      patch. Groups are identifiedby <group address,interface> and including
      the interface address in the match will fail if a leave-group is done
      by address when the join was done by index, or if different addresses
      on the same interface are used in the join and leave.
      Signed-off-by: NDavid L Stevens <dlstevens@us.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      84b42bae
    • D
      [IPV4]: (INCLUDE,empty)/leave-group equivalence for full-state MSF APIs & errno fix · 9951f036
      David L Stevens 提交于
      1) Adds (INCLUDE, empty)/leave-group equivalence to the full-state 
         multicast source filter APIs (IPv4 and IPv6)
      
      2) Fixes an incorrect errno in the IPv6 leave-group (ENOENT should be
         EADDRNOTAVAIL)
      Signed-off-by: NDavid L Stevens <dlstevens@us.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      9951f036
    • D
      [IPV4]: multicast API "join" issues · 917f2f10
      David L Stevens 提交于
      1) In the full-state API when imsf_numsrc == 0
         errno should be "0", but returns EADDRNOTAVAIL
      
      2) An illegal filter mode change
         errno should be EINVAL, but returns EADDRNOTAVAIL
      
      3) Trying to do an any-source option without IP_ADD_MEMBERSHIP
         errno should be EINVAL, but returns EADDRNOTAVAIL
      
      4) Adds comments for the less obvious error return values
      Signed-off-by: NDavid L Stevens <dlstevens@us.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      917f2f10
    • D
      [IPV4]: multicast API "join" issues · 8cdaaa15
      David L Stevens 提交于
      1) Changes IP_ADD_SOURCE_MEMBERSHIP and MCAST_JOIN_SOURCE_GROUP to ignore
         EADDRINUSE errors on a "courtesy join" -- prior membership or not
         is ok for these.
      
      2) Adds "leave group" equivalence of (INCLUDE, empty) filters in the 
         delta-based API. Without this, mixing delta-based API calls that
         end in an (INCLUDE, empty) filter would not allow a subsequent
         regular IP_ADD_MEMBERSHIP. It also frees socket buffer memory that
         isn't needed for both the multicast group record and source filter.
      Signed-off-by: NDavid L Stevens <dlstevens@us.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      8cdaaa15
    • D
      [IPV4]: multicast API "join" issues · ca9b907d
      David L Stevens 提交于
              This patch corrects a few problems with the IP_ADD_MEMBERSHIP
      socket option:
      
      1) The existing code makes an attempt at reference counting joins when
         using the ip_mreqn/imr_ifindex interface. Joining the same group
         on the same socket is an error, whatever the API. This leads to
         unexpected results when mixing ip_mreqn by index with ip_mreqn by
         address, ip_mreq, or other API's. For example, ip_mreq followed by
         ip_mreqn of the same group will "work" while the same two reversed
         will not.
                 Fixed to always return EADDRINUSE on a duplicate join and
         removed the (now unused) reference count in ip_mc_socklist.
      
      2) The group-search list in ip_mc_join_group() is comparing a full 
         ip_mreqn structure and all of it must match for it to find the
         group. This doesn't correctly match a group that was joined with
         ip_mreq or ip_mreqn with an address (with or without an index). It
         also doesn't match groups that are joined by different addresses on
         the same interface. All of these are the same multicast group,
         which is identified by group address and interface index.
                 Fixed the check to correctly match groups so we don't get
         duplicate group entries on the ip_mc_socklist.
      
      3) The old code allocates a multicast address before searching for
         duplicates requiring it to free in various error cases. This
         patch moves the allocate until after the search and
         igmp_max_memberships check, so never a need to allocate, then free
         an entry.
      Signed-off-by: NDavid L Stevens <dlstevens@us.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ca9b907d
  15. 17 4月, 2005 1 次提交
    • L
      Linux-2.6.12-rc2 · 1da177e4
      Linus Torvalds 提交于
      Initial git repository build. I'm not bothering with the full history,
      even though we have it. We can create a separate "historical" git
      archive of that later if we want to, and in the meantime it's about
      3.2GB when imported into git - space that would just make the early
      git days unnecessarily complicated, when we don't have a lot of good
      infrastructure for it.
      
      Let it rip!
      1da177e4