1. 16 11月, 2005 1 次提交
  2. 15 11月, 2005 13 次提交
  3. 13 11月, 2005 3 次提交
  4. 12 11月, 2005 6 次提交
  5. 11 11月, 2005 8 次提交
  6. 10 11月, 2005 9 次提交
    • T
      [PATCH] SUNRPC: don't reencode when looping in call transmit. · 940e3318
      Trond Myklebust 提交于
      If the call to xprt_transmit() fails due to socket buffer space
      exhaustion, we do not need to re-encode the RPC message when we
      loop back through call_transmit.
      
      Re-encoding can actually end up triggering the WARN_ON() in
      call_decode() if we re-encode something like a read() request and
      auth->au_rslack has changed.
      It can also cause us to increment the RPCSEC_GSS sequence number
      beyond the limits of the allowed window.
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      940e3318
    • T
      [NETLINK]: Generic netlink family · 482a8524
      Thomas Graf 提交于
      The generic netlink family builds on top of netlink and provides
      simplifies access for the less demanding netlink users. It solves
      the problem of protocol numbers running out by introducing a so
      called controller taking care of id management and name resolving.
      
      Generic netlink modules register themself after filling out their
      id card (struct genl_family), after successful registration the
      modules are able to register callbacks to command numbers by
      filling out a struct genl_ops and calling genl_register_op(). The
      registered callbacks are invoked with attributes parsed making
      life of simple modules a lot easier.
      
      Although generic netlink modules can request static identifiers,
      it is recommended to use GENL_ID_GENERATE and to let the controller
      assign a unique identifier to the module. Userspace applications
      will then ask the controller and lookup the idenfier by the module
      name.
      
      Due to the current multicast implementation of netlink, the number
      of generic netlink modules is restricted to 1024 to avoid wasting
      memory for the per socket multiacst subscription bitmask.
      Signed-off-by: NThomas Graf <tgraf@suug.ch>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      482a8524
    • T
      9ac4a169
    • T
      [XFRM]: Use generic netlink receive queue processor · 88fc2c84
      Thomas Graf 提交于
      Signed-off-by: NThomas Graf <tgraf@suug.ch>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      88fc2c84
    • T
      [NETLINK]: Generic netlink receive queue processor · 82ace47a
      Thomas Graf 提交于
      Introduces netlink_run_queue() to handle the receive queue of
      a netlink socket in a generic way. Processes as much as there
      was in the queue upon entry and invokes a callback function
      for each netlink message found. The callback function may
      refuse a message by returning a negative error code but setting
      the error pointer to 0 in which case netlink_run_queue() will
      return with a qlen != 0.
      Signed-off-by: NThomas Graf <tgraf@suug.ch>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      82ace47a
    • T
      [NETLINK]: Make netlink_callback->done() optional · a8f74b22
      Thomas Graf 提交于
      Most netlink families make no use of the done() callback, making
      it optional gets rid of all unnecessary dummy implementations.
      Signed-off-by: NThomas Graf <tgraf@suug.ch>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      a8f74b22
    • T
      [NETLINK]: Type-safe netlink messages/attributes interface · bfa83a9e
      Thomas Graf 提交于
      Introduces a new type-safe interface for netlink message and
      attributes handling. The interface is fully binary compatible
      with the old interface towards userspace. Besides type safety,
      this interface features attribute validation capabilities,
      simplified message contstruction, and documentation.
      
      The resulting netlink code should be smaller, less error prone
      and easier to understand.
      Signed-off-by: NThomas Graf <tgraf@suug.ch>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      bfa83a9e
    • Y
      [NETFILTER]: Add nf_conntrack subsystem. · 9fb9cbb1
      Yasuyuki Kozakai 提交于
      The existing connection tracking subsystem in netfilter can only
      handle ipv4.  There were basically two choices present to add
      connection tracking support for ipv6.  We could either duplicate all
      of the ipv4 connection tracking code into an ipv6 counterpart, or (the
      choice taken by these patches) we could design a generic layer that
      could handle both ipv4 and ipv6 and thus requiring only one sub-protocol
      (TCP, UDP, etc.) connection tracking helper module to be written.
      
      In fact nf_conntrack is capable of working with any layer 3
      protocol.
      
      The existing ipv4 specific conntrack code could also not deal
      with the pecularities of doing connection tracking on ipv6,
      which is also cured here.  For example, these issues include:
      
      1) ICMPv6 handling, which is used for neighbour discovery in
         ipv6 thus some messages such as these should not participate
         in connection tracking since effectively they are like ARP
         messages
      
      2) fragmentation must be handled differently in ipv6, because
         the simplistic "defrag, connection track and NAT, refrag"
         (which the existing ipv4 connection tracking does) approach simply
         isn't feasible in ipv6
      
      3) ipv6 extension header parsing must occur at the correct spots
         before and after connection tracking decisions, and there were
         no provisions for this in the existing connection tracking
         design
      
      4) ipv6 has no need for stateful NAT
      
      The ipv4 specific conntrack layer is kept around, until all of
      the ipv4 specific conntrack helpers are ported over to nf_conntrack
      and it is feature complete.  Once that occurs, the old conntrack
      stuff will get placed into the feature-removal-schedule and we will
      fully kill it off 6 months later.
      Signed-off-by: NYasuyuki Kozakai <yasuyuki.kozakai@toshiba.co.jp>
      Signed-off-by: NHarald Welte <laforge@netfilter.org>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@mandriva.com>
      9fb9cbb1
    • K
      [IPV6]: ip6ip6_lock is not unlocked in error path. · 9f0ede52
      Ken-ichirou MATSUZAWA 提交于
      From: Ken-ichirou MATSUZAWA <chamas@h4.dion.ne.jp>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      9f0ede52