Lines Matching defs:pktinfo

144 gld_interpret_ether(gld_mac_info_t *macinfo, mblk_t *mp, pktinfo_t *pktinfo,
158 pktinfo->pktLen = msgdsize(mp);
166 pktinfo->ethertype = REF_NET_USHORT(mh->ether_type);
167 pktinfo->isForMe = mac_eq(&mh->ether_dhost,
169 pktinfo->macLen = sizeof (struct ether_header);
174 bzero((void *)pktinfo, sizeof (*pktinfo));
176 pktinfo->pktLen = msgdsize(mp);
179 if (pktinfo->pktLen < sizeof (struct ether_header))
199 pktinfo->isBroadcast = 1;
201 pktinfo->isMulticast = 1;
256 mac_copy(&mh->ether_dhost, pktinfo->dhost, macinfo->gldm_addrlen);
257 mac_copy(&mh->ether_shost, pktinfo->shost, macinfo->gldm_addrlen);
259 pktinfo->isLooped = mac_eq(pktinfo->shost,
261 pktinfo->isForMe = mac_eq(pktinfo->dhost,
264 pktinfo->macLen = sizeof (struct ether_header);
267 pktinfo->ethertype = typelen; /* use type interpretation */
278 int delta = pktinfo->pktLen -
282 pktinfo->pktLen -= delta;
289 if (pktinfo->pktLen < pktinfo->macLen + LLC_HDR1_LEN)
292 pktinfo->isLLC = 1;
295 pktinfo->pktLen < pktinfo->macLen + LLC_SNAP_HDR_LEN)
299 MBLKL(mp) < pktinfo->pktLen) {
321 snaphdr = (struct llc_snap_hdr *)(mp->b_rptr + pktinfo->macLen);
323 pktinfo->ethertype = REF_NET_USHORT(snaphdr->type);
324 pktinfo->hdrLen = LLC_SNAP_HDR_LEN;
585 gld_interpret_ib(gld_mac_info_t *macinfo, mblk_t *mp, pktinfo_t *pktinfo,
597 pktinfo->pktLen = msgdsize(mp) - IPOIB_GRH_SIZE;
616 pktinfo->isForMe = 1;
617 pktinfo->ethertype = REF_NET_USHORT(ihp->ipoib_type);
618 pktinfo->macLen = IPOIB_GRH_SIZE + IPOIB_HDRSIZE;
629 bzero((void *)pktinfo, sizeof (*pktinfo));
636 pktinfo->pktLen = msgdsize(mp);
639 if (pktinfo->pktLen < sizeof (ipoib_ptxhdr_t))
665 pktinfo->isBroadcast = 1;
667 pktinfo->isMulticast = 1;
674 pktinfo->pktLen -= IPOIB_ADDRL;
682 mac_copy(&gldp->ipoib_dest, pktinfo->dhost, IPOIB_ADDRL);
683 mac_copy(mac_pvt->curr_macaddr, pktinfo->shost, IPOIB_ADDRL);
691 pktinfo->pktLen = msgdsize(mp);
693 if (pktinfo->pktLen < (IPOIB_GRH_SIZE + IPOIB_HDRSIZE))
713 pktinfo->pktLen -= IPOIB_GRH_SIZE;
718 mact = (ipoib_mac_t *)pktinfo->shost;
726 mact = (ipoib_mac_t *)pktinfo->dhost;
742 pktinfo->isLooped = 1;
749 pktinfo->isBroadcast = 1;
751 pktinfo->isMulticast = 1;
770 pktinfo->isForMe = 1;
779 pktinfo->nosource = 1;
780 mac_copy(mac_pvt->curr_macaddr, pktinfo->dhost,
786 pktinfo->isForMe = 1;
792 pktinfo->ethertype = REF_NET_USHORT(((ipoib_hdr_t *)
794 pktinfo->macLen = IPOIB_HDRSIZE;
808 pktinfo_t *pktinfo, mdt_packet_flag_t flags)
832 hptr->ipoib_type = pktinfo->ethertype;
837 pktinfo->pktLen = PDESC_HDRL(pinfo);
839 pktinfo->pktLen += PDESC_PLDL(pinfo, seg);
856 bzero((void *)pktinfo, sizeof (*pktinfo));
868 pktinfo->isBroadcast = 1;
870 pktinfo->isMulticast = 1;
872 pktinfo->ethertype = REF_NET_USHORT(dlap->
876 pktinfo->macLen = IPOIB_HDRSIZE;
878 mac_copy(mac_pvt->curr_macaddr, pktinfo->shost, IPOIB_ADDRL);
881 mac_copy(&dlap->ipoib_dest, pktinfo->dhost, IPOIB_ADDRL);
1021 gld_interpret_fddi(gld_mac_info_t *macinfo, mblk_t *mp, pktinfo_t *pktinfo,
1033 pktinfo->pktLen = msgdsize(mp);
1037 bzero((void *)pktinfo, sizeof (*pktinfo));
1039 pktinfo->pktLen = msgdsize(mp);
1042 if (pktinfo->pktLen < sizeof (struct fddi_mac_frm))
1064 pktinfo->isBroadcast = 1;
1066 pktinfo->isMulticast = 1;
1077 cmac_copy(mh->fddi_dhost, pktinfo->dhost,
1079 cmac_copy(mh->fddi_shost, pktinfo->shost,
1083 pktinfo->isLooped = mac_eq(pktinfo->shost,
1085 pktinfo->isForMe = mac_eq(pktinfo->dhost,
1088 pktinfo->macLen = sizeof (struct fddi_mac_frm);
1095 MBLKL(mp) < pktinfo->pktLen) {
1117 if (pktinfo->pktLen < pktinfo->macLen + LLC_HDR1_LEN)
1120 pktinfo->isLLC = 1;
1122 if (pktinfo->pktLen < pktinfo->macLen + LLC_SNAP_HDR_LEN)
1125 snaphdr = (struct llc_snap_hdr *)(mp->b_rptr + pktinfo->macLen);
1127 pktinfo->ethertype = REF_NET_USHORT(snaphdr->type);
1128 pktinfo->hdrLen = LLC_SNAP_HDR_LEN;
1395 gld_interpret_tr(gld_mac_info_t *macinfo, mblk_t *mp, pktinfo_t *pktinfo,
1408 pktinfo->pktLen = msgdsize(mp);
1412 bzero((void *)pktinfo, sizeof (*pktinfo));
1414 pktinfo->pktLen = msgdsize(mp);
1417 if (pktinfo->pktLen < sizeof (struct tr_mac_frm_nori))
1438 pktinfo->isBroadcast = 1;
1440 pktinfo->isMulticast = 1;
1451 mac_copy(mh->tr_dhost, pktinfo->dhost, macinfo->gldm_addrlen);
1452 mac_copy(mh->tr_shost, pktinfo->shost, macinfo->gldm_addrlen);
1453 pktinfo->shost[0] &= ~0x80; /* turn off RIF indicator */
1456 pktinfo->isLooped = mac_eq(pktinfo->shost,
1458 pktinfo->isForMe = mac_eq(pktinfo->dhost,
1462 pktinfo->macLen = sizeof (struct tr_mac_frm_nori);
1477 MBLKL(mp) < pktinfo->pktLen) {
1498 if (pktinfo->pktLen < sizeof (struct tr_mac_frm_nori) + 2)
1512 if (pktinfo->pktLen < sizeof (struct tr_mac_frm_nori) + rh->len)
1514 pktinfo->macLen += rh->len;
1518 if (pktinfo->pktLen < pktinfo->macLen + LLC_HDR1_LEN)
1521 pktinfo->isLLC = 1;
1523 if (pktinfo->pktLen < pktinfo->macLen + LLC_SNAP_HDR_LEN)
1526 snaphdr = (struct llc_snap_hdr *)(mp->b_rptr + pktinfo->macLen);
1528 pktinfo->ethertype = REF_NET_USHORT(snaphdr->type);
1529 pktinfo->hdrLen = LLC_SNAP_HDR_LEN;
1533 gld_rcc_receive(macinfo, pktinfo, rh,
1534 mp->b_rptr + pktinfo->macLen,
1535 pktinfo->pktLen - pktinfo->macLen);
1821 gld_rcc_receive(gld_mac_info_t *macinfo, pktinfo_t *pktinfo, struct gld_ri *rh,
1836 if (!pktinfo->isForMe)
1855 gld_send_rqr(macinfo, pktinfo->shost, rh, pdu, pdulen);
1876 gld_rif_ind(macinfo, rh, pktinfo->shost, snaphdr->s_lsap,