Hi
I have downloaded a recent port (by Simon Kallweit) from
http://download.westlicht.ch/lwip-20090903.tar.gz. When running the
testprogram httpd_sequential.c it works - if lwip is configured for a
fixed address. But when I configure it to use DHCP, I run into a problem:
I then get no response from my board.

Using wireshark, I can see (see attachment 090921_1.out) that the there is
a hopeful beginning of the DHCP configuration process of my board. But
there is never a fitting answer from the ZyXEL P-661HW-D3 which implements
the DHCP-server on our LAN - at least as far as I see it, given my rather
limited experience with network issues.....

There is more: In the debug output of lwip I can see that my board
receives a packet from the ZyXEL which includes the IP address I am
expecting (see attachment packets.txt). But the package is dropped because
of a checksum error. Why? Short of memory? But even so, why can't I see
this packet on wiresharks output?

My system(s): Custom specific board based on at91sam7x256. Toolchain is
GNUARM

Has anyone out there a possible explanation what's going wrong here? Or a
hint in which direction to go for further debugging. Thanks for help.
--
   Robert
..cut..
dhcp_discover: SELECTING
dhcp_discover(): set request timeout 8000 msecs
sys_timeout: 0x0020824c msecs=500 h=0x00205748 arg=0x00000000
smf calling h=0x00205764(0x00000000)
tcpip: igmp_tmr()
sys_timeout: 0x00208210 msecs=100 h=0x00205748 arg=0x00000000
tcpip_thread: PACKET 0x0020797c
ethernet_input: dest:12:34:56:78:9a:bc, src:00:02:cf:cc:89:c1, type:%hx
etharp_ip_input: updating ETHARP table.
update_arp_entry()
update_arp_entry: 192.168.0.1 - 00:02:cf:cc:89:c1
update_arp_entry: updating stable entry 0
pbuf_header: old 0x00209938 new 0x00209946 (-14)
ip_input: iphdr->dest 0xa00a8c0 netif->ip_addr 0x0 (0x0, 0x0, 0xa00a8c0)
ip_input: iphdr->dest 0xa00a8c0 netif->ip_addr 0x100007f (0xa8c0, 0x7f, 
0xa000000)
ip_input: UDP packet to DHCP client port 68
ip_input: DHCP packet accepted.
ip_input: 
IP header:
+-------------------------------+
| 4 | 5 |  0x00 |       576     | (v, hl, tos, len)
+-------------------------------+
|    44119      |000|       0   | (id, flags, offset)
+-------------------------------+
|  255  |   17  |    0x8bf9     | (ttl, proto, chksum)
+-------------------------------+
|  192  |  168  |    0  |    1  | (src)
+-------------------------------+
|  192  |  168  |    0  |   10  | (dest)
+-------------------------------+
ip_input: p->len 170 p->tot_len 576
pbuf_header: old 0x00209946 new 0x0020995a (-20)
udp_input: received datagram of length 556
UDP header:
+-------------------------------+
|        67     |        68     | (src port, dest port)
+-------------------------------+
|       556     |     0xf9a0    | (len, chksum)
+-------------------------------+
udp (192.168.0.10, 68) <-- (192.168.0.1, 67)
udp_input: calculating checksum
inet_chksum_pseudo(): checksumming pbuf 0x00209928 (has next 0x00209814) 
inet_chksum_pseudo(): checksumming pbuf 0x00209814 (has next 0x00209700) 
inet_chksum_pseudo(): checksumming pbuf 0x00209700 (has next 0x002095ec) 
inet_chksum_pseudo(): checksumming pbuf 0x002095ec (has next 0x00000000) 
inet_chksum_pseudo(): pbuf chain lwip_chksum()=82b8
udp_input: UDP datagram discarded due to failing checksum
pbuf_free(0x00209928)
pbuf_free: deallocating 0x00209928
pbuf_free: deallocating 0x00209814
pbuf_free: deallocating 0x00209700
pbuf_free: deallocating 0x002095ec
smf calling h=0x00205764(0x00000000)
tcpip: igmp_tmr()
sys_timeout: 0x00208210 msecs=100 h=0x00205748 arg=0x00000000
smf calling h=0x00205764(0x00000000)
..cut...

Attachment: 090921_1.out
Description: Binary data

_______________________________________________
lwip-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/lwip-users

Reply via email to