1. 18 Nov, 2008 2 commits
    • Pablo Neira Ayuso's avatar
      netfilter: ctnetlink: deliver events for conntracks changed from userspace · 19abb7b0
      Pablo Neira Ayuso authored
      As for now, the creation and update of conntracks via ctnetlink do not
      propagate an event to userspace. This can result in inconsistent situations
      if several userspace processes modify the connection tracking table by means
      of ctnetlink at the same time. Specifically, using the conntrack command
      line tool and conntrackd at the same time can trigger unconsistencies.
      
      This patch also modifies the event cache infrastructure to pass the
      process PID and the ECHO flag to nfnetlink_send() to report back
      to userspace if the process that triggered the change needs so.
      Based on a suggestion from Patrick McHardy.
      Signed-off-by: default avatarPablo Neira Ayuso <pablo@netfilter.org>
      Signed-off-by: default avatarPatrick McHardy <kaber@trash.net>
      19abb7b0
    • Pablo Neira Ayuso's avatar
      netfilter: ctnetlink: helper modules load-on-demand support · 226c0c0e
      Pablo Neira Ayuso authored
      This patch adds module loading for helpers via ctnetlink.
      
      * Creation path: We support explicit and implicit helper assignation. For
        the explicit case, we try to load the module. If the module is correctly
        loaded and the helper is present, we return EAGAIN to re-start the
        creation. Otherwise, we return EOPNOTSUPP.
      * Update path: release the spin lock, load the module and check. If it is
        present, then return EAGAIN to re-start the update.
      
      This patch provides a refactorized function to lookup-and-set the
      connection tracking helper. The function removes the exported symbol
      __nf_ct_helper_find as it has not clients anymore.
      Signed-off-by: default avatarPablo Neira Ayuso <pablo@netfilter.org>
      Signed-off-by: default avatarPatrick McHardy <kaber@trash.net>
      226c0c0e
  2. 17 Nov, 2008 4 commits
  3. 04 Nov, 2008 34 commits