Watt-32 tcp/ip  2.2 dev-rel.10
Data Structures | Typedefs | Functions
pppoe.h File Reference

Go to the source code of this file.

Data Structures

struct  pppoe_Packet
 

Typedefs

typedef struct pppoe_Packet pppoe_Packet
 

Functions

void pppoe_init (void)
 Set config-parser hook and initial values.
 
void pppoe_exit (void)
 Close down PPPoE by sending a PADT.
 
int pppoe_start (void)
 Start PPPoE by doing a Discovery. More...
 
int pppoe_handler (const pppoe_Packet *pkt)
 Handle incoming PPPoE packets.
 
BOOL pppoe_is_up (const void *dest)
 Determine if we have a PPPoE session with the machine given by 'dest'. More...
 
int pppoe_send_sess (const void *sock, const BYTE *buf, WORD len)
 Build and send a PPPoE Session packet (IPCP or LCP packet).
 
voidpppoe_mac_format (union link_Packet *buf)
 Build a PPPoE session packet header. More...
 

Function Documentation

BOOL pppoe_is_up ( const void dest)

Determine if we have a PPPoE session with the machine given by 'dest'.

Can only have a session with the AC.

Definition at line 287 of file pppoe.c.

References _eth_mac_len.

void* pppoe_mac_format ( union link_Packet tx)

Build a PPPoE session packet header.

Only called for IPv4 packets.

Definition at line 377 of file pppoe.c.

References _eth_addr, and _pkt_ip_ofs.

int pppoe_start ( void  )

Start PPPoE by doing a Discovery.

Adjust MSS/MTU for PPPoE packets (8 byte less than normal DIX ethernet). Enter Session state and kick-start PPP (LCP/IPCP).

Todo:
Fix-me: The new MTU/MSS affects all connections (also those which doesn't use PPPoE framing).

Definition at line 184 of file pppoe.c.

References _pktdevclass, and pppoe_discovery().