Lines Matching defs:entp
603 ipmp_arpent_t *entp;
613 entp = ipmp_illgrp_lookup_arpent(illg, &ipif->ipif_lcl_addr);
614 if (entp != NULL)
615 ipmp_illgrp_destroy_arpent(illg, entp);
841 ipmp_arpent_t *entp, *oentp;
845 if ((entp = kmem_alloc(sizeof (ipmp_arpent_t) + lladdr_len,
852 if ((oentp = ipmp_illgrp_lookup_arpent(illg, &entp->ia_ipaddr)) != NULL)
858 entp->ia_ipaddr = ipaddr;
859 entp->ia_flags = flags;
860 entp->ia_lladdr_len = lladdr_len;
861 entp->ia_lladdr = (uchar_t *)&entp[1];
862 bcopy(lladdr, entp->ia_lladdr, lladdr_len);
863 entp->ia_proxyarp = proxyarp;
864 entp->ia_notified = B_TRUE;
865 list_insert_head(&illg->ig_arpent, entp);
866 return (entp);
870 * Remove IPMP ARP entry `entp' from the set tracked on `illg' and destroy it.
873 ipmp_illgrp_destroy_arpent(ipmp_illgrp_t *illg, ipmp_arpent_t *entp)
877 list_remove(&illg->ig_arpent, entp);
878 kmem_free(entp, sizeof (ipmp_arpent_t) + entp->ia_lladdr_len);
882 * Mark that ARP has been notified about the IP address on `entp'; `illg' is
887 ipmp_illgrp_mark_arpent(ipmp_illgrp_t *illg, ipmp_arpent_t *entp)
889 entp->ia_notified = B_TRUE;
899 ipmp_arpent_t *entp = list_head(&illg->ig_arpent);
904 return (entp);
906 for (; entp != NULL; entp = list_next(&illg->ig_arpent, entp))
907 if (entp->ia_ipaddr == *addrp)
909 return (entp);
922 ipmp_arpent_t *entp;
930 entp = list_head(&illg->ig_arpent);
931 for (; entp != NULL; entp = list_next(&illg->ig_arpent, entp)) {
933 entp->ia_notified = B_FALSE;
944 if (entp->ia_proxyarp) {
945 if (bcmp(ill->ill_phys_addr, entp->ia_lladdr,
946 paddrlen) == 0 && entp->ia_notified)
948 bcopy(ill->ill_phys_addr, entp->ia_lladdr, paddrlen);
951 (void) nce_lookup_then_add_v4(ipmp_ill, entp->ia_lladdr,
952 paddrlen, &entp->ia_ipaddr, entp->ia_flags, ND_UNCHANGED,
954 if (nce == NULL || !entp->ia_proxyarp) {
964 ipmp_illgrp_mark_arpent(illg, entp);
1227 ipmp_arpent_t *entp;
1295 while ((entp = ipmp_illgrp_lookup_arpent(illg, NULL)) != NULL)
1296 ipmp_illgrp_destroy_arpent(illg, entp);