esp-open-rtos/open_esplibs/libnet80211/ieee80211_input.c

31 lines
955 B
C

/* Recreated Espressif libnet80211 ieee80211_input.o contents.
Copyright (C) 2015 Espressif Systems. Derived from MIT Licensed SDK libraries.
BSD Licensed as described in the file LICENSE
*/
#include "open_esplibs.h"
#if OPEN_LIBNET80211_INPUT
// The contents of this file are only built if OPEN_LIBNET80211_INPUT is set to true
#include "esplibs/libpp.h"
void IRAM sdk_ieee80211_deliver_data(struct sdk_g_ic_netif_info *netif_info, struct esf_buf *esf_buf) {
struct netif *netif = netif_info->netif;
if (netif->flags & NETIF_FLAG_LINK_UP) {
uint16_t length = esf_buf->length;
struct pbuf *pbuf = pbuf_alloc(PBUF_RAW, length, PBUF_REF);
pbuf->payload = esf_buf->pbuf2->payload;
esf_buf->pbuf1 = pbuf;
pbuf->eb = (void *)esf_buf;
ethernetif_input(netif, pbuf);
return;
}
if (esf_buf)
sdk_ppRecycleRxPkt(esf_buf);
return;
}
#endif /* OPEN_LIBNET80211_INPUT */