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.

110 lines
1.9 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 _USRUTILS_HXX
  16. #define _USRPUTILS_HXX
  17. #ifdef __cplusplus
  18. extern "C" {
  19. #endif
  20. typedef struct _user_group_entry{
  21. ULONG Type;
  22. LPWSTR Parent;
  23. LPWSTR Computer;
  24. LPWSTR Name;
  25. }USER_GROUP_ENTRY, *PUSER_GROUP_ENTRY, * LPUSER_GROUP_ENTRY;
  26. typedef struct _ini_comp_user{
  27. DWORD _dwCurrentObject;
  28. LPWSTR szComputerName;
  29. LPWSTR szGroupName;
  30. LPBYTE _pBuffer;
  31. NWCONN_HANDLE _hConn;
  32. }INI_COMP_USER, *PINI_COMP_USER, *LPINI_COMP_USER;
  33. BOOL
  34. NWCOMPATComputerUserOpen(
  35. LPWSTR szComputerName,
  36. LPWSTR szGroupName,
  37. PHANDLE phUser
  38. );
  39. BOOL
  40. NWCOMPATComputerUserEnum(
  41. HANDLE hUser,
  42. DWORD dwRequested,
  43. LPBYTE * ppBuffer,
  44. PDWORD pdwReturned
  45. );
  46. BOOL
  47. NWCOMPATComputerUserGetObject(
  48. HANDLE hUser,
  49. LPUSER_GROUP_ENTRY * ppUserMember
  50. );
  51. BOOL
  52. NWCOMPATComputerUserClose(
  53. HANDLE hUser
  54. );
  55. void
  56. FreeIniCompUser(
  57. PINI_COMP_USER pIniCompGrp
  58. );
  59. BOOL
  60. ComputeComputerUserDataSize(
  61. LPUSER_GROUP_ENTRY * ppUserMembers,
  62. DWORD dwReturned,
  63. PDWORD pdwSize
  64. );
  65. LPBYTE
  66. CopyIniCompUserToCompUser(
  67. LPUSER_GROUP_ENTRY pIntCompGrp,
  68. LPBYTE pExtCompGrp,
  69. LPBYTE pEnd
  70. );
  71. void
  72. FreeIntCompUser(
  73. LPUSER_GROUP_ENTRY pCompUserMember
  74. );
  75. BOOL
  76. BuildComputerUserMember(
  77. HANDLE hUser,
  78. DWORD dwGroupId,
  79. LPUSER_GROUP_ENTRY * ppUserMember
  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 // _USRUTILS_HXX