33 #include "contiki-net.h"
35 #include "net/wpcap.h"
37 #include "net/wpcap-drv.h"
40 #define BUF ((struct uip_eth_hdr *)&uip_buf[0])
41 #define IPBUF ((struct uip_tcpip_hdr *)&uip_buf[UIP_LLH_LEN])
60 #ifdef SELECT_CALLBACK
61 #define FALLBACK_HAS_ETHERNET_HEADERS 1
64 PROCESS(wpcap_process,
"WinPcap driver");
81 #if !FALLBACK_HAS_ETHERNET_HEADERS //native br is fallback only
87 if(BUF->type ==
uip_htons(UIP_ETHTYPE_IPV6)) {
92 if(BUF->type ==
uip_htons(UIP_ETHTYPE_IP)) {
96 }
else if(BUF->type ==
uip_htons(UIP_ETHTYPE_ARP)) {
110 #ifdef UIP_FALLBACK_INTERFACE
116 #if FALLBACK_HAS_ETHERNET_HEADERS
117 if(BUF->type ==
uip_htons(UIP_ETHTYPE_IPV6)) {
129 if(BUF->type ==
uip_htons(UIP_ETHTYPE_IPV6)) {
134 if(BUF->type ==
uip_htons(UIP_ETHTYPE_IP)) {
138 }
else if(BUF->type ==
uip_htons(UIP_ETHTYPE_ARP)) {
165 tcpip_set_outputfunc(wpcap_output);
167 #if !FALLBACK_HAS_ETHERNET_HEADERS
168 tcpip_set_outputfunc(wpcap_send);