Add RNDIS Device support to the Webserver project, so that the files stored on the device can be viewed from a web-browser while the board is plugged into a host machine.
This commit is contained in:
parent
e349974aa9
commit
3cba88e4c0
27 changed files with 939 additions and 251 deletions
|
@ -83,7 +83,10 @@ uip_split_output(void)
|
|||
#if UIP_CONF_IPV6
|
||||
tcpip_ipv6_output();
|
||||
#else
|
||||
RNDIS_Host_SendPacket(&Ethernet_RNDIS_Interface, uip_buf, uip_len);
|
||||
if (USB_CurrentMode == USB_MODE_Device)
|
||||
RNDIS_Device_SendPacket(&Ethernet_RNDIS_Interface_Device, uip_buf, uip_len);
|
||||
else
|
||||
RNDIS_Host_SendPacket(&Ethernet_RNDIS_Interface_Host, uip_buf, uip_len);
|
||||
#endif /* UIP_CONF_IPV6 */
|
||||
|
||||
/* Now, create the second packet. To do this, it is not enough to
|
||||
|
@ -124,7 +127,10 @@ uip_split_output(void)
|
|||
#if UIP_CONF_IPV6
|
||||
tcpip_ipv6_output();
|
||||
#else
|
||||
RNDIS_Host_SendPacket(&Ethernet_RNDIS_Interface, uip_buf, uip_len);
|
||||
if (USB_CurrentMode == USB_MODE_Device)
|
||||
RNDIS_Device_SendPacket(&Ethernet_RNDIS_Interface_Device, uip_buf, uip_len);
|
||||
else
|
||||
RNDIS_Host_SendPacket(&Ethernet_RNDIS_Interface_Host, uip_buf, uip_len);
|
||||
#endif /* UIP_CONF_IPV6 */
|
||||
return;
|
||||
}
|
||||
|
@ -134,7 +140,10 @@ uip_split_output(void)
|
|||
#if UIP_CONF_IPV6
|
||||
tcpip_ipv6_output();
|
||||
#else
|
||||
RNDIS_Host_SendPacket(&Ethernet_RNDIS_Interface, uip_buf, uip_len);
|
||||
if (USB_CurrentMode == USB_MODE_Device)
|
||||
RNDIS_Device_SendPacket(&Ethernet_RNDIS_Interface_Device, uip_buf, uip_len);
|
||||
else
|
||||
RNDIS_Host_SendPacket(&Ethernet_RNDIS_Interface_Host, uip_buf, uip_len);
|
||||
#endif /* UIP_CONF_IPV6 */
|
||||
}
|
||||
|
||||
|
|
|
@ -904,10 +904,12 @@ uip_process(u8_t flag)
|
|||
#if UIP_BROADCAST
|
||||
DEBUG_PRINTF("UDP IP checksum 0x%04x\n", uip_ipchksum());
|
||||
if(BUF->proto == UIP_PROTO_UDP &&
|
||||
uip_ipaddr_cmp(&BUF->destipaddr, &uip_broadcast_addr)
|
||||
/*&&
|
||||
uip_ipchksum() == 0xffff*/) {
|
||||
goto udp_input;
|
||||
uip_ipaddr_cmp(&BUF->destipaddr, &uip_broadcast_addr))
|
||||
{
|
||||
if (uip_ipaddr_cmp(&BUF->srcipaddr, &uip_all_zeroes_addr))
|
||||
uip_ipaddr_copy(&BUF->srcipaddr, &uip_broadcast_addr);
|
||||
|
||||
goto udp_input;
|
||||
}
|
||||
#endif /* UIP_BROADCAST */
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue