xref: /haiku/src/add-ons/kernel/network/ppp/shared/libkernelppp/_KPPPPFCHandler.h (revision 9eb55bc1d104b8fda80898f8b25c94d8000c8255)
1 //-----------------------------------------------------------------------
2 //  This software is part of the OpenBeOS distribution and is covered
3 //  by the OpenBeOS license.
4 //
5 //  Copyright (c) 2003-2004 Waldemar Kornewald, Waldemar.Kornewald@web.de
6 //-----------------------------------------------------------------------
7 
8 #ifndef __K_PPP_PFC_HANDLER__H
9 #define __K_PPP_PFC_HANDLER__H
10 
11 #include <KPPPOptionHandler.h>
12 
13 
14 class _KPPPPFCHandler : public KPPPOptionHandler {
15 	public:
16 		_KPPPPFCHandler(ppp_pfc_state& localPFCState, ppp_pfc_state& peerPFCState,
17 			KPPPInterface& interface);
18 
19 		virtual status_t AddToRequest(KPPPConfigurePacket& request);
20 		virtual status_t ParseNak(const KPPPConfigurePacket& nak);
21 		virtual status_t ParseReject(const KPPPConfigurePacket& reject);
22 		virtual status_t ParseAck(const KPPPConfigurePacket& ack);
23 
24 		virtual status_t ParseRequest(const KPPPConfigurePacket& request,
25 			int32 index, KPPPConfigurePacket& nak, KPPPConfigurePacket& reject);
26 		virtual status_t SendingAck(const KPPPConfigurePacket& ack);
27 
28 		virtual void Reset();
29 
30 	private:
31 		ppp_pfc_state &fLocalPFCState, &fPeerPFCState;
32 };
33 
34 
35 #endif
36