Lines Matching defs:sack
246 struct sackblk *sack = NULL;
255 * or the peer sends us a sack option with invalid length, don't
309 sack = &t_sack_block[i];
314 if (SEQ_GEQ(sack->right, tp->snd_fack))
315 tp->snd_fack = sack->right;
319 cur = sack_inserthole(tp, th->th_ack, sack->left, NULL);
324 tp->rcv_lastsack = sack->right;
325 continue; /* With next sack block */
330 if (SEQ_LEQ(sack->right, cur->start))
334 if (SEQ_GEQ(sack->left, cur->end)) {
340 if (SEQ_LEQ(sack->left, cur->start)) {
342 if (SEQ_GEQ(sack->right, cur->end)) {
349 cur->start = sack->right;
354 if (SEQ_GEQ(sack->right, cur->end)) {
356 cur->end = sack->left;
362 if (SEQ_LT(cur->start, sack->left) &&
363 SEQ_GT(cur->end, sack->right)) {
368 tmp = sack_inserthole(tp, sack->right, cur->end,
374 cur->end = sack->left;
382 if (SEQ_LT(tp->rcv_lastsack, sack->left)) {
386 cur = sack_inserthole(tp, tp->rcv_lastsack, sack->left,
392 if (SEQ_LT(tp->rcv_lastsack, sack->right)) {
393 tp->rcv_lastsack = sack->right;
430 struct sackhole *sack;
433 while ((sack = TAILQ_FIRST(&tp->snd_holes)) != NULL) {
434 sack_removehole(tp, sack);