Merge pull request #10515 from miri64/gnrc/fix/esp-now-code-dup

gnrc: remove ESP-Now related code-duplication
This commit is contained in:
Martine Lenders 2018-11-29 16:17:48 +01:00 committed by GitHub
commit 19f4748a72
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 8 additions and 32 deletions

View File

@ -835,8 +835,9 @@ int gnrc_netif_ipv6_get_iid(gnrc_netif_t *netif, eui64_t *eui64)
}
switch (netif->device_type) {
#ifdef MODULE_NETDEV_ETH
#if defined(MODULE_NETDEV_ETH) || defined(MODULE_ESP_NOW)
case NETDEV_TYPE_ETHERNET:
case NETDEV_TYPE_ESP_NOW:
assert(netif->l2addr_len == ETHERNET_ADDR_LEN);
eui64->uint8[0] = netif->l2addr[0] ^ 0x02;
eui64->uint8[1] = netif->l2addr[1];
@ -877,18 +878,6 @@ int gnrc_netif_ipv6_get_iid(gnrc_netif_t *netif, eui64_t *eui64)
case NETDEV_TYPE_NRFMIN:
_create_iid_from_short(netif, eui64);
return 0;
#endif
#if defined(MODULE_ESP_NOW)
case NETDEV_TYPE_ESP_NOW:
eui64->uint8[0] = netif->l2addr[0] ^ 0x02;
eui64->uint8[1] = netif->l2addr[1];
eui64->uint8[2] = netif->l2addr[2];
eui64->uint8[3] = 0xff;
eui64->uint8[4] = 0xfe;
eui64->uint8[5] = netif->l2addr[3];
eui64->uint8[6] = netif->l2addr[4];
eui64->uint8[7] = netif->l2addr[5];
return 0;
#endif
default:
(void)eui64;

View File

@ -40,8 +40,9 @@ static inline uint8_t _reverse_iid(const ipv6_addr_t *dst,
const gnrc_netif_t *netif, uint8_t *l2addr)
{
switch (netif->device_type) {
#ifdef MODULE_NETDEV_ETH
#if defined(MODULE_NETDEV_ETH) || defined(MODULE_ESP_NOW)
case NETDEV_TYPE_ETHERNET:
case NETDEV_TYPE_ESP_NOW:
l2addr[0] = dst->u8[8] ^ 0x02;
l2addr[1] = dst->u8[9];
l2addr[2] = dst->u8[10];
@ -49,7 +50,7 @@ static inline uint8_t _reverse_iid(const ipv6_addr_t *dst,
l2addr[4] = dst->u8[14];
l2addr[5] = dst->u8[15];
return ETHERNET_ADDR_LEN;
#endif /* MODULE_NETDEV_ETH */
#endif /* defined(MODULE_NETDEV_ETH) || defined(MODULE_ESP_NOW) */
#if defined(MODULE_NETDEV_IEEE802154) || defined(MODULE_XBEE)
case NETDEV_TYPE_IEEE802154:
/* assume address was based on EUI-64
@ -69,16 +70,6 @@ static inline uint8_t _reverse_iid(const ipv6_addr_t *dst,
l2addr[0] = dst->u8[15];
return sizeof(uint8_t);
#endif /* MODULE_CC110X */
#ifdef MODULE_ESP_NOW
case NETDEV_TYPE_ESP_NOW:
l2addr[0] = dst->u8[8] ^ 0x02;
l2addr[1] = dst->u8[9];
l2addr[2] = dst->u8[10];
l2addr[3] = dst->u8[13];
l2addr[4] = dst->u8[14];
l2addr[5] = dst->u8[15];
return ETHERNET_ADDR_LEN;
#endif /* MODULE_ESP_NOW */
default:
(void)dst;
(void)l2addr;

View File

@ -183,11 +183,12 @@ static inline unsigned _get_l2addr_len(gnrc_netif_t *netif,
(void)opt;
return sizeof(uint8_t);
#endif /* MODULE_CC110X */
#ifdef MODULE_NETDEV_ETH
#if defined(MODULE_NETDEV_ETH) || defined(MODULE_ESP_NOW)
case NETDEV_TYPE_ETHERNET:
case NETDEV_TYPE_ESP_NOW:
(void)opt;
return ETHERNET_ADDR_LEN;
#endif /* MODULE_NETDEV_ETH */
#endif /* defined(MODULE_NETDEV_ETH) || defined(MODULE_ESP_NOW) */
#ifdef MODULE_NRFMIN
case NETDEV_TYPE_NRFMIN:
(void)opt;
@ -204,11 +205,6 @@ static inline unsigned _get_l2addr_len(gnrc_netif_t *netif,
return 0U;
}
#endif /* defined(MODULE_NETDEV_IEEE802154) || defined(MODULE_XBEE) */
#ifdef MODULE_ESP_NOW
case NETDEV_TYPE_ESP_NOW:
(void)opt;
return ETHERNET_ADDR_LEN;
#endif /* MODULE_ESP_NOW */
default:
(void)opt;
return 0U;