00001 /* 00002 * Dibbler - a portable DHCPv6 00003 * 00004 * authors: Tomasz Mrugalski <thomson@klub.com.pl> 00005 * Marek Senderski <msend@o2.pl> 00006 * 00007 * released under GNU GPL v2 or later licence 00008 * 00009 * $Id: ClntMsgInfRequest.h,v 1.3 2005/01/08 16:52:03 thomson Exp $ 00010 * 00011 * $Log: ClntMsgInfRequest.h,v $ 00012 * Revision 1.3 2005/01/08 16:52:03 thomson 00013 * Relay support implemented. 00014 * 00015 * Revision 1.2 2004/06/20 17:51:48 thomson 00016 * getName() method implemented, comment cleanup 00017 * 00018 * 00019 */ 00020 00021 class TClntIfaceMgr; 00022 #ifndef CLNTMSGINFREQUEST_H 00023 #define CLNTMSGINFREQUEST_H 00024 00025 #include "SmartPtr.h" 00026 #include "ClntMsg.h" 00027 #include "ClntAddrMgr.h" 00028 #include "ClntCfgMgr.h" 00029 #include "ClntIfaceMgr.h" 00030 #include "ClntCfgMgr.h" 00031 00032 class TClntMsgInfRequest : public TClntMsg 00033 { 00034 public: 00035 TClntMsgInfRequest(SmartPtr<TClntIfaceMgr> IfMgr, 00036 SmartPtr<TClntTransMgr> TransMgr, 00037 SmartPtr<TClntCfgMgr> ConfMgr, 00038 SmartPtr<TClntAddrMgr> AddrMgr, 00039 TContainer< SmartPtr<TOpt> > ReqOpts, 00040 int iface); 00041 00042 TClntMsgInfRequest(SmartPtr<TClntIfaceMgr> IfMgr, 00043 SmartPtr<TClntTransMgr> TransMgr, 00044 SmartPtr<TClntCfgMgr> ConfMgr, 00045 SmartPtr<TClntAddrMgr> AddrMgr, 00046 SmartPtr<TClntCfgIface> iface); 00047 00048 void answer(SmartPtr<TClntMsg> msg); 00049 void doDuties(); 00050 bool check(); 00051 string getName(); 00052 ~TClntMsgInfRequest(); 00053 00054 private: 00055 SmartPtr<TClntAddrMgr> AddrMgr; 00056 }; 00057 00058 00059 00060 #endif 00061