diff --git a/src/api/tcpip.c b/src/api/tcpip.c index 38fa6e4a..10b586c8 100644 --- a/src/api/tcpip.c +++ b/src/api/tcpip.c @@ -44,6 +44,7 @@ #include "lwip/pbuf.h" #include "netif/etharp.h" +#include "netif/ppp_oe.h" #include "lwip/ip.h" #include "lwip/ip_frag.h" @@ -244,6 +245,15 @@ ethernet_input(struct pbuf *p, struct netif *netif) etharp_arp_input(netif, (struct eth_addr*)(netif->hwaddr), p); break; +#if PPPOE_SUPPORT > 0 + case ETHTYPE_PPPOEDISC: /* PPP Over Ethernet Discovery Stage */ + pppoe_disc_input(netif, p); + break; + case ETHTYPE_PPPOE: /* PPP Over Ethernet Session Stage */ + pppoe_data_input(netif, p); + break; +#endif + default: pbuf_free(p); p = NULL;