Lines Matching defs:lifrp
537 ndp_initialize_lifreq(int route, struct lifreq *lifrp, struct sockaddr *sap)
542 char *lifr_name = lifrp->lifr_name;
544 bzero(lifrp, sizeof (struct lifreq));
545 lnr_addr = &lifrp->lifr_nd.lnr_addr;
648 ndp_display(struct lifreq *lifrp)
656 lnr_addr = (struct sockaddr_in6 *)&lifrp->lifr_nd.lnr_addr;
657 flags = lifrp->lifr_nd.lnr_flags;
666 if ((lladdr = _link_ntoa((uchar_t *)lifrp->lifr_nd.lnr_hdw_addr,
667 NULL, lifrp->lifr_nd.lnr_hdw_len, IFT_ETHER)) == NULL) {
707 ndp_display_missing(struct lifreq *lifrp)
713 lnr_addr = (struct sockaddr_in6 *)&lifrp->lifr_nd.lnr_addr;
733 ndp_lifr2ip(struct lifreq *lifrp, char *ipaddr, int buflen)
735 sin6_t *lnr_addr = (sin6_t *)&lifrp->lifr_nd.lnr_addr;
747 ndp_get(int fd, struct lifreq *lifrp, void *unused)
750 if (ioctl(fd, SIOCLIFGETND, lifrp) < 0) {
752 return (ndp_display_missing(lifrp));
754 ndp_lifr2ip(lifrp, ipaddr, sizeof (ipaddr));
761 return (ndp_display(lifrp));
781 ndp_delete(int fd, struct lifreq *lifrp, void *unused)
785 if (ioctl(fd, SIOCLIFDELND, lifrp) < 0) {
786 ndp_lifr2ip(lifrp, ipaddr, sizeof (ipaddr));
808 ndp_set(int fd, struct lifreq *lifrp, void *data)
813 (void) memcpy(lifrp->lifr_nd.lnr_hdw_addr, nd_attrs->lnr_hdw_addr,
815 lifrp->lifr_nd.lnr_hdw_len = nd_attrs->lnr_hdw_len;
816 lifrp->lifr_nd.lnr_flags = nd_attrs->lnr_flags;
818 lifrp->lifr_nd.lnr_state_create = nd_attrs->lnr_state_create;
819 lifrp->lifr_nd.lnr_state_same_lla = nd_attrs->lnr_state_same_lla;
820 lifrp->lifr_nd.lnr_state_diff_lla = nd_attrs->lnr_state_diff_lla;
822 if (ioctl(fd, SIOCLIFSETND, lifrp) < 0) {
823 ndp_lifr2ip(lifrp, ipaddr, sizeof (ipaddr));