1ab10dccbSGao Feng #ifndef _NET_PPTP_H 2ab10dccbSGao Feng #define _NET_PPTP_H 3ab10dccbSGao Feng 4ab10dccbSGao Feng #define PPP_LCP_ECHOREQ 0x09 5ab10dccbSGao Feng #define PPP_LCP_ECHOREP 0x0A 6ab10dccbSGao Feng #define SC_RCV_BITS (SC_RCV_B7_1|SC_RCV_B7_0|SC_RCV_ODDP|SC_RCV_EVNP) 7ab10dccbSGao Feng 8ab10dccbSGao Feng #define MISSING_WINDOW 20 9ab10dccbSGao Feng #define WRAPPED(curseq, lastseq)\ 10ab10dccbSGao Feng ((((curseq) & 0xffffff00) == 0) &&\ 11ab10dccbSGao Feng (((lastseq) & 0xffffff00) == 0xffffff00)) 12ab10dccbSGao Feng 13ab10dccbSGao Feng #define PPTP_HEADER_OVERHEAD (2+sizeof(struct pptp_gre_header)) 14ab10dccbSGao Feng struct pptp_gre_header { 15*03459345SGao Feng struct gre_base_hdr gre_hd; 16ab10dccbSGao Feng __be16 payload_len; 17ab10dccbSGao Feng __be16 call_id; 18ab10dccbSGao Feng __be32 seq; 19ab10dccbSGao Feng __be32 ack; 20ab10dccbSGao Feng } __packed; 21ab10dccbSGao Feng 22ab10dccbSGao Feng 23ab10dccbSGao Feng #endif 24