Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/net/inetsrv/ndp.c

    rb4edc96 r1433ecda  
    11/*
    2  * Copyright (c) 2021 Jiri Svoboda
    32 * Copyright (c) 2013 Antonin Steinhauser
    43 * All rights reserved.
     
    3736
    3837#include <errno.h>
    39 #include <inet/eth_addr.h>
    40 #include <io/log.h>
    4138#include <mem.h>
    4239#include <stdlib.h>
     40#include <io/log.h>
    4341#include "ntrans.h"
    4442#include "addrobj.h"
     
    7169        ndp_pdu_encode(packet, &dgram);
    7270
    73         inet_link_send_dgram6(link, &packet->target_hw_addr, &dgram,
     71        inet_link_send_dgram6(link, packet->target_hw_addr, &dgram,
    7472            IP_PROTO_ICMPV6, INET6_HOP_LIMIT_MAX, 0);
    7573
     
    110108                if (laddr != NULL) {
    111109                        rc = ntrans_add(packet.sender_proto_addr,
    112                             &packet.sender_hw_addr);
     110                            packet.sender_hw_addr);
    113111                        if (rc != EOK)
    114112                                return rc;
     
    117115
    118116                        reply.opcode = ICMPV6_NEIGHBOUR_ADVERTISEMENT;
    119                         reply.sender_hw_addr = laddr->ilink->mac;
     117                        addr48(laddr->ilink->mac, reply.sender_hw_addr);
    120118                        addr128(packet.target_proto_addr, reply.sender_proto_addr);
    121                         reply.target_hw_addr = packet.sender_hw_addr;
     119                        addr48(packet.sender_hw_addr, reply.target_hw_addr);
    122120                        addr128(packet.sender_proto_addr, reply.target_proto_addr);
    123121
     
    130128                if (laddr != NULL)
    131129                        return ntrans_add(packet.sender_proto_addr,
    132                             &packet.sender_hw_addr);
     130                            packet.sender_hw_addr);
    133131
    134132                break;
     
    153151 *
    154152 */
    155 errno_t ndp_translate(addr128_t src_addr, addr128_t ip_addr, eth_addr_t *mac_addr,
     153errno_t ndp_translate(addr128_t src_addr, addr128_t ip_addr, addr48_t mac_addr,
    156154    inet_link_t *ilink)
    157155{
     
    169167
    170168        packet.opcode = ICMPV6_NEIGHBOUR_SOLICITATION;
    171         packet.sender_hw_addr = ilink->mac;
     169        addr48(ilink->mac, packet.sender_hw_addr);
    172170        addr128(src_addr, packet.sender_proto_addr);
    173171        addr128(ip_addr, packet.solicited_ip);
    174         eth_addr_solicited_node(ip_addr, &packet.target_hw_addr);
     172        addr48_solicited_node(ip_addr, packet.target_hw_addr);
    175173        ndp_solicited_node_ip(ip_addr, packet.target_proto_addr);
    176174
Note: See TracChangeset for help on using the changeset viewer.