[DCCP]: Fix elapsed time option as per section 13.2 of spec v11
The elapsed time can be two bytes or four bytes only. Signed-off-by: Ian McDonald <iam4@cs.waikato.ac.nz> Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
d179cd1292
commit
b1c9fe7b81
@@ -293,10 +293,7 @@ static void dccp_insert_option_ndp(struct sock *sk, struct sk_buff *skb)
|
|||||||
|
|
||||||
static inline int dccp_elapsed_time_len(const u32 elapsed_time)
|
static inline int dccp_elapsed_time_len(const u32 elapsed_time)
|
||||||
{
|
{
|
||||||
return elapsed_time == 0 ? 0 :
|
return elapsed_time == 0 ? 0 : elapsed_time <= 0xFFFF ? 2 : 4;
|
||||||
elapsed_time <= 0xFF ? 1 :
|
|
||||||
elapsed_time <= 0xFFFF ? 2 :
|
|
||||||
elapsed_time <= 0xFFFFFF ? 3 : 4;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void dccp_insert_option_elapsed_time(struct sock *sk,
|
void dccp_insert_option_elapsed_time(struct sock *sk,
|
||||||
|
Reference in New Issue
Block a user