Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

74 lines
2.6 KiB

  1. /******************************************************************
  2. ResFn.h -- Properties action functions declarations (GET/SET)
  3. MODULE:
  4. DhcpProv.dll
  5. DESCRIPTION:
  6. Contains the declaration of the CDHCP_Reservation_Parameters class, modeling all
  7. the datastructures used to retrieve the information from the DHCP Reservation.
  8. Contains the declarations for the action functions associated to
  9. each manageable property from the class CDHCP_Server
  10. REVISION:
  11. 08/14/98 - created
  12. ******************************************************************/
  13. #include "Props.h" // needed for MFN_PROPERTY_ACTION_DECL definition
  14. #ifndef _RESFN_H
  15. #define _RESFN_H
  16. #define RESERVATION_CAST (LPDHCP_IP_RESERVATION_V4)
  17. class CDHCP_Lease_Parameters;
  18. // gathers the data structures needed for retrieving data from the DHCP Lease.
  19. class CDHCP_Reservation_Parameters
  20. {
  21. private:
  22. void DeleteReservationInfo(LPDHCP_IP_RESERVATION_V4& pReservationInfo);
  23. void DeleteReservationInfoArray(LPDHCP_SUBNET_ELEMENT_INFO_ARRAY_V4& pReservationInfoArray);
  24. public:
  25. DHCP_IP_ADDRESS m_dwSubnetAddress;
  26. DHCP_IP_ADDRESS m_dwReservationAddress;
  27. LPDHCP_SUBNET_ELEMENT_INFO_ARRAY_V4 m_pReservationInfoArray;
  28. LPDHCP_SUBNET_ELEMENT_DATA_V4 m_pReservationInfo ;
  29. CDHCP_Reservation_Parameters(DHCP_IP_ADDRESS dwSubnetAddress, DHCP_IP_ADDRESS dwReservationAddress);
  30. ~CDHCP_Reservation_Parameters();
  31. BOOL GetKeyInfoFromLease(CDHCP_Lease_Parameters *pLeaseParams);
  32. LONG NextSubnetReservation(DHCP_RESUME_HANDLE ResumeHandle);
  33. BOOL GetReservationInfoFromCache(LPDHCP_IP_RESERVATION_V4& pReservationInfo);
  34. BOOL GetReservationInfo(LPDHCP_IP_RESERVATION_V4& pReservationInfo, BOOL fRefresh);
  35. BOOL CheckExistsInfoPtr();
  36. BOOL CommitNew(DWORD &returnCode);
  37. BOOL DeleteReservation();
  38. };
  39. /*
  40. // GET function for the (RO)"Subnet" property
  41. MFN_PROPERTY_ACTION_DECL(fnResGetSubnet);
  42. // GET function for the (RO)"Address" property
  43. MFN_PROPERTY_ACTION_DECL(fnResGetAddress);
  44. // SET function for the (CREATE)"Address" property
  45. MFN_PROPERTY_ACTION_DECL(fnResSetAddress);
  46. // GET function for the (RO)"UniqueReservationIdentifier" property
  47. MFN_PROPERTY_ACTION_DECL(fnResGetHdwAddress);
  48. // SET function for the (CREATE)"UniqueReservationIdentifier" property
  49. MFN_PROPERTY_ACTION_DECL(fnResSetHdwAddress);
  50. */
  51. // GET function for the (RO)"ReservationType" property
  52. MFN_PROPERTY_ACTION_DECL(fnResGetReservationType);
  53. // SET function for the (Create)"ReservationType" property
  54. MFN_PROPERTY_ACTION_DECL(fnResSetReservationType);
  55. #endif