Pppoe 客户端说明文档 (本文以Rp-pppoe-3.7为参考,说明Pppoe客户端主要函数调用结构,主要用于帮助理解程序。) 图例说明: 流程图中 粉红色▇ 模块表示另有函数处理细节 部分模块 粉红色▇ 可以链接到其函数说明 函数: int main(int argc, char *argv [ ] ) 所在文件: Pppoe.c 参数: argc, argv ——命令行参数内容和个数 流程图: 函数: v oid discovery( PPPoEConnection *conn ) 所在文件: Pppoe.c 参数: Conn 指向存储有关信息的结构体 流程图: 函数: v oid session ( PPPoEConnection *conn ) 所在文件: Pppoe.c 参数: conn 指向存储有关信息的结构体 流程图: 函数: int openInterface(char const *ifname, UINT16_t type, unsigned char *hwaddr) 所在文件: If.c 参数: ifname 指向存放接口名称的字符数组 type 要建立的套接字的类型 hwaddr 指向存放硬件地址的字符数组 返回值: 建立的 socket 的文件描述符 流程图: 函数: v oid sendPADT(PPPoEConnection *conn, char const *msg) 所在文件: Common.c 参数: conn 指向存储有关信息的结构体 msg 指向存储错误信息 功能: 发送 PADT 包 流程图: 函数: static v oid sendPADI(PPPoEConnection *conn) 所在文件: Discov ery .c 参数: conn 指向存储有关信息的结构体 功能: 发送 PADI 包 流程图: 函数: static v oid sendPADR(PPPoEConnection *conn) 所在文件: Discov ery .c 参数: conn 指向存储有关信息的结构体 功能: 发送 PADR 包 流程图: 函数: static v oid w aitForPADO(PPPoEConnection *conn, int timeou t) 所在文件: Discov ery .c 参数: conn 指向存储有关信息的结构体 timeou t 等待存储超时时间 功能: 收取 PADO 包,并做处理 流程图: 函数: static v oid w aitForPADS(PPPoEConnection *conn, int timeou t) 所在文件: Discov ery .c 参数: conn 指向存储有关信息的结构体 timeou t 等待存储超时时间 功能: 收取 PADS 包,并做处理 流程图: 附 结构体说明: