diff options
Diffstat (limited to 'include/linux/dccp.h')
| -rw-r--r-- | include/linux/dccp.h | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/include/linux/dccp.h b/include/linux/dccp.h index 749f01ccd26e..d638e85dc501 100644 --- a/include/linux/dccp.h +++ b/include/linux/dccp.h | |||
| @@ -197,6 +197,21 @@ enum dccp_feature_numbers { | |||
| 197 | DCCPF_MAX_CCID_SPECIFIC = 255, | 197 | DCCPF_MAX_CCID_SPECIFIC = 255, |
| 198 | }; | 198 | }; |
| 199 | 199 | ||
| 200 | /* DCCP socket control message types for cmsg */ | ||
| 201 | enum dccp_cmsg_type { | ||
| 202 | DCCP_SCM_PRIORITY = 1, | ||
| 203 | DCCP_SCM_QPOLICY_MAX = 0xFFFF, | ||
| 204 | /* ^-- Up to here reserved exclusively for qpolicy parameters */ | ||
| 205 | DCCP_SCM_MAX | ||
| 206 | }; | ||
| 207 | |||
| 208 | /* DCCP priorities for outgoing/queued packets */ | ||
| 209 | enum dccp_packet_dequeueing_policy { | ||
| 210 | DCCPQ_POLICY_SIMPLE, | ||
| 211 | DCCPQ_POLICY_PRIO, | ||
| 212 | DCCPQ_POLICY_MAX | ||
| 213 | }; | ||
| 214 | |||
| 200 | /* DCCP socket options */ | 215 | /* DCCP socket options */ |
| 201 | #define DCCP_SOCKOPT_PACKET_SIZE 1 /* XXX deprecated, without effect */ | 216 | #define DCCP_SOCKOPT_PACKET_SIZE 1 /* XXX deprecated, without effect */ |
| 202 | #define DCCP_SOCKOPT_SERVICE 2 | 217 | #define DCCP_SOCKOPT_SERVICE 2 |
| @@ -210,6 +225,8 @@ enum dccp_feature_numbers { | |||
| 210 | #define DCCP_SOCKOPT_CCID 13 | 225 | #define DCCP_SOCKOPT_CCID 13 |
| 211 | #define DCCP_SOCKOPT_TX_CCID 14 | 226 | #define DCCP_SOCKOPT_TX_CCID 14 |
| 212 | #define DCCP_SOCKOPT_RX_CCID 15 | 227 | #define DCCP_SOCKOPT_RX_CCID 15 |
| 228 | #define DCCP_SOCKOPT_QPOLICY_ID 16 | ||
| 229 | #define DCCP_SOCKOPT_QPOLICY_TXQLEN 17 | ||
| 213 | #define DCCP_SOCKOPT_CCID_RX_INFO 128 | 230 | #define DCCP_SOCKOPT_CCID_RX_INFO 128 |
| 214 | #define DCCP_SOCKOPT_CCID_TX_INFO 192 | 231 | #define DCCP_SOCKOPT_CCID_TX_INFO 192 |
| 215 | 232 | ||
| @@ -262,8 +279,6 @@ enum dccp_state { | |||
| 262 | DCCP_MAX_STATES | 279 | DCCP_MAX_STATES |
| 263 | }; | 280 | }; |
| 264 | 281 | ||
| 265 | #define DCCP_STATE_MASK 0x1f | ||
| 266 | |||
| 267 | enum { | 282 | enum { |
| 268 | DCCPF_OPEN = TCPF_ESTABLISHED, | 283 | DCCPF_OPEN = TCPF_ESTABLISHED, |
| 269 | DCCPF_REQUESTING = TCPF_SYN_SENT, | 284 | DCCPF_REQUESTING = TCPF_SYN_SENT, |
| @@ -458,10 +473,13 @@ struct dccp_ackvec; | |||
| 458 | * @dccps_hc_rx_ccid - CCID used for the receiver (or receiving half-connection) | 473 | * @dccps_hc_rx_ccid - CCID used for the receiver (or receiving half-connection) |
| 459 | * @dccps_hc_tx_ccid - CCID used for the sender (or sending half-connection) | 474 | * @dccps_hc_tx_ccid - CCID used for the sender (or sending half-connection) |
| 460 | * @dccps_options_received - parsed set of retrieved options | 475 | * @dccps_options_received - parsed set of retrieved options |
| 476 | * @dccps_qpolicy - TX dequeueing policy, one of %dccp_packet_dequeueing_policy | ||
| 477 | * @dccps_tx_qlen - maximum length of the TX queue | ||
| 461 | * @dccps_role - role of this sock, one of %dccp_role | 478 | * @dccps_role - role of this sock, one of %dccp_role |
| 462 | * @dccps_hc_rx_insert_options - receiver wants to add options when acking | 479 | * @dccps_hc_rx_insert_options - receiver wants to add options when acking |
| 463 | * @dccps_hc_tx_insert_options - sender wants to add options when sending | 480 | * @dccps_hc_tx_insert_options - sender wants to add options when sending |
| 464 | * @dccps_server_timewait - server holds timewait state on close (RFC 4340, 8.3) | 481 | * @dccps_server_timewait - server holds timewait state on close (RFC 4340, 8.3) |
| 482 | * @dccps_sync_scheduled - flag which signals "send out-of-band message soon" | ||
| 465 | * @dccps_xmitlet - tasklet scheduled by the TX CCID to dequeue data packets | 483 | * @dccps_xmitlet - tasklet scheduled by the TX CCID to dequeue data packets |
| 466 | * @dccps_xmit_timer - used by the TX CCID to delay sending (rate-based pacing) | 484 | * @dccps_xmit_timer - used by the TX CCID to delay sending (rate-based pacing) |
| 467 | * @dccps_syn_rtt - RTT sample from Request/Response exchange (in usecs) | 485 | * @dccps_syn_rtt - RTT sample from Request/Response exchange (in usecs) |
| @@ -499,10 +517,13 @@ struct dccp_sock { | |||
| 499 | struct ccid *dccps_hc_rx_ccid; | 517 | struct ccid *dccps_hc_rx_ccid; |
| 500 | struct ccid *dccps_hc_tx_ccid; | 518 | struct ccid *dccps_hc_tx_ccid; |
| 501 | struct dccp_options_received dccps_options_received; | 519 | struct dccp_options_received dccps_options_received; |
| 520 | __u8 dccps_qpolicy; | ||
| 521 | __u32 dccps_tx_qlen; | ||
| 502 | enum dccp_role dccps_role:2; | 522 | enum dccp_role dccps_role:2; |
| 503 | __u8 dccps_hc_rx_insert_options:1; | 523 | __u8 dccps_hc_rx_insert_options:1; |
| 504 | __u8 dccps_hc_tx_insert_options:1; | 524 | __u8 dccps_hc_tx_insert_options:1; |
| 505 | __u8 dccps_server_timewait:1; | 525 | __u8 dccps_server_timewait:1; |
| 526 | __u8 dccps_sync_scheduled:1; | ||
| 506 | struct tasklet_struct dccps_xmitlet; | 527 | struct tasklet_struct dccps_xmitlet; |
| 507 | struct timer_list dccps_xmit_timer; | 528 | struct timer_list dccps_xmit_timer; |
| 508 | }; | 529 | }; |
