Commit 9cb2345a8c49ea380437d02bb9fd9f291c0a005d
Committed by
David S. Miller
1 parent
f5026fabda
Exists in
master
and in
7 other branches
[DCCP]: Documentation for CCID operations
This adds documentation for the ccid_operations structure. Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk> Signed-off-by: Ian McDonald <ian.mcdonald@jandi.co.nz> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Showing 1 changed file with 28 additions and 7 deletions Side-by-side Diff
net/dccp/ccid.h
... | ... | @@ -23,14 +23,35 @@ |
23 | 23 | |
24 | 24 | struct tcp_info; |
25 | 25 | |
26 | +/** | |
27 | + * struct ccid_operations - Interface to Congestion-Control Infrastructure | |
28 | + * | |
29 | + * @ccid_id: numerical CCID ID (up to %CCID_MAX, cf. table 5 in RFC 4340, 10.) | |
30 | + * @ccid_name: alphabetical identifier string for @ccid_id | |
31 | + * @ccid_owner: module which implements/owns this CCID | |
32 | + * @ccid_hc_{r,t}x_slab: memory pool for the receiver/sender half-connection | |
33 | + * @ccid_hc_{r,t}x_obj_size: size of the receiver/sender half-connection socket | |
34 | + * | |
35 | + * @ccid_hc_{r,t}x_init: CCID-specific initialisation routine (before startup) | |
36 | + * @ccid_hc_{r,t}x_exit: CCID-specific cleanup routine (before destruction) | |
37 | + * @ccid_hc_rx_packet_recv: implements the HC-receiver side | |
38 | + * @ccid_hc_{r,t}x_parse_options: parsing routine for CCID/HC-specific options | |
39 | + * @ccid_hc_{r,t}x_insert_options: insert routine for CCID/HC-specific options | |
40 | + * @ccid_hc_tx_packet_recv: implements feedback processing for the HC-sender | |
41 | + * @ccid_hc_tx_send_packet: implements the sending part of the HC-sender | |
42 | + * @ccid_hc_tx_packet_sent: does accounting for packets in flight by HC-sender | |
43 | + * @ccid_hc_{r,t}x_get_info: INET_DIAG information for HC-receiver/sender | |
44 | + * @ccid_hc_{r,t}x_getsockopt: socket options specific to HC-receiver/sender | |
45 | + */ | |
26 | 46 | struct ccid_operations { |
27 | - unsigned char ccid_id; | |
28 | - const char *ccid_name; | |
29 | - struct module *ccid_owner; | |
30 | - struct kmem_cache *ccid_hc_rx_slab; | |
31 | - __u32 ccid_hc_rx_obj_size; | |
32 | - struct kmem_cache *ccid_hc_tx_slab; | |
33 | - __u32 ccid_hc_tx_obj_size; | |
47 | + unsigned char ccid_id; | |
48 | + const char *ccid_name; | |
49 | + struct module *ccid_owner; | |
50 | + struct kmem_cache *ccid_hc_rx_slab, | |
51 | + *ccid_hc_tx_slab; | |
52 | + __u32 ccid_hc_rx_obj_size, | |
53 | + ccid_hc_tx_obj_size; | |
54 | + /* Interface Routines */ | |
34 | 55 | int (*ccid_hc_rx_init)(struct ccid *ccid, struct sock *sk); |
35 | 56 | int (*ccid_hc_tx_init)(struct ccid *ccid, struct sock *sk); |
36 | 57 | void (*ccid_hc_rx_exit)(struct sock *sk); |