📄 lcp.h
字号:
//---------------------------------------------------------------------------
#ifndef lcpH
#define lcpH
//---------------------------------------------------------------------------
//#include <string>
#include "lcpOptions.h"
class LCP
{
public:
LCP();
~LCP();
void FillLCP(string &data);
void GetMessageType(string &type);
void AssignConfigureReject(LCP receivedMessage);
void AssignConfigureAck(LCP receivedMessage);
void AssignConfigureNak(LCP receivedMessage);
void AssignConfigureRequest();
void AssignConfigureRequest(unsigned char ident);
void AppendConfigureRequestOption(unsigned long option, string theOptionData);
void AppendConfigureRequestOption(unsigned long option, long optionType);
void AssignTerminateRequest();
void AssignTerminateRequest(unsigned char ident);
void AssignTerminateAck(unsigned char ident);
void AssignCodeReject();
void AssignCodeReject(LCP receivedMessage);
void AssignProtocolReject(LCP receivedMessage);
void AssignEchoRequest(unsigned char ident);
void AssignEchoReply(unsigned char ident);
void AssignDiscardRequest(unsigned char ident);
unsigned char GetCode();
unsigned char GetIdentifier();
unsigned short GetLength();
// unsigned short GetData(unsigned char *dataArray);
unsigned short GetData(string &dataArray);
unsigned short GetPacket(string &packet);
long GetEvent(LCP lastSentLCP, long lastSentMagicNumber);
void SetPacketTime();
unsigned long GetPacketTime();
char GetConfigureRequestOptionType();
long HandleConfigureRequest(long lastSentMagicNumber);
string GetOptionString(long theOptionType);
long GetOption(char *theUsedOptionLength, char *theOptionType, char *theOptionLength, char *theOptionData);
long FillOptionsList(LCP receivedMessage, string &newOptionsList, long newMessageType);
long GetMagicNumber();
void GetLCPOptions( long *maximumReceiveUnit, string *asyncControlCharacterMap,
long *authenticationProtocol, long *qualityProtocol, long *magicNumber,
bool *protocolFieldCompression, bool *addressControlFieldCompression,
long *reserved, long *FCSAlternative, bool *selfDescribingPad, bool *numberedMode,
bool *callback, bool *multilinkOptions);
void SetLCPOptions(long maximumReceiveUnit, string asyncControlCharacterMap,
long authenticationProtocol, long qualityProtocol, long magicNumber,
bool protocolFieldCompression, bool addressControlFieldCompression,
long reserved, long FCSAlternative, bool selfDescribingPad, bool numberedMode,
bool callback, bool multilinkOptions);
void GetSelectedOptions(long *numOptions, long *optionsList);
long GetAuthenticationProtocol();
private:
unsigned char code;
unsigned short length;
// unsigned char data[1024];
string data;
static unsigned char identifier;
unsigned char identifierCounter;
unsigned long timeOfPacket;
lcpOptions options;
};
unsigned char LCP::identifier=0;
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -