56#if defined(__CWCC__) || defined(_WIN32)
70} Ipv6cpInterfaceIdOption;
83} Ipv6cpIpCompProtocolOption;
87#if defined(__CWCC__) || defined(_WIN32)
92error_t ipv6cpOpen(PppContext *context);
93error_t ipv6cpClose(PppContext *context);
95void ipv6cpTick(PppContext *context);
97void ipv6cpProcessPacket(PppContext *context,
const PppPacket *packet,
size_t length);
99error_t ipv6cpProcessConfigureReq(PppContext *context,
100 const PppConfigurePacket *configureReqPacket);
102error_t ipv6cpProcessConfigureAck(PppContext *context,
103 const PppConfigurePacket *configureAckPacket);
105error_t ipv6cpProcessConfigureNak(PppContext *context,
106 const PppConfigurePacket *configureNakPacket);
108error_t ipv6cpProcessConfigureReject(PppContext *context,
109 const PppConfigurePacket *configureRejPacket);
111error_t ipv6cpProcessTerminateReq(PppContext *context,
112 const PppTerminatePacket *terminateReqPacket);
114error_t ipv6cpProcessTerminateAck(PppContext *context,
115 const PppTerminatePacket *terminateAckPacket);
117error_t ipv6cpProcessCodeRej(PppContext *context,
118 const PppCodeRejPacket *codeRejPacket);
120error_t ipv6cpProcessUnknownCode(PppContext *context,
121 const PppPacket *packet);
124void ipv6cpThisLayerUp(PppContext *context);
125void ipv6cpThisLayerDown(PppContext *context);
126void ipv6cpThisLayerStarted(PppContext *context);
127void ipv6cpThisLayerFinished(PppContext *context);
129void ipv6cpInitRestartCount(PppContext *context, uint_t value);
130void ipv6cpZeroRestartCount(PppContext *context);
132error_t ipv6cpSendConfigureReq(PppContext *context);
134error_t ipv6cpSendConfigureAck(PppContext *context,
135 const PppConfigurePacket *configureReqPacket);
137error_t ipv6cpSendConfigureNak(PppContext *context,
138 const PppConfigurePacket *configureReqPacket);
140error_t ipv6cpSendConfigureRej(PppContext *context,
141 const PppConfigurePacket *configureReqPacket);
143error_t ipv6cpSendTerminateReq(PppContext *context);
145error_t ipv6cpSendTerminateAck(PppContext *context,
146 const PppTerminatePacket *terminateReqPacket);
148error_t ipv6cpSendCodeRej(PppContext *context,
const PppPacket *packet);
151error_t ipv6cpParseOption(PppContext *context, PppOption *option,
152 size_t inPacketLen, PppConfigurePacket *outPacket);
154error_t ipv6cpParseInterfaceIdOption(PppContext *context,
155 Ipv6cpInterfaceIdOption *option, PppConfigurePacket *outPacket);
error_t
Error codes.
Definition error.h:43
Ipv6cpOptionType
IPV6CP option types.
Definition ipv6cp.h:49
@ IPV6CP_OPTION_INTERFACE_ID
Interface-Identifier.
Definition ipv6cp.h:50
@ IPV6CP_OPTION_IPV6_COMP_PROTOCOL
IPv6-Compression-Protocol.
Definition ipv6cp.h:51
typedef __packed_struct
Interface-Identifier option.
Definition ipv6cp.h:66
PPP (Point-to-Point Protocol)