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.

111 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. CCredentials &Credentials,
  38. PHANDLE phUser
  39. );
  40. BOOL
  41. NWCOMPATComputerUserEnum(
  42. HANDLE hUser,
  43. DWORD dwRequested,
  44. LPBYTE * ppBuffer,
  45. PDWORD pdwReturned
  46. );
  47. BOOL
  48. NWCOMPATComputerUserGetObject(
  49. HANDLE hUser,
  50. LPUSER_GROUP_ENTRY * ppUserMember
  51. );
  52. BOOL
  53. NWCOMPATComputerUserClose(
  54. HANDLE hUser
  55. );
  56. void
  57. FreeIniCompUser(
  58. PINI_COMP_USER pIniCompGrp
  59. );
  60. BOOL
  61. ComputeComputerUserDataSize(
  62. LPUSER_GROUP_ENTRY * ppUserMembers,
  63. DWORD dwReturned,
  64. PDWORD pdwSize
  65. );
  66. LPBYTE
  67. CopyIniCompUserToCompUser(
  68. LPUSER_GROUP_ENTRY pIntCompGrp,
  69. LPBYTE pExtCompGrp,
  70. LPBYTE pEnd
  71. );
  72. void
  73. FreeIntCompUser(
  74. LPUSER_GROUP_ENTRY pCompUserMember
  75. );
  76. BOOL
  77. BuildComputerUserMember(
  78. HANDLE hUser,
  79. DWORD dwGroupId,
  80. LPUSER_GROUP_ENTRY * ppUserMember
  81. );
  82. LPBYTE
  83. PackStrings(
  84. LPWSTR *pSource,
  85. LPBYTE pDest,
  86. DWORD *DestOffsets,
  87. LPBYTE pEnd
  88. );
  89. #ifdef __cplusplus
  90. }
  91. #endif
  92. #endif // _USRUTILS_HXX