1. 05 Nov, 2008 2 commits
    • Gerrit Renker's avatar
      dccp: Implement lookup table for feature-negotiation information · 7d43d1a0
      Gerrit Renker authored
      A lookup table for feature-negotiation information, extracted from RFC
      4340/42, is provided by this patch. All currently known features can
      be found in this table, along with their feature location, their
      default value, and type.
      Signed-off-by: default avatarGerrit Renker <gerrit@erg.abdn.ac.uk>
      Acked-by: default avatarIan McDonald <ian.mcdonald@jandi.co.nz>
      Acked-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      7d43d1a0
    • Gerrit Renker's avatar
      dccp: Basic data structure for feature negotiation · bd012f2e
      Gerrit Renker authored
      This patch prepares for the new and extended feature-negotiation
      routines.
      
      The following feature-negotiation data structures are provided:
      	* a container for the various (SP or NN) values,
      	* symbolic state names to track feature states,
      	* an entry struct which holds all current information together,
      	* elementary functions to fill in and process these structures.
      
      Entry structs are arranged as FIFO for the following reason: RFC 4340
      specifies that if multiple options of the same type are present, they
      are processed in the order of their appearance in the packet; which
      means that this order needs to be preserved in the local data
      structure (the later insertion code also respects this order).
      
      The struct list_head has been chosen for the following reasons: the most
      frequent operations are
      
       * add new entry at tail (when receiving Change or setting socket
         options);
       * delete entry (when Confirm has been received);
       * deep copy of entire list (cloning from listening socket onto
         request socket).
      
      The NN value has been set to 64 bit, which is a currently sufficient
      upper limit (Sequence Window feature has 48 bit).
      
      Thanks to Arnaldo, who contributed the streamlined layout of the entry
      struct.
      Signed-off-by: default avatarGerrit Renker <gerrit@erg.abdn.ac.uk>
      Acked-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      bd012f2e
  2. 04 Nov, 2008 26 commits
  3. 03 Nov, 2008 12 commits