[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lwip-devel] Bug in Checksum implementation and ARP fix
From: |
Paul Riley |
Subject: |
[lwip-devel] Bug in Checksum implementation and ARP fix |
Date: |
Thu, 25 Sep 2003 14:28:36 +0100 |
There is a bug in the implementation of lwip_chksum.
Basically it assumes that you can perform 16 bit access on
non 16 bit aligned address
The offending line is
acc += *(u16_t *)dataptr;
This is not valid on all processor architectures.
Before I fix this has anyone else already done this?
In addition I have already fixed a bug in the function
update_arp_entry if ARPing for an address and hence a packet
was queued for later transmission. On receipt of the reply
the frame is sent, but without a correct source address. This
is easily fixed with the change shown below
for (k = 0; k < netif->hwaddr_len; ++k) {
ethhdr->dest.addr[k] = ethaddr->addr[k];
>>>>> ethhdr->src.addr[k] = netif->hwaddr[k];
}
Lastly does anyone know how to get CVS write access. I would
like to add in a new architecture port?
Thanks,
Paul
P.S. I can send patches in diff -u format if required
- [lwip-devel] Bug in Checksum implementation and ARP fix,
Paul Riley <=