Leaked source code of windows server 2003
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.

100 lines
1.5 KiB

  1. /*++
  2. Copyright (c) 2001 Microsoft Corporation
  3. All rights reserved
  4. Module Name:
  5. lsaclientid.cxx
  6. Abstract:
  7. This file provides useful accssors and mutators.
  8. Author:
  9. Larry Zhu (LZhu) May 1, 2001 Created
  10. Environment:
  11. User Mode -Win32
  12. Revision History:
  13. --*/
  14. #include "precomp.hxx"
  15. #pragma hdrstop
  16. #include "lsaclientid.hxx"
  17. TCLIENT_ID::TCLIENT_ID(void) : m_hr(E_FAIL)
  18. {
  19. }
  20. TCLIENT_ID::TCLIENT_ID(IN ULONG64 baseOffset)
  21. : m_baseOffset(baseOffset), m_hr(E_FAIL)
  22. {
  23. m_hr = Initialize();
  24. }
  25. TCLIENT_ID::~TCLIENT_ID(void)
  26. {
  27. }
  28. HRESULT TCLIENT_ID::IsValid(void) const
  29. {
  30. return m_hr;
  31. }
  32. ULONG64 TCLIENT_ID::GetUniqueProcess(void) const
  33. {
  34. return ReadStructPtrField(m_baseOffset, "_CLIENT_ID", "UniqueProcess");
  35. }
  36. ULONG64 TCLIENT_ID::GetUniqueThread(void) const
  37. {
  38. return ReadStructPtrField(m_baseOffset, "_CLIENT_ID", "UniqueThread");
  39. }
  40. /******************************************************************************
  41. Private Methods
  42. ******************************************************************************/
  43. /*++
  44. Routine Name:
  45. Initialize
  46. Routine Description:
  47. Do necessary initialization.
  48. Arguments:
  49. None
  50. Return Value:
  51. An HRESULT
  52. --*/
  53. HRESULT TCLIENT_ID::Initialize(void)
  54. {
  55. HRESULT hRetval = E_FAIL;
  56. hRetval = S_OK;
  57. return hRetval;
  58. }
  59. HRESULT TCLIENT_ID::Initialize(IN ULONG64 baseOffset)
  60. {
  61. m_baseOffset = baseOffset;
  62. m_hr = Initialize();
  63. return m_hr;
  64. }