aat 113 netatalk/aarp.c #define AARPTAB_LOOK(aat,addr) { \ aat 115 netatalk/aarp.c aat = &aarptab[ AARPTAB_HASH(addr) * AARPTAB_BSIZ ]; \ aat 116 netatalk/aarp.c for ( n = 0; n < AARPTAB_BSIZ; n++, aat++ ) \ aat 117 netatalk/aarp.c if ( aat->aat_ataddr.s_net == (addr).s_net && \ aat 118 netatalk/aarp.c aat->aat_ataddr.s_node == (addr).s_node ) \ aat 121 netatalk/aarp.c aat = 0; \ aat 144 netatalk/aarp.c struct aarptab *aat; aat 148 netatalk/aarp.c aat = aarptab; aat 149 netatalk/aarp.c for ( i = 0; i < AARPTAB_SIZE; i++, aat++ ) { aat 150 netatalk/aarp.c if ( aat->aat_flags == 0 || ( aat->aat_flags & ATF_PERM )) aat 152 netatalk/aarp.c if ( ++aat->aat_timer < (( aat->aat_flags & ATF_COM ) ? aat 156 netatalk/aarp.c aarptfree( aat ); aat 275 netatalk/aarp.c struct aarptab *aat; aat 295 netatalk/aarp.c AARPTAB_LOOK( aat, destsat->sat_addr ); aat 296 netatalk/aarp.c if ( aat == 0 ) { /* No entry */ aat 297 netatalk/aarp.c aat = aarptnew( &destsat->sat_addr ); aat 298 netatalk/aarp.c if ( aat == 0 ) { /* XXX allocate more */ aat 301 netatalk/aarp.c aat->aat_hold = m; aat 307 netatalk/aarp.c aat->aat_timer = 0; aat 308 netatalk/aarp.c if ( aat->aat_flags & ATF_COM ) { /* entry is COMplete */ aat 309 netatalk/aarp.c bcopy( (caddr_t)aat->aat_enaddr, (caddr_t)desten, aat 310 netatalk/aarp.c sizeof( aat->aat_enaddr )); aat 315 netatalk/aarp.c if ( aat->aat_hold ) { aat 316 netatalk/aarp.c m_freem( aat->aat_hold ); aat 318 netatalk/aarp.c aat->aat_hold = m; aat 369 netatalk/aarp.c struct aarptab *aat; aat 467 netatalk/aarp.c AARPTAB_LOOK( aat, spa ); aat 468 netatalk/aarp.c if ( aat ) { aat 475 netatalk/aarp.c aarptfree( aat ); aat 480 netatalk/aarp.c bcopy(( caddr_t )ea->aarp_sha, ( caddr_t )aat->aat_enaddr, aat 482 netatalk/aarp.c aat->aat_flags |= ATF_COM; aat 483 netatalk/aarp.c if ( aat->aat_hold ) { aat 488 netatalk/aarp.c (*ac->ac_if.if_output)( &ac->ac_if, aat->aat_hold, aat 490 netatalk/aarp.c aat->aat_hold = 0; aat 494 netatalk/aarp.c if ( aat == 0 && tpa.s_net == ma.s_net && tpa.s_node == ma.s_node aat 496 netatalk/aarp.c if ( (aat = aarptnew( &spa ))) { aat 497 netatalk/aarp.c bcopy(( caddr_t )ea->aarp_sha, ( caddr_t )aat->aat_enaddr, aat 499 netatalk/aarp.c aat->aat_flags |= ATF_COM; aat 554 netatalk/aarp.c aarptfree( aat ) aat 555 netatalk/aarp.c struct aarptab *aat; aat 558 netatalk/aarp.c if ( aat->aat_hold ) aat 559 netatalk/aarp.c m_freem( aat->aat_hold ); aat 560 netatalk/aarp.c aat->aat_hold = 0; aat 561 netatalk/aarp.c aat->aat_timer = aat->aat_flags = 0; aat 562 netatalk/aarp.c aat->aat_ataddr.s_net = 0; aat 563 netatalk/aarp.c aat->aat_ataddr.s_node = 0; aat 572 netatalk/aarp.c struct aarptab *aat, *aato = NULL; aat 580 netatalk/aarp.c aat = &aarptab[ AARPTAB_HASH( *addr ) * AARPTAB_BSIZ ]; aat 581 netatalk/aarp.c for ( n = 0; n < AARPTAB_BSIZ; n++, aat++ ) { aat 582 netatalk/aarp.c if ( aat->aat_flags == 0 ) aat 584 netatalk/aarp.c if ( aat->aat_flags & ATF_PERM ) aat 586 netatalk/aarp.c if ((int) aat->aat_timer > oldest ) { aat 587 netatalk/aarp.c oldest = aat->aat_timer; aat 588 netatalk/aarp.c aato = aat; aat 593 netatalk/aarp.c aat = aato; aat 594 netatalk/aarp.c aarptfree( aat ); aat 596 netatalk/aarp.c aat->aat_ataddr = *addr; aat 597 netatalk/aarp.c aat->aat_flags = ATF_INUSE; aat 598 netatalk/aarp.c return( aat ); aat 698 netatalk/aarp.c struct aarptab *aat; aat 702 netatalk/aarp.c for ( i = 0, aat = aarptab; i < AARPTAB_SIZE; i++, aat++ ) { aat 703 netatalk/aarp.c if ( aat->aat_hold ) { aat 704 netatalk/aarp.c m_freem( aat->aat_hold );