diff options
Diffstat (limited to 'os')
| -rw-r--r-- | os/ip/tcp.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/os/ip/tcp.c b/os/ip/tcp.c index c6e0a54f..08eeaf82 100644 --- a/os/ip/tcp.c +++ b/os/ip/tcp.c @@ -1317,8 +1317,9 @@ tcphangup(Conv *s) tcb = (Tcpctl*)s->ptcl; if(waserror()) return commonerror(); - if(s->raddr != 0) { + if(ipcmp(s->raddr, IPnoaddr) != 0) { if(!waserror()){ + memset(&seg, 0, sizeof seg); seg.flags = RST | ACK; seg.ack = tcb->rcv.nxt; tcb->rcv.una = 0; |
