Lines Matching refs:msg
81 struct rndis_query_req *msg, uint16_t len,
84 struct rndis_set_req *msg, uint16_t len);
226 } msg; in urndis_attach() local
281 memset(msg.eaddr.addr, 0, sizeof(msg.eaddr.addr)); in urndis_attach()
284 (struct rndis_query_req *)&msg.eaddr, sizeof(msg.eaddr), in urndis_attach()
300 msg.filter.filter = htole32(sc->sc_filter); in urndis_attach()
303 (struct rndis_set_req *)&msg.filter, sizeof(msg.filter)); in urndis_attach()
530 const struct rndis_init_comp *msg; in urndis_ctrl_handle_init() local
532 msg = (const struct rndis_init_comp *)hdr; in urndis_ctrl_handle_init()
537 le32toh(msg->rm_len), in urndis_ctrl_handle_init()
538 le32toh(msg->rm_rid), in urndis_ctrl_handle_init()
539 le32toh(msg->rm_status), in urndis_ctrl_handle_init()
540 le32toh(msg->rm_ver_major), in urndis_ctrl_handle_init()
541 le32toh(msg->rm_ver_minor), in urndis_ctrl_handle_init()
542 le32toh(msg->rm_devflags), in urndis_ctrl_handle_init()
543 le32toh(msg->rm_medium), in urndis_ctrl_handle_init()
544 le32toh(msg->rm_pktmaxcnt), in urndis_ctrl_handle_init()
545 le32toh(msg->rm_pktmaxsz), in urndis_ctrl_handle_init()
546 le32toh(msg->rm_align), in urndis_ctrl_handle_init()
547 le32toh(msg->rm_aflistoffset), in urndis_ctrl_handle_init()
548 le32toh(msg->rm_aflistsz)); in urndis_ctrl_handle_init()
550 if (le32toh(msg->rm_status) != RNDIS_STATUS_SUCCESS) { in urndis_ctrl_handle_init()
551 DPRINTF("init failed 0x%x\n", le32toh(msg->rm_status)); in urndis_ctrl_handle_init()
552 return (le32toh(msg->rm_status)); in urndis_ctrl_handle_init()
554 if (le32toh(msg->rm_devflags) != RNDIS_DF_CONNECTIONLESS) { in urndis_ctrl_handle_init()
556 le32toh(msg->rm_devflags)); in urndis_ctrl_handle_init()
559 if (le32toh(msg->rm_medium) != RNDIS_MEDIUM_802_3) { in urndis_ctrl_handle_init()
561 le32toh(msg->rm_medium)); in urndis_ctrl_handle_init()
564 sc->sc_lim_pktsz = le32toh(msg->rm_pktmaxsz); in urndis_ctrl_handle_init()
566 return (le32toh(msg->rm_status)); in urndis_ctrl_handle_init()
573 const struct rndis_query_comp *msg; in urndis_ctrl_handle_query() local
576 msg = (const struct rndis_query_comp *)hdr; in urndis_ctrl_handle_query()
580 le32toh(msg->rm_len), in urndis_ctrl_handle_query()
581 le32toh(msg->rm_rid), in urndis_ctrl_handle_query()
582 le32toh(msg->rm_status), in urndis_ctrl_handle_query()
583 le32toh(msg->rm_infobuflen), in urndis_ctrl_handle_query()
584 le32toh(msg->rm_infobufoffset)); in urndis_ctrl_handle_query()
588 if (le32toh(msg->rm_status) != RNDIS_STATUS_SUCCESS) { in urndis_ctrl_handle_query()
589 DPRINTF("query failed 0x%x\n", le32toh(msg->rm_status)); in urndis_ctrl_handle_query()
590 return (le32toh(msg->rm_status)); in urndis_ctrl_handle_query()
592 limit = le32toh(msg->rm_infobuflen); in urndis_ctrl_handle_query()
593 limit += le32toh(msg->rm_infobufoffset); in urndis_ctrl_handle_query()
596 if (limit > (uint64_t)le32toh(msg->rm_len)) { in urndis_ctrl_handle_query()
600 le32toh(msg->rm_infobuflen), in urndis_ctrl_handle_query()
601 le32toh(msg->rm_infobufoffset), in urndis_ctrl_handle_query()
602 le32toh(msg->rm_infobuflen) + in urndis_ctrl_handle_query()
603 le32toh(msg->rm_infobufoffset) + RNDIS_HEADER_OFFSET, in urndis_ctrl_handle_query()
604 le32toh(msg->rm_len)); in urndis_ctrl_handle_query()
607 *buf = ((const uint8_t *)msg) + RNDIS_HEADER_OFFSET + in urndis_ctrl_handle_query()
608 le32toh(msg->rm_infobufoffset); in urndis_ctrl_handle_query()
609 *bufsz = le32toh(msg->rm_infobuflen); in urndis_ctrl_handle_query()
611 return (le32toh(msg->rm_status)); in urndis_ctrl_handle_query()
618 const struct rndis_reset_comp *msg; in urndis_ctrl_handle_reset() local
621 msg = (const struct rndis_reset_comp *)hdr; in urndis_ctrl_handle_reset()
623 rval = le32toh(msg->rm_status); in urndis_ctrl_handle_reset()
627 le32toh(msg->rm_len), in urndis_ctrl_handle_reset()
629 le32toh(msg->rm_adrreset)); in urndis_ctrl_handle_reset()
635 if (msg->rm_adrreset != 0) { in urndis_ctrl_handle_reset()
657 struct rndis_init_req msg; in urndis_ctrl_init() local
661 msg.rm_type = htole32(REMOTE_NDIS_INITIALIZE_MSG); in urndis_ctrl_init()
662 msg.rm_len = htole32(sizeof(msg)); in urndis_ctrl_init()
663 msg.rm_rid = 0; in urndis_ctrl_init()
664 msg.rm_ver_major = htole32(RNDIS_VERSION_MAJOR); in urndis_ctrl_init()
665 msg.rm_ver_minor = htole32(1); in urndis_ctrl_init()
666 msg.rm_max_xfersz = htole32(RNDIS_RX_MAXLEN); in urndis_ctrl_init()
670 le32toh(msg.rm_type), in urndis_ctrl_init()
671 le32toh(msg.rm_len), in urndis_ctrl_init()
672 le32toh(msg.rm_rid), in urndis_ctrl_init()
673 le32toh(msg.rm_ver_major), in urndis_ctrl_init()
674 le32toh(msg.rm_ver_minor), in urndis_ctrl_init()
675 le32toh(msg.rm_max_xfersz)); in urndis_ctrl_init()
677 rval = urndis_ctrl_send(sc, &msg, sizeof(msg)); in urndis_ctrl_init()
695 struct rndis_halt_req msg; in urndis_ctrl_halt() local
698 msg.rm_type = htole32(REMOTE_NDIS_HALT_MSG); in urndis_ctrl_halt()
699 msg.rm_len = htole32(sizeof(msg)); in urndis_ctrl_halt()
700 msg.rm_rid = 0; in urndis_ctrl_halt()
703 le32toh(msg.rm_type), in urndis_ctrl_halt()
704 le32toh(msg.rm_len), in urndis_ctrl_halt()
705 le32toh(msg.rm_rid)); in urndis_ctrl_halt()
707 rval = urndis_ctrl_send(sc, &msg, sizeof(msg)); in urndis_ctrl_halt()
721 struct rndis_query_req *msg, uint16_t len, const void **rbuf, in urndis_ctrl_query() argument
727 msg->rm_type = htole32(REMOTE_NDIS_QUERY_MSG); in urndis_ctrl_query()
728 msg->rm_len = htole32(len); in urndis_ctrl_query()
729 msg->rm_rid = 0; /* XXX */ in urndis_ctrl_query()
730 msg->rm_oid = htole32(oid); in urndis_ctrl_query()
731 datalen = len - sizeof(*msg); in urndis_ctrl_query()
732 msg->rm_infobuflen = htole32(datalen); in urndis_ctrl_query()
734 msg->rm_infobufoffset = htole32(sizeof(*msg) - in urndis_ctrl_query()
737 msg->rm_infobufoffset = 0; in urndis_ctrl_query()
739 msg->rm_devicevchdl = 0; in urndis_ctrl_query()
743 le32toh(msg->rm_type), in urndis_ctrl_query()
744 le32toh(msg->rm_len), in urndis_ctrl_query()
745 le32toh(msg->rm_rid), in urndis_ctrl_query()
746 le32toh(msg->rm_oid), in urndis_ctrl_query()
747 le32toh(msg->rm_infobuflen), in urndis_ctrl_query()
748 le32toh(msg->rm_infobufoffset), in urndis_ctrl_query()
749 le32toh(msg->rm_devicevchdl)); in urndis_ctrl_query()
751 rval = urndis_ctrl_send(sc, msg, len); in urndis_ctrl_query()
768 struct rndis_set_req *msg, uint16_t len) in urndis_ctrl_set() argument
773 msg->rm_type = htole32(REMOTE_NDIS_SET_MSG); in urndis_ctrl_set()
774 msg->rm_len = htole32(len); in urndis_ctrl_set()
775 msg->rm_rid = 0; /* XXX */ in urndis_ctrl_set()
776 msg->rm_oid = htole32(oid); in urndis_ctrl_set()
777 datalen = len - sizeof(*msg); in urndis_ctrl_set()
778 msg->rm_infobuflen = htole32(datalen); in urndis_ctrl_set()
780 msg->rm_infobufoffset = htole32(sizeof(*msg) - in urndis_ctrl_set()
783 msg->rm_infobufoffset = 0; in urndis_ctrl_set()
785 msg->rm_devicevchdl = 0; in urndis_ctrl_set()
789 le32toh(msg->rm_type), in urndis_ctrl_set()
790 le32toh(msg->rm_len), in urndis_ctrl_set()
791 le32toh(msg->rm_rid), in urndis_ctrl_set()
792 le32toh(msg->rm_oid), in urndis_ctrl_set()
793 le32toh(msg->rm_infobuflen), in urndis_ctrl_set()
794 le32toh(msg->rm_infobufoffset), in urndis_ctrl_set()
795 le32toh(msg->rm_devicevchdl)); in urndis_ctrl_set()
797 rval = urndis_ctrl_send(sc, msg, len); in urndis_ctrl_set()
820 struct rndis_packet_msg msg; in urndis_bulk_read_callback() local
832 for (offset = 0; actlen >= (uint32_t)sizeof(msg);) { in urndis_bulk_read_callback()
834 usbd_copy_out(pc, offset, &msg, sizeof(msg)); in urndis_bulk_read_callback()
838 msg.rm_type = le32toh(msg.rm_type); in urndis_bulk_read_callback()
839 msg.rm_len = le32toh(msg.rm_len); in urndis_bulk_read_callback()
840 msg.rm_dataoffset = le32toh(msg.rm_dataoffset); in urndis_bulk_read_callback()
841 msg.rm_datalen = le32toh(msg.rm_datalen); in urndis_bulk_read_callback()
842 msg.rm_oobdataoffset = le32toh(msg.rm_oobdataoffset); in urndis_bulk_read_callback()
843 msg.rm_oobdatalen = le32toh(msg.rm_oobdatalen); in urndis_bulk_read_callback()
844 msg.rm_oobdataelements = le32toh(msg.rm_oobdataelements); in urndis_bulk_read_callback()
845 msg.rm_pktinfooffset = le32toh(msg.rm_pktinfooffset); in urndis_bulk_read_callback()
846 msg.rm_pktinfolen = le32toh(msg.rm_pktinfolen); in urndis_bulk_read_callback()
847 msg.rm_vchandle = le32toh(msg.rm_vchandle); in urndis_bulk_read_callback()
848 msg.rm_reserved = le32toh(msg.rm_reserved); in urndis_bulk_read_callback()
853 msg.rm_len, msg.rm_dataoffset, msg.rm_datalen, in urndis_bulk_read_callback()
854 msg.rm_oobdataoffset, msg.rm_oobdatalen, in urndis_bulk_read_callback()
855 msg.rm_oobdataelements, msg.rm_pktinfooffset, in urndis_bulk_read_callback()
856 msg.rm_pktinfooffset); in urndis_bulk_read_callback()
859 if (msg.rm_type != REMOTE_NDIS_PACKET_MSG) { in urndis_bulk_read_callback()
861 msg.rm_type, REMOTE_NDIS_PACKET_MSG); in urndis_bulk_read_callback()
863 } else if (msg.rm_len < (uint32_t)sizeof(msg)) { in urndis_bulk_read_callback()
865 msg.rm_len, (unsigned)sizeof(msg)); in urndis_bulk_read_callback()
867 } else if (msg.rm_len > (uint32_t)actlen) { in urndis_bulk_read_callback()
869 "len %u\n", msg.rm_len, actlen); in urndis_bulk_read_callback()
871 } else if (msg.rm_dataoffset >= (uint32_t)actlen) { in urndis_bulk_read_callback()
873 "dataoffset %u\n", msg.rm_dataoffset, actlen); in urndis_bulk_read_callback()
875 } else if (msg.rm_datalen > (uint32_t)actlen) { in urndis_bulk_read_callback()
877 "datalen %u\n", msg.rm_datalen, actlen); in urndis_bulk_read_callback()
879 } else if ((msg.rm_dataoffset + msg.rm_datalen + in urndis_bulk_read_callback()
883 msg.rm_dataoffset + msg.rm_datalen + in urndis_bulk_read_callback()
887 } else if (msg.rm_datalen < (uint32_t)sizeof(struct ether_header)) { in urndis_bulk_read_callback()
890 "%u < %u\n", msg.rm_datalen, (unsigned)sizeof(struct ether_header)); in urndis_bulk_read_callback()
892 } else if (msg.rm_datalen > (uint32_t)(MCLBYTES - ETHER_ALIGN)) { in urndis_bulk_read_callback()
896 msg.rm_datalen, (unsigned)MCLBYTES); in urndis_bulk_read_callback()
898 } else if (msg.rm_datalen > (uint32_t)(MHLEN - ETHER_ALIGN)) { in urndis_bulk_read_callback()
906 m->m_len = m->m_pkthdr.len = msg.rm_datalen + ETHER_ALIGN; in urndis_bulk_read_callback()
909 usbd_copy_out(pc, offset + msg.rm_dataoffset + in urndis_bulk_read_callback()
911 rm_dataoffset), m->m_data, msg.rm_datalen); in urndis_bulk_read_callback()
914 uether_rxmbuf(&sc->sc_ue, m, msg.rm_datalen); in urndis_bulk_read_callback()
918 offset += msg.rm_len; in urndis_bulk_read_callback()
919 actlen -= msg.rm_len; in urndis_bulk_read_callback()
946 struct rndis_packet_msg msg; in urndis_bulk_write_callback() local
967 memset(&msg, 0, sizeof(msg)); in urndis_bulk_write_callback()
980 if ((m->m_pkthdr.len + sizeof(msg)) > RNDIS_TX_MAXLEN) { in urndis_bulk_write_callback()
988 msg.rm_type = htole32(REMOTE_NDIS_PACKET_MSG); in urndis_bulk_write_callback()
989 msg.rm_len = htole32(sizeof(msg) + m->m_pkthdr.len); in urndis_bulk_write_callback()
991 msg.rm_dataoffset = htole32(RNDIS_DATA_OFFSET); in urndis_bulk_write_callback()
992 msg.rm_datalen = htole32(m->m_pkthdr.len); in urndis_bulk_write_callback()
995 usbd_copy_in(pc, 0, &msg, sizeof(msg)); in urndis_bulk_write_callback()
996 usbd_m_copy_in(pc, sizeof(msg), m, 0, m->m_pkthdr.len); in urndis_bulk_write_callback()
997 usbd_xfer_set_frame_len(xfer, x, sizeof(msg) + m->m_pkthdr.len); in urndis_bulk_write_callback()