Ignore:
File:
1 edited

Legend:

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

    rd8b47eca r69a93df7  
    4949static FIBRIL_CONDVAR_INITIALIZE(atrans_cv);
    5050
    51 static ethip_atrans_t *atrans_find(addr32_t ip_addr)
     51static ethip_atrans_t *atrans_find(iplink_srv_addr_t *ip_addr)
    5252{
    5353        list_foreach(atrans_list, link) {
     
    5555                    ethip_atrans_t, atrans_list);
    5656
    57                 if (atrans->ip_addr == ip_addr)
     57                if (atrans->ip_addr.ipv4 == ip_addr->ipv4)
    5858                        return atrans;
    5959        }
     
    6262}
    6363
    64 int atrans_add(addr32_t ip_addr, addr48_t mac_addr)
     64int atrans_add(iplink_srv_addr_t *ip_addr, mac48_addr_t *mac_addr)
    6565{
    6666        ethip_atrans_t *atrans;
     
    7171                return ENOMEM;
    7272
    73         atrans->ip_addr = ip_addr;
    74         addr48(mac_addr, atrans->mac_addr);
     73        atrans->ip_addr = *ip_addr;
     74        atrans->mac_addr = *mac_addr;
    7575
    7676        fibril_mutex_lock(&atrans_list_lock);
     
    8888}
    8989
    90 int atrans_remove(addr32_t ip_addr)
     90int atrans_remove(iplink_srv_addr_t *ip_addr)
    9191{
    9292        ethip_atrans_t *atrans;
     
    106106}
    107107
    108 int atrans_lookup(addr32_t ip_addr, addr48_t mac_addr)
     108int atrans_lookup(iplink_srv_addr_t *ip_addr, mac48_addr_t *mac_addr)
    109109{
     110        ethip_atrans_t *atrans;
     111
    110112        fibril_mutex_lock(&atrans_list_lock);
    111         ethip_atrans_t *atrans = atrans_find(ip_addr);
     113        atrans = atrans_find(ip_addr);
    112114        if (atrans == NULL) {
    113115                fibril_mutex_unlock(&atrans_list_lock);
    114116                return ENOENT;
    115117        }
    116        
     118
    117119        fibril_mutex_unlock(&atrans_list_lock);
    118         addr48(atrans->mac_addr, mac_addr);
     120        *mac_addr = atrans->mac_addr;
    119121        return EOK;
    120122}
     
    122124int atrans_wait_timeout(suseconds_t timeout)
    123125{
     126        int rc;
     127
    124128        fibril_mutex_lock(&atrans_list_lock);
    125         int rc = fibril_condvar_wait_timeout(&atrans_cv, &atrans_list_lock,
     129        rc = fibril_condvar_wait_timeout(&atrans_cv, &atrans_list_lock,
    126130            timeout);
    127131        fibril_mutex_unlock(&atrans_list_lock);
    128        
     132
    129133        return rc;
    130134}
Note: See TracChangeset for help on using the changeset viewer.