11 Oct, 2007

2 commits


26 Apr, 2007

1 commit


07 Mar, 2007

1 commit

  • This mirrors a recent change in tcp_open_req_child, whereby the icsk_rto of the
    newly created child socket was not set (but rather on the parent socket). Same
    fix for DCCP.

    Signed-off-by: Gerrit Renker
    Signed-off-by: Arnaldo Carvalho de Melo
    Signed-off-by: David S. Miller

    Gerrit Renker
     

12 Dec, 2006

1 commit


05 Dec, 2006

1 commit


03 Dec, 2006

7 commits

  • This reaps the benefit of the earlier patch, which changed the type of
    CCID 3 states to use enums, in that many conditions are now simplified
    and the number of possible (unexpected) values is greatly reduced.

    In a few instances, this also allowed to simplify pre-conditions; where
    care has been taken to retain logical equivalence.

    [DCCP]: Introduce a consistent BUG/WARN message scheme

    This refines the existing set of DCCP messages so that
    * BUG(), BUG_ON(), WARN_ON() have meaningful DCCP-specific counterparts
    * DCCP_CRIT (for severe warnings) is not rate-limited
    * DCCP_WARN() is introduced as rate-limited wrapper

    Using these allows a faster and cleaner transition to their original
    counterparts once the code has matured into a full DCCP implementation.

    Signed-off-by: Gerrit Renker
    Signed-off-by: Arnaldo Carvalho de Melo

    Gerrit Renker
     
  • Based on implementation by Rick Payne.

    Signed-off-by: YOSHIFUJI Hideaki
    Signed-off-by: David S. Miller

    YOSHIFUJI Hideaki
     
  • In order to make their function clearer and obtain a consistent naming
    scheme to identify sysctls, all existing DCCP sysctls have been prefixed
    with `sysctl_dccp', following the same convention as used by TCP.

    Feature-specific sysctls retain the `feat' in the middle, although the
    `default' has been dropped, since it is obvious from use.

    Also removed a duplicate `dccp_feat_default_sequence_window' in ipv4.c.

    Signed-off-by: Gerrit Renker
    Signed-off-by: Arnaldo Carvalho de Melo

    Gerrit Renker
     
  • Problem:

    Gerrit Renker
     
  • Sorts out the comments for processing steps 2,3 in section 8.5 of RFC 4340.
    All comments have been updated against this document, and the reference to step
    2 has been made consistent throughout the files.

    Signed-off-by: Gerrit Renker
    Signed-off-by: Arnaldo Carvalho de Melo

    Gerrit Renker
     
  • This is a code simplification to remove reduplicated code
    by concentrating and abstracting shared code.

    Detailed Changes:

    Gerrit Renker
     
  • This patch removes two functions, the send_ack functions of request_sock,
    which are not called/used by the DCCP code. It is correct that these
    functions are not called, below is a justification why calling these
    functions (on a passive socket in the LISTEN/RESPOND state) would mean
    a DCCP protocol violation.

    A) Background: using request_sock in TCP:

    Gerrit Renker
     

22 Nov, 2006

1 commit


01 Jul, 2006

1 commit


21 Mar, 2006

4 commits

  • This will later be included in struct dccp_request_sock so that we can
    have per connection feature negotiation state while in the 3way
    handshake, when we clone the DCCP_ROLE_LISTEN socket (in
    dccp_create_openreq_child) we'll just copy this state from
    dreq_minisock to dccps_minisock.

    Also the feature negotiation and option parsing code will mostly touch
    dccps_minisock, which will simplify some stuff.

    Signed-off-by: Arnaldo Carvalho de Melo
    Signed-off-by: David S. Miller

    Arnaldo Carvalho de Melo
     
  • 1. No need for ->ccid_init nor ->ccid_exit, this is what module_{init,exit}
    does and anynways neither ccid2 nor ccid3 were using it.

    2. Rename struct ccid to struct ccid_operations and introduce struct ccid
    with a pointer to ccid_operations and rigth after it the rx or tx
    private state.

    3. Remove the pointer to the state of the half connections from struct
    dccp_sock, now its derived thru ccid_priv() from the ccid pointer.

    Now we also can implement the setsockopt for changing the CCID easily as
    no ccid init routines can affect struct dccp_sock in any way that prevents
    other CCIDs from working if a CCID switch operation is asked by apps.

    Signed-off-by: Arnaldo Carvalho de Melo
    Signed-off-by: David S. Miller

    Arnaldo Carvalho de Melo
     
  • Still needs more work, but boots and doesn't crashes, even
    does some negotiation!

    18:38:52.174934 127.0.0.1.43458 > 127.0.0.1.5001: request
    18:38:52.218526 127.0.0.1.5001 > 127.0.0.1.43458: response
    18:38:52.185398 127.0.0.1.43458 > 127.0.0.1.5001:

    :-)

    Signed-off-by: Andrea Bittau
    Signed-off-by: Arnaldo Carvalho de Melo
    Signed-off-by: David S. Miller

    Andrea Bittau
     
  • Simplifying the code a bit as we're always using DCCP_MAX_ACKVEC_LEN.

    Signed-off-by: Arnaldo Carvalho de Melo
    Signed-off-by: David S. Miller

    Arnaldo Carvalho de Melo
     

04 Jan, 2006

3 commits


18 Sep, 2005

1 commit


17 Sep, 2005

1 commit

  • As discussed in the dccp@vger mailing list:

    Now applications have to use setsockopt(DCCP_SOCKOPT_SERVICE, service[s]),
    prior to calling listen() and connect().

    An array of unsigned ints can be passed meaning that the listening sock accepts
    connection requests for several services.

    With this we can ditch struct sockaddr_dccp and use only sockaddr_in (and
    sockaddr_in6 in the future).

    Signed-off-by: Arnaldo Carvalho de Melo
    Signed-off-by: David S. Miller

    Arnaldo Carvalho de Melo
     

09 Sep, 2005

1 commit


30 Aug, 2005

5 commits