diff options
author | Arnaldo Carvalho de Melo <acme@mandriva.com> | 2006-03-20 22:21:44 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2006-03-20 22:21:44 -0500 |
commit | 91f0ebf7b6d5cb2b6e818d48587566144821babe (patch) | |
tree | 505c66f36bd72014d7eacb7a04ea011bae2e9a3a /net/dccp/input.c | |
parent | f38c39d6ce8226519455a6dfe91c2ad84f363f6f (diff) |
[DCCP] CCID: Improve CCID infrastructure
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 <acme@mandriva.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/dccp/input.c')
-rw-r--r-- | net/dccp/input.c | 8 |
1 files changed, 0 insertions, 8 deletions
diff --git a/net/dccp/input.c b/net/dccp/input.c index 4b6d43d8b920..67691a0592af 100644 --- a/net/dccp/input.c +++ b/net/dccp/input.c | |||
@@ -324,14 +324,6 @@ static int dccp_rcv_request_sent_state_process(struct sock *sk, | |||
324 | dccp_set_seqno(&dp->dccps_swl, | 324 | dccp_set_seqno(&dp->dccps_swl, |
325 | max48(dp->dccps_swl, dp->dccps_isr)); | 325 | max48(dp->dccps_swl, dp->dccps_isr)); |
326 | 326 | ||
327 | if (ccid_hc_rx_init(dp->dccps_hc_rx_ccid, sk) != 0 || | ||
328 | ccid_hc_tx_init(dp->dccps_hc_tx_ccid, sk) != 0) { | ||
329 | ccid_hc_rx_exit(dp->dccps_hc_rx_ccid, sk); | ||
330 | ccid_hc_tx_exit(dp->dccps_hc_tx_ccid, sk); | ||
331 | /* FIXME: send appropriate RESET code */ | ||
332 | goto out_invalid_packet; | ||
333 | } | ||
334 | |||
335 | dccp_sync_mss(sk, icsk->icsk_pmtu_cookie); | 327 | dccp_sync_mss(sk, icsk->icsk_pmtu_cookie); |
336 | 328 | ||
337 | /* | 329 | /* |