Hi Leon,
Thanks for the quick response. I updated to 0.6.2 and had another go.
I'm getting the same response. A second tcp data packet with a random
number of the character sent in the first packet.
pc -----> 'x' ------> ps2 single character sent to ps2.
pc <------ 'x' -------- ps2 single character returned.
pc ------- ACK ----> ps2 packet acknowledged
pc <----- 'xxxx' ------ ps2 random number of characters
returned in new packet.
pc -------- ACK -----> ps2 packet acknowledged
Have you got any ideas of the most likely place this could happen?
The implementation is mult-threaded and uses the socket api. So I'm
assumming that this is in the socket send api, or tcp send code.
There must be a portion of timing in there because the 'xxxx' returned
in the example above can be between one additional 'x' character and
about seven 'xxxxxxx'. Its always exactly the same character sent.
Packet one is sent correctly with one packet, packet two is sent with
multiple characters.
I'm sure this is something stupid. I'm going to go check my
lwipopts.h file and make sure that I'm not missing anything. Any
ideas would be appreciated though.
David.
address@hidden wrote:
Hello David,
please check out "STABLE" branch from CVS
These are two major bug fixes since 0.6.1:
HISTORY
(current)
++ Bugfixes:
* TCP has been fixed to deal with the new use of the pbuf->ref
counter.
* DHCP dhcp_inform() crash bug fixed.
(0.6.1)
Regards,
Leon Woestenberg
*David Ryan <address@hidden>*
Sent by: address@hidden
17-04-2003 03:10
Please respond to Mailing list for lwIP users
To: lwip <address@hidden>
cc: Subject: [lwip-users] Upgrading to
0.6.1
Hi all,
I've finally found time to do some testing of 0.6.1 since upgrading from
0.6.0-rc1 with my ps2 implementation. I first discovered that I needed
to set netif->hwaddr_len or ARPs would return with mostly junk. After
resolving that issue I came up against a very strange issue...
My basic test is to connect to an echo server and then telnet to it from
windows, and type in a few characters. What I found was that a single
character would result in a random number of characters in return. I
first checked my echo server to ensure that it was receiving one
character and sending one character, which it did. After that I started
checking with Ethereal. I found the following
pc -----> 'x' ------> ps2 single character sent to ps2.
pc <------ 'x' -------- ps2 single character returned.
pc ------- ACK ----> ps2 packet acknowledged
pc <----- 'xxxx' ------ ps2 random number of characters
returned in new packet.
pc -------- ACK -----> ps2 packet acknowledged
This was consistant with every packet sent. My first assumption is that
this is probably related to how the driver should interface with pbufs.
I haven't yet changed the driver from 0.6.0 code. Is this likely, or
should I be looking deeper into lwip?
If you think it is the driver, can someone suggest which driver I should
base my code?
What other changes from 0.6.0 to 0.6.1 should I look out for?
Thanks,
David.
_______________________________________________
lwip-users mailing list
address@hidden
http://mail.nongnu.org/mailman/listinfo/lwip-users
------------------------------------------------------------------------
_______________________________________________
lwip-users mailing list
address@hidden
http://mail.nongnu.org/mailman/listinfo/lwip-users
_______________________________________________
lwip-users mailing list
address@hidden
http://mail.nongnu.org/mailman/listinfo/lwip-users