Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/net/ethip/ethip.c

    rfafb8e5 rb4edc96  
    11/*
    2  * Copyright (c) 2012 Jiri Svoboda
     2 * Copyright (c) 2021 Jiri Svoboda
    33 * All rights reserved.
    44 *
     
    3939#include <async.h>
    4040#include <errno.h>
     41#include <inet/eth_addr.h>
    4142#include <inet/iplink_srv.h>
    4243#include <io/log.h>
     
    5859static errno_t ethip_send6(iplink_srv_t *srv, iplink_sdu6_t *sdu);
    5960static errno_t ethip_get_mtu(iplink_srv_t *srv, size_t *mtu);
    60 static errno_t ethip_get_mac48(iplink_srv_t *srv, addr48_t *mac);
    61 static errno_t ethip_set_mac48(iplink_srv_t *srv, addr48_t *mac);
     61static errno_t ethip_get_mac48(iplink_srv_t *srv, eth_addr_t *mac);
     62static errno_t ethip_set_mac48(iplink_srv_t *srv, eth_addr_t *mac);
    6263static errno_t ethip_addr_add(iplink_srv_t *srv, inet_addr_t *addr);
    6364static errno_t ethip_addr_remove(iplink_srv_t *srv, inet_addr_t *addr);
     
    177178        eth_frame_t frame;
    178179
    179         errno_t rc = arp_translate(nic, sdu->src, sdu->dest, frame.dest);
     180        errno_t rc = arp_translate(nic, sdu->src, sdu->dest, &frame.dest);
    180181        if (rc != EOK) {
    181182                log_msg(LOG_DEFAULT, LVL_WARN, "Failed to look up IPv4 address 0x%"
     
    184185        }
    185186
    186         addr48(nic->mac_addr, frame.src);
     187        frame.src = nic->mac_addr;
    187188        frame.etype_len = ETYPE_IP;
    188189        frame.data = sdu->data;
     
    208209        eth_frame_t frame;
    209210
    210         addr48(sdu->dest, frame.dest);
    211         addr48(nic->mac_addr, frame.src);
     211        frame.dest = sdu->dest;
     212        frame.src = nic->mac_addr;
    212213        frame.etype_len = ETYPE_IPV6;
    213214        frame.data = sdu->data;
     
    276277}
    277278
    278 static errno_t ethip_get_mac48(iplink_srv_t *srv, addr48_t *mac)
     279static errno_t ethip_get_mac48(iplink_srv_t *srv, eth_addr_t *mac)
    279280{
    280281        log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_get_mac48()");
    281282
    282283        ethip_nic_t *nic = (ethip_nic_t *) srv->arg;
    283         addr48(nic->mac_addr, *mac);
    284 
    285         return EOK;
    286 }
    287 
    288 static errno_t ethip_set_mac48(iplink_srv_t *srv, addr48_t *mac)
     284        *mac = nic->mac_addr;
     285
     286        return EOK;
     287}
     288
     289static errno_t ethip_set_mac48(iplink_srv_t *srv, eth_addr_t *mac)
    289290{
    290291        log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_set_mac48()");
    291292
    292293        ethip_nic_t *nic = (ethip_nic_t *) srv->arg;
    293         addr48(*mac, nic->mac_addr);
     294        nic->mac_addr = *mac;
    294295
    295296        return EOK;
Note: See TracChangeset for help on using the changeset viewer.