diff options
Diffstat (limited to 'net')
| -rw-r--r-- | net/dccp/ackvec.c | 2 | ||||
| -rw-r--r-- | net/dccp/ccids/ccid3.c | 4 | ||||
| -rw-r--r-- | net/dccp/dccp.h | 12 | ||||
| -rw-r--r-- | net/dccp/options.c | 14 |
4 files changed, 13 insertions, 19 deletions
diff --git a/net/dccp/ackvec.c b/net/dccp/ackvec.c index 01e4d39fa232..2abddee48304 100644 --- a/net/dccp/ackvec.c +++ b/net/dccp/ackvec.c | |||
| @@ -82,7 +82,7 @@ int dccp_insert_option_ackvec(struct sock *sk, struct sk_buff *skb) | |||
| 82 | elapsed_time = delta / 10; | 82 | elapsed_time = delta / 10; |
| 83 | 83 | ||
| 84 | if (elapsed_time != 0 && | 84 | if (elapsed_time != 0 && |
| 85 | dccp_insert_option_elapsed_time(sk, skb, elapsed_time)) | 85 | dccp_insert_option_elapsed_time(skb, elapsed_time)) |
| 86 | return -1; | 86 | return -1; |
| 87 | 87 | ||
| 88 | avr = dccp_ackvec_record_new(); | 88 | avr = dccp_ackvec_record_new(); |
diff --git a/net/dccp/ccids/ccid3.c b/net/dccp/ccids/ccid3.c index d3235899c7e3..95f752986497 100644 --- a/net/dccp/ccids/ccid3.c +++ b/net/dccp/ccids/ccid3.c | |||
| @@ -715,9 +715,9 @@ static int ccid3_hc_rx_insert_options(struct sock *sk, struct sk_buff *skb) | |||
| 715 | x_recv = htonl(hc->rx_x_recv); | 715 | x_recv = htonl(hc->rx_x_recv); |
| 716 | pinv = htonl(hc->rx_pinv); | 716 | pinv = htonl(hc->rx_pinv); |
| 717 | 717 | ||
| 718 | if (dccp_insert_option(sk, skb, TFRC_OPT_LOSS_EVENT_RATE, | 718 | if (dccp_insert_option(skb, TFRC_OPT_LOSS_EVENT_RATE, |
| 719 | &pinv, sizeof(pinv)) || | 719 | &pinv, sizeof(pinv)) || |
| 720 | dccp_insert_option(sk, skb, TFRC_OPT_RECEIVE_RATE, | 720 | dccp_insert_option(skb, TFRC_OPT_RECEIVE_RATE, |
| 721 | &x_recv, sizeof(x_recv))) | 721 | &x_recv, sizeof(x_recv))) |
| 722 | return -1; | 722 | return -1; |
| 723 | 723 | ||
diff --git a/net/dccp/dccp.h b/net/dccp/dccp.h index a10a61a1ded2..3ccef1b70fee 100644 --- a/net/dccp/dccp.h +++ b/net/dccp/dccp.h | |||
| @@ -446,16 +446,12 @@ extern void dccp_feat_list_purge(struct list_head *fn_list); | |||
| 446 | 446 | ||
| 447 | extern int dccp_insert_options(struct sock *sk, struct sk_buff *skb); | 447 | extern int dccp_insert_options(struct sock *sk, struct sk_buff *skb); |
| 448 | extern int dccp_insert_options_rsk(struct dccp_request_sock*, struct sk_buff*); | 448 | extern int dccp_insert_options_rsk(struct dccp_request_sock*, struct sk_buff*); |
| 449 | extern int dccp_insert_option_elapsed_time(struct sock *sk, | 449 | extern int dccp_insert_option_elapsed_time(struct sk_buff *skb, u32 elapsed); |
| 450 | struct sk_buff *skb, | ||
| 451 | u32 elapsed_time); | ||
| 452 | extern u32 dccp_timestamp(void); | 450 | extern u32 dccp_timestamp(void); |
| 453 | extern void dccp_timestamping_init(void); | 451 | extern void dccp_timestamping_init(void); |
| 454 | extern int dccp_insert_option_timestamp(struct sock *sk, | 452 | extern int dccp_insert_option_timestamp(struct sk_buff *skb); |
| 455 | struct sk_buff *skb); | 453 | extern int dccp_insert_option(struct sk_buff *skb, unsigned char option, |
| 456 | extern int dccp_insert_option(struct sock *sk, struct sk_buff *skb, | 454 | const void *value, unsigned char len); |
| 457 | unsigned char option, | ||
| 458 | const void *value, unsigned char len); | ||
| 459 | 455 | ||
| 460 | #ifdef CONFIG_SYSCTL | 456 | #ifdef CONFIG_SYSCTL |
| 461 | extern int dccp_sysctl_init(void); | 457 | extern int dccp_sysctl_init(void); |
diff --git a/net/dccp/options.c b/net/dccp/options.c index 07395f861d35..4973badb5d55 100644 --- a/net/dccp/options.c +++ b/net/dccp/options.c | |||
| @@ -299,9 +299,8 @@ static inline u8 dccp_ndp_len(const u64 ndp) | |||
| 299 | return likely(ndp <= USHRT_MAX) ? 2 : (ndp <= UINT_MAX ? 4 : 6); | 299 | return likely(ndp <= USHRT_MAX) ? 2 : (ndp <= UINT_MAX ? 4 : 6); |
| 300 | } | 300 | } |
| 301 | 301 | ||
| 302 | int dccp_insert_option(struct sock *sk, struct sk_buff *skb, | 302 | int dccp_insert_option(struct sk_buff *skb, const unsigned char option, |
| 303 | const unsigned char option, | 303 | const void *value, const unsigned char len) |
| 304 | const void *value, const unsigned char len) | ||
| 305 | { | 304 | { |
| 306 | unsigned char *to; | 305 | unsigned char *to; |
| 307 | 306 | ||
| @@ -354,8 +353,7 @@ static inline int dccp_elapsed_time_len(const u32 elapsed_time) | |||
| 354 | return elapsed_time == 0 ? 0 : elapsed_time <= 0xFFFF ? 2 : 4; | 353 | return elapsed_time == 0 ? 0 : elapsed_time <= 0xFFFF ? 2 : 4; |
| 355 | } | 354 | } |
| 356 | 355 | ||
| 357 | int dccp_insert_option_elapsed_time(struct sock *sk, struct sk_buff *skb, | 356 | int dccp_insert_option_elapsed_time(struct sk_buff *skb, u32 elapsed_time) |
| 358 | u32 elapsed_time) | ||
| 359 | { | 357 | { |
| 360 | const int elapsed_time_len = dccp_elapsed_time_len(elapsed_time); | 358 | const int elapsed_time_len = dccp_elapsed_time_len(elapsed_time); |
| 361 | const int len = 2 + elapsed_time_len; | 359 | const int len = 2 + elapsed_time_len; |
| @@ -386,13 +384,13 @@ int dccp_insert_option_elapsed_time(struct sock *sk, struct sk_buff *skb, | |||
| 386 | 384 | ||
| 387 | EXPORT_SYMBOL_GPL(dccp_insert_option_elapsed_time); | 385 | EXPORT_SYMBOL_GPL(dccp_insert_option_elapsed_time); |
| 388 | 386 | ||
| 389 | int dccp_insert_option_timestamp(struct sock *sk, struct sk_buff *skb) | 387 | int dccp_insert_option_timestamp(struct sk_buff *skb) |
| 390 | { | 388 | { |
| 391 | __be32 now = htonl(dccp_timestamp()); | 389 | __be32 now = htonl(dccp_timestamp()); |
| 392 | /* yes this will overflow but that is the point as we want a | 390 | /* yes this will overflow but that is the point as we want a |
| 393 | * 10 usec 32 bit timer which mean it wraps every 11.9 hours */ | 391 | * 10 usec 32 bit timer which mean it wraps every 11.9 hours */ |
| 394 | 392 | ||
| 395 | return dccp_insert_option(sk, skb, DCCPO_TIMESTAMP, &now, sizeof(now)); | 393 | return dccp_insert_option(skb, DCCPO_TIMESTAMP, &now, sizeof(now)); |
| 396 | } | 394 | } |
| 397 | 395 | ||
| 398 | EXPORT_SYMBOL_GPL(dccp_insert_option_timestamp); | 396 | EXPORT_SYMBOL_GPL(dccp_insert_option_timestamp); |
| @@ -533,7 +531,7 @@ int dccp_insert_options(struct sock *sk, struct sk_buff *skb) | |||
| 533 | * Obtain RTT sample from Request/Response exchange. | 531 | * Obtain RTT sample from Request/Response exchange. |
| 534 | * This is currently used in CCID 3 initialisation. | 532 | * This is currently used in CCID 3 initialisation. |
| 535 | */ | 533 | */ |
| 536 | if (dccp_insert_option_timestamp(sk, skb)) | 534 | if (dccp_insert_option_timestamp(skb)) |
| 537 | return -1; | 535 | return -1; |
| 538 | 536 | ||
| 539 | } else if (dp->dccps_hc_rx_ackvec != NULL && | 537 | } else if (dp->dccps_hc_rx_ackvec != NULL && |
