71#if PPP_SUPPORT && PPPOE_SUPPORT
83#ifdef PACK_STRUCT_USE_INCLUDES
94#ifdef PACK_STRUCT_USE_INCLUDES
98#ifdef PACK_STRUCT_USE_INCLUDES
107#ifdef PACK_STRUCT_USE_INCLUDES
112#define PPPOE_STATE_INITIAL 0
113#define PPPOE_STATE_PADI_SENT 1
114#define PPPOE_STATE_PADR_SENT 2
115#define PPPOE_STATE_SESSION 3
117#define PPPOE_STATE_PADO_SENT 1
119#define PPPOE_HEADERLEN sizeof(struct pppoehdr)
120#define PPPOE_VERTYPE 0x11
122#define PPPOE_TAG_EOL 0x0000
123#define PPPOE_TAG_SNAME 0x0101
124#define PPPOE_TAG_ACNAME 0x0102
125#define PPPOE_TAG_HUNIQUE 0x0103
126#define PPPOE_TAG_ACCOOKIE 0x0104
127#define PPPOE_TAG_VENDOR 0x0105
128#define PPPOE_TAG_RELAYSID 0x0110
129#define PPPOE_TAG_SNAME_ERR 0x0201
130#define PPPOE_TAG_ACSYS_ERR 0x0202
131#define PPPOE_TAG_GENERIC_ERR 0x0203
133#define PPPOE_CODE_PADI 0x09
134#define PPPOE_CODE_PADO 0x07
135#define PPPOE_CODE_PADR 0x19
136#define PPPOE_CODE_PADS 0x65
137#define PPPOE_CODE_PADT 0xA7
139#ifndef PPPOE_MAX_AC_COOKIE_LEN
140#define PPPOE_MAX_AC_COOKIE_LEN 64
144 struct pppoe_softc *
next;
145 struct netif *sc_ethif;
152#if PPPOE_SCNAME_SUPPORT
153 const char *sc_service_name;
154 const char *sc_concentrator_name;
156 u8_t sc_ac_cookie[PPPOE_MAX_AC_COOKIE_LEN];
157 u8_t sc_ac_cookie_len;
162 u8_t sc_padi_retried;
163 u8_t sc_padr_retried;
169ppp_pcb *pppoe_create(
struct netif *pppif,
171 const char *
service_name,
const char *concentrator_name,
172 ppp_link_status_cb_fn link_status_cb,
void *ctx_cb);
static char service_name[100]
#define PACK_STRUCT_STRUCT
#define PACK_STRUCT_BEGIN
#define PACK_STRUCT_FLD_8(x)
#define PACK_STRUCT_FIELD(x)
static unsigned __int64 next