Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 78455
b: refs/heads/master
c: 9cb2345
h: refs/heads/master
i:
  78453: 147c288
  78451: 234cb99
  78447: d60cf7e
v: v3
  • Loading branch information
Gerrit Renker authored and David S. Miller committed Jan 28, 2008
1 parent 5aaacba commit 58a3b0b
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 8 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: f5026fabda54e5ab5d469d8cfac5f46b4d321ce9
refs/heads/master: 9cb2345a8c49ea380437d02bb9fd9f291c0a005d
35 changes: 28 additions & 7 deletions trunk/net/dccp/ccid.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,14 +23,35 @@

struct tcp_info;

/**
* struct ccid_operations - Interface to Congestion-Control Infrastructure
*
* @ccid_id: numerical CCID ID (up to %CCID_MAX, cf. table 5 in RFC 4340, 10.)
* @ccid_name: alphabetical identifier string for @ccid_id
* @ccid_owner: module which implements/owns this CCID
* @ccid_hc_{r,t}x_slab: memory pool for the receiver/sender half-connection
* @ccid_hc_{r,t}x_obj_size: size of the receiver/sender half-connection socket
*
* @ccid_hc_{r,t}x_init: CCID-specific initialisation routine (before startup)
* @ccid_hc_{r,t}x_exit: CCID-specific cleanup routine (before destruction)
* @ccid_hc_rx_packet_recv: implements the HC-receiver side
* @ccid_hc_{r,t}x_parse_options: parsing routine for CCID/HC-specific options
* @ccid_hc_{r,t}x_insert_options: insert routine for CCID/HC-specific options
* @ccid_hc_tx_packet_recv: implements feedback processing for the HC-sender
* @ccid_hc_tx_send_packet: implements the sending part of the HC-sender
* @ccid_hc_tx_packet_sent: does accounting for packets in flight by HC-sender
* @ccid_hc_{r,t}x_get_info: INET_DIAG information for HC-receiver/sender
* @ccid_hc_{r,t}x_getsockopt: socket options specific to HC-receiver/sender
*/
struct ccid_operations {
unsigned char ccid_id;
const char *ccid_name;
struct module *ccid_owner;
struct kmem_cache *ccid_hc_rx_slab;
__u32 ccid_hc_rx_obj_size;
struct kmem_cache *ccid_hc_tx_slab;
__u32 ccid_hc_tx_obj_size;
unsigned char ccid_id;
const char *ccid_name;
struct module *ccid_owner;
struct kmem_cache *ccid_hc_rx_slab,
*ccid_hc_tx_slab;
__u32 ccid_hc_rx_obj_size,
ccid_hc_tx_obj_size;
/* Interface Routines */
int (*ccid_hc_rx_init)(struct ccid *ccid, struct sock *sk);
int (*ccid_hc_tx_init)(struct ccid *ccid, struct sock *sk);
void (*ccid_hc_rx_exit)(struct sock *sk);
Expand Down

0 comments on commit 58a3b0b

Please sign in to comment.