1. 05 7月, 2011 4 次提交
    • G
      dccp ccid-2: move rfc 3390 function into header file · b4d5f4b2
      Gerrit Renker 提交于
      This moves CCID-2's initial window function into the header file, since several
      parts throughout the CCID-2 code need to call it (CCID-2 still uses RFC 3390).
      Signed-off-by: NGerrit Renker <gerrit@erg.abdn.ac.uk>
      Acked-by: NLeandro Melo de Sales <leandro@ic.ufal.br>
      b4d5f4b2
    • G
      dccp: cosmetics of info message · 1fd9d208
      Gerrit Renker 提交于
      Change the CCID (de)activation message to start with the
      protocol name, as 'CCID' is already in there.
      Signed-off-by: NGerrit Renker <gerrit@erg.abdn.ac.uk>
      1fd9d208
    • G
      dccp: combine the functionality of enqeueing and cloning · 8695e801
      Gerrit Renker 提交于
      Realising the following call pattern,
       * first dccp_entail() is called to enqueue a new skb and
       * then skb_clone() is called to transmit a clone of that skb,
      this patch integrates both into the same function.
      Signed-off-by: NGerrit Renker <gerrit@erg.abdn.ac.uk>
      8695e801
    • G
      dccp: Clean up slow-path input processing · c0c20150
      Gerrit Renker 提交于
      This patch rearranges the order of statements of the slow-path input processing
      (i.e. any other state than OPEN), to resolve the following issues.
      
       1. Dependencies: the order of statements now better matches RFC 4340, 8.5, i.e.
          step 7 is before step 9 (previously 9 was before 7), and parsing options in
          step 8 (which may consume resources) now comes after step 7.
       2. Sequence number checks are omitted if in state LISTEN/REQUEST, due to the
          note underneath the table in RFC 4340, 7.5.3.
          As a result, CCID processing is now indeed confined to OPEN/PARTOPEN states,
          i.e. congestion control is performed only on the flow of data packets. This
          avoids pathological cases of doing congestion control on those messages
          which set up and terminate the connection.
       3. Packets are now passed on to Ack Vector / CCID processing only after
          - step 7  (receive unexpected packets),
          - step 9  (receive Reset),
          - step 13 (receive CloseReq),
          - step 14 (receive Close)
          and only if the state is PARTOPEN. This simplifies CCID processing:
          - in LISTEN/CLOSED the CCIDs are non-existent;
          - in RESPOND/REQUEST the CCIDs have not yet been negotiated;
          - in CLOSEREQ and active-CLOSING the node has already closed this socket;
          - in passive-CLOSING the client is waiting for its Reset.
          In the last case, RFC 4340, 8.3 leaves it open to ignore further incoming
          data, which is the approach taken here.
      Signed-off-by: NGerrit Renker <gerrit@erg.abdn.ac.uk>
      c0c20150
  2. 04 7月, 2011 4 次提交
  3. 02 7月, 2011 15 次提交
  4. 01 7月, 2011 17 次提交