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.

110 lines
2.0 KiB

  1. //+---------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1992 - 1995.
  5. //
  6. // File: grputils.hxx
  7. //
  8. // Contents: Public header file for all oleds client code
  9. //
  10. // Functions:
  11. //
  12. // History: 25-Oct-94 KrishnaG Created.
  13. //
  14. //----------------------------------------------------------------------------
  15. #ifndef _GRPUTILS_
  16. #define _GRPUTILS_
  17. #ifdef __cplusplus
  18. extern "C" {
  19. #endif
  20. typedef struct _computer_group_member{
  21. ULONG Type;
  22. LPWSTR Parent;
  23. LPWSTR Computer;
  24. LPWSTR Name;
  25. }COMPUTER_GROUP_MEMBER, *PCOMPUTER_GROUP_MEMBER, * LPCOMPUTER_GROUP_MEMBER;
  26. typedef struct _ini_comp_group{
  27. DWORD _dwCurrentObject;
  28. LPWSTR szComputerName;
  29. LPWSTR szGroupName;
  30. LPBYTE _pBuffer;
  31. NWCONN_HANDLE _hConn;
  32. }INI_COMP_GROUP, *PINI_COMP_GROUP, *LPINI_COMP_GROUP;
  33. BOOL
  34. NWCOMPATComputerGroupOpen(
  35. LPWSTR szComputerName,
  36. LPWSTR szGroupName,
  37. PHANDLE phGroup
  38. );
  39. BOOL
  40. NWCOMPATComputerGroupEnum(
  41. HANDLE hGroup,
  42. DWORD dwRequested,
  43. LPBYTE * ppBuffer,
  44. PDWORD pdwReturned
  45. );
  46. BOOL
  47. NWCOMPATComputerGroupGetObject(
  48. HANDLE hGroup,
  49. LPCOMPUTER_GROUP_MEMBER * ppGroupMember
  50. );
  51. BOOL
  52. NWCOMPATComputerGroupClose(
  53. HANDLE hGroup
  54. );
  55. void
  56. FreeIniCompGroup(
  57. PINI_COMP_GROUP pIniCompGrp
  58. );
  59. BOOL
  60. ComputeComputerGroupDataSize(
  61. LPCOMPUTER_GROUP_MEMBER * ppGroupMembers,
  62. DWORD dwReturned,
  63. PDWORD pdwSize
  64. );
  65. LPBYTE
  66. CopyIniCompGroupToCompGroup(
  67. LPCOMPUTER_GROUP_MEMBER pIntCompGrp,
  68. LPBYTE pExtCompGrp,
  69. LPBYTE pEnd
  70. );
  71. void
  72. FreeIntCompGroup(
  73. LPCOMPUTER_GROUP_MEMBER pCompGroupMember
  74. );
  75. BOOL
  76. BuildComputerGroupMember(
  77. HANDLE hGroup,
  78. DWORD dwUserID,
  79. LPCOMPUTER_GROUP_MEMBER * ppGroupMember
  80. );
  81. LPBYTE
  82. PackStrings(
  83. LPWSTR *pSource,
  84. LPBYTE pDest,
  85. DWORD *DestOffsets,
  86. LPBYTE pEnd
  87. );
  88. #ifdef __cplusplus
  89. }
  90. #endif
  91. #endif // _GRPUTILS_