mirror of
https://git.savannah.nongnu.org/git/lwip.git
synced 2025-08-04 13:34:38 +08:00
Fix part 2 of bug #50042: ETHADDR16_COPY from netif->hwaddr
Eliminate ETHADDR32_COPY macro - it cannot be used in ETH_PAD_SIZE case. I could have kept it by defining it to ETHADDR16_COPY in case of ETH_PAD_SIZE, but I did not consider it worth another #ifdef mess.
This commit is contained in:
parent
6748aa0818
commit
92511f4711
@ -456,7 +456,7 @@ etharp_update_arp_entry(struct netif *netif, const ip4_addr_t *ipaddr, struct et
|
|||||||
|
|
||||||
LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("etharp_update_arp_entry: updating stable entry %"S16_F"\n", (s16_t)i));
|
LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("etharp_update_arp_entry: updating stable entry %"S16_F"\n", (s16_t)i));
|
||||||
/* update address */
|
/* update address */
|
||||||
ETHADDR32_COPY(&arp_table[i].ethaddr, ethaddr);
|
ETHADDR16_COPY(&arp_table[i].ethaddr, ethaddr);
|
||||||
/* reset time stamp */
|
/* reset time stamp */
|
||||||
arp_table[i].ctime = 0;
|
arp_table[i].ctime = 0;
|
||||||
/* this is where we will send out queued packets! */
|
/* this is where we will send out queued packets! */
|
||||||
|
@ -149,12 +149,6 @@ enum eth_type {
|
|||||||
#define LL_IP6_MULTICAST_ADDR_0 0x33
|
#define LL_IP6_MULTICAST_ADDR_0 0x33
|
||||||
#define LL_IP6_MULTICAST_ADDR_1 0x33
|
#define LL_IP6_MULTICAST_ADDR_1 0x33
|
||||||
|
|
||||||
/** MEMCPY-like macro to copy to/from struct eth_addr's that are local variables
|
|
||||||
* or known to be 32-bit aligned within the protocol header. */
|
|
||||||
#ifndef ETHADDR32_COPY
|
|
||||||
#define ETHADDR32_COPY(dst, src) SMEMCPY(dst, src, ETH_HWADDR_LEN)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/** MEMCPY-like macro to copy to/from struct eth_addr's that are no local
|
/** MEMCPY-like macro to copy to/from struct eth_addr's that are no local
|
||||||
* variables and known to be 16-bit aligned within the protocol header. */
|
* variables and known to be 16-bit aligned within the protocol header. */
|
||||||
#ifndef ETHADDR16_COPY
|
#ifndef ETHADDR16_COPY
|
||||||
|
@ -289,7 +289,7 @@ ethernet_output(struct netif* netif, struct pbuf* p,
|
|||||||
|
|
||||||
ethhdr = (struct eth_hdr*)p->payload;
|
ethhdr = (struct eth_hdr*)p->payload;
|
||||||
ethhdr->type = eth_type_be;
|
ethhdr->type = eth_type_be;
|
||||||
ETHADDR32_COPY(ðhdr->dest, dst);
|
ETHADDR16_COPY(ðhdr->dest, dst);
|
||||||
ETHADDR16_COPY(ðhdr->src, src);
|
ETHADDR16_COPY(ðhdr->src, src);
|
||||||
|
|
||||||
LWIP_ASSERT("netif->hwaddr_len must be 6 for ethernet_output!",
|
LWIP_ASSERT("netif->hwaddr_len must be 6 for ethernet_output!",
|
||||||
|
Loading…
x
Reference in New Issue
Block a user