|
Lines 239-244
Link Here
|
| 239 |
warn("sendto"); |
239 |
warn("sendto"); |
| 240 |
goto abort; |
240 |
goto abort; |
| 241 |
} |
241 |
} |
|
|
242 |
no_send_ack: |
| 242 |
write_behind(file, convert); |
243 |
write_behind(file, convert); |
| 243 |
for ( ; ; ) { |
244 |
for ( ; ; ) { |
| 244 |
alarm(rexmtval); |
245 |
alarm(rexmtval); |
|
Lines 277-283
Link Here
|
| 277 |
printf("discarded %d packets\n", j); |
278 |
printf("discarded %d packets\n", j); |
| 278 |
} |
279 |
} |
| 279 |
if (dp->th_block == (block-1)) { |
280 |
if (dp->th_block == (block-1)) { |
| 280 |
goto send_ack; /* resend ack */ |
281 |
if (j) { |
|
|
282 |
goto send_ack; /* resend ack */ |
| 283 |
} else { |
| 284 |
/* We didn't discard any |
| 285 |
* packets; we got a duplicate |
| 286 |
*/ |
| 287 |
goto no_send_ack; |
| 288 |
} |
| 281 |
} |
289 |
} |
| 282 |
} |
290 |
} |
| 283 |
} |
291 |
} |