if(required > buf->maxsize) {
if(offset >= buf->maxsize)
return 0;
- abort();
len = buf->maxsize - offset;
required = buf->maxsize;
}
*/
static void sack_consume(struct utcp_connection *c, size_t len) {
debug("sack_consume %lu\n", (unsigned long)len);
- if(len > c->rcvbuf.used)
- abort();
+ if(len > c->rcvbuf.used) {
+ debug("All SACK entries consumed");
+ c->sacks[0].len = 0;
+ return;
+ }
buffer_get(&c->rcvbuf, NULL, len);