diff options
Diffstat (limited to 'slirp/tcp_input.c')
-rw-r--r-- | slirp/tcp_input.c | 19 |
1 files changed, 7 insertions, 12 deletions
diff --git a/slirp/tcp_input.c b/slirp/tcp_input.c index 47cf0ad8c7..2808e3e4e4 100644 --- a/slirp/tcp_input.c +++ b/slirp/tcp_input.c @@ -597,7 +597,7 @@ findso: *ip=save_ip; icmp_error(m, ICMP_UNREACH,code, 0,strerror(errno)); } - tp = tcp_close(tp); + tcp_close(tp); m_free(m); } else { /* @@ -660,8 +660,9 @@ findso: goto dropwithreset; if (tiflags & TH_RST) { - if (tiflags & TH_ACK) - tp = tcp_drop(tp,0); /* XXX Check t_softerror! */ + if (tiflags & TH_ACK) { + tcp_drop(tp, 0); /* XXX Check t_softerror! */ + } goto drop; } @@ -821,13 +822,13 @@ trimthenstep6: case TCPS_FIN_WAIT_2: case TCPS_CLOSE_WAIT: tp->t_state = TCPS_CLOSED; - tp = tcp_close(tp); + tcp_close(tp); goto drop; case TCPS_CLOSING: case TCPS_LAST_ACK: case TCPS_TIME_WAIT: - tp = tcp_close(tp); + tcp_close(tp); goto drop; } @@ -1074,7 +1075,7 @@ trimthenstep6: */ case TCPS_LAST_ACK: if (ourfinisacked) { - tp = tcp_close(tp); + tcp_close(tp); goto drop; } break; @@ -1165,12 +1166,6 @@ dodata: if ((ti->ti_len || (tiflags&TH_FIN)) && TCPS_HAVERCVDFIN(tp->t_state) == 0) { TCP_REASS(tp, ti, m, so, tiflags); - /* - * Note the amount of data that peer has sent into - * our window, in order to estimate the sender's - * buffer size. - */ - len = so->so_rcv.sb_datalen - (tp->rcv_adv - tp->rcv_nxt); } else { m_free(m); tiflags &= ~TH_FIN; |