mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2025-12-25 06:23:53 +01:00
gnrc_tcp: allow unknown options
This commit is contained in:
parent
71680a6265
commit
fdda22c200
@ -51,7 +51,9 @@ int _option_parse(gnrc_tcp_tcb_t *tcb, tcp_hdr_t *hdr)
|
||||
continue;
|
||||
|
||||
case TCP_OPTION_KIND_MSS:
|
||||
if (opt_left < TCP_OPTION_LENGTH_MIN || option->length > opt_left || option->length != TCP_OPTION_LENGTH_MSS) {
|
||||
if (opt_left < TCP_OPTION_LENGTH_MIN || option->length > opt_left ||
|
||||
option->length != TCP_OPTION_LENGTH_MSS) {
|
||||
|
||||
DEBUG("gnrc_tcp_option.c : _option_parse() : invalid MSS Option length.\n");
|
||||
return -1;
|
||||
}
|
||||
@ -61,14 +63,15 @@ int _option_parse(gnrc_tcp_tcb_t *tcb, tcp_hdr_t *hdr)
|
||||
break;
|
||||
|
||||
default:
|
||||
DEBUG("gnrc_tcp_option.c : _option_parse() : Unknown option found.\
|
||||
KIND=%"PRIu8", LENGTH=%"PRIu8"\n", option->kind, option->length);
|
||||
return -1;
|
||||
if (opt_left >= TCP_OPTION_LENGTH_MIN) {
|
||||
DEBUG("gnrc_tcp_option.c : _option_parse() : Unsupported option found.\
|
||||
KIND=%"PRIu8", LENGTH=%"PRIu8"\n", option->kind, option->length);
|
||||
}
|
||||
}
|
||||
|
||||
if (opt_left < TCP_OPTION_LENGTH_MIN || option->length > opt_left) {
|
||||
DEBUG("gnrc_tcp_option.c : _option_parse() : invalid option length\n");
|
||||
return 0;
|
||||
DEBUG("gnrc_tcp_option.c : _option_parse() : Invalid option. Drop Packet.\n");
|
||||
return -1;
|
||||
}
|
||||
|
||||
opt_ptr += option->length;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user