[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [lwip-users] LWIP 1.2 issue.
From: |
Goldschmidt Simon |
Subject: |
RE: [lwip-users] LWIP 1.2 issue. |
Date: |
Tue, 17 Apr 2007 13:25:50 +0200 |
> > Also I am getting the following Messages: (I have some debugging
> > turned on).
> >
> > tpc_listen_input: ACK in LISTEN, sending reset.
> > tcp_rst: seqno 5984823 ackno 3514939349.
>
> This suggests that packets are being sent or delivered to the
> listening socket when there should obviously be none other
> than SYNs going there.
> If you can get a packet capture of one of these that might
> through some light on it.
Could it be that the same pcb was set to listening state through
tcp_listen() and at
the same time (the same pcb) was used to connect somewhere (using
tcp_connect())?
That way, it could be that the pcb is on both lists (tcp_active_pcbs &
tcp_listen_pcbs),
which could be the reason a LISTEN pcb gets data...?
If I'm right, this could be tested by inserting the following line into
tcp_listen():
LWIP_ASSERT("connected pcb can't change to listen state!", (pcb->state
== LISTEN) || (pcb->state == CLOSED));
And the following line into tcp_connect():
LWIP_ASSERT("connected pcb can't change from listen state to
connect!", (pcb->state != LISTEN));
Any comments from Kieran are welcome, as I can't tell if this is right
or not, just seems right to me ;-)
Simon