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.

97 lines
1.9 KiB

  1. /*++
  2. Copyright (c) 1991-92 Microsoft Corporation
  3. Module Name:
  4. UASCache.h
  5. Abstract:
  6. Data structures for logged on user cache.
  7. Author:
  8. Shanku Niyogi (W-SHANKN) 24-Oct-1991
  9. Revision History:
  10. 24-Oct-1991 w-shankn
  11. Ported from LM2.0 code.
  12. 07-Feb-1992 JohnRo
  13. Made changes suggested by PC-LINT.
  14. 18-Mar-1992 JohnRo
  15. Allow inclusion multiple times.
  16. --*/
  17. #ifndef _UASCACHE_
  18. #define _UASCACHE_
  19. #include <packon.h> // Needed to avoid alignment
  20. //
  21. // Forward declarations for recursive structures.
  22. //
  23. typedef struct _UAS_USER_CACHE_0 UAS_USER_CACHE_0, *LPUAS_USER_CACHE_0;
  24. //
  25. // Structure of a Global User IDentifier
  26. //
  27. typedef struct _UAS_GUID {
  28. WORD guid_uid; // LM10 style user id
  29. DWORD guid_serial; // user record serial number
  30. BYTE guid_rsvd[10]; // pad out to 16 bytes for now
  31. } UAS_GUID;
  32. //
  33. // Structure of a logon record in the UAS cache
  34. //
  35. struct _UAS_USER_CACHE_0 { // typedef'ed above.
  36. UAS_GUID uc0_guid; // GUID for this user
  37. DWORD uc0_auth_flags; // operator privilege flag
  38. WORD uc0_priv; // bit0-1: 0 guest, 1 user, 2 admin
  39. WORD uc0_num_reqs; // use count for this record
  40. BYTE uc0_groups[32]; // group membership bit map
  41. LPUAS_USER_CACHE_0 uc0_next; // pointer to the next
  42. };
  43. typedef UAS_USER_CACHE_0 UAS_USER, *LPUAS_USER;
  44. //
  45. // Structure of a group record in the UAS cache
  46. //
  47. typedef struct _UAS_GROUP_CACHE_0 {
  48. UAS_GUID gc0_guid; // GUID for this group
  49. } UAS_GROUP_CACHE_0, *LPUAS_GROUP_CACHE_0;
  50. //
  51. // UAS info struct for SSI and update APIs
  52. //
  53. typedef struct _UAS_INFO_0 {
  54. BYTE uas0_computer[LM20_CNLEN+1];
  55. DWORD uas0_time_created;
  56. DWORD uas0_serial_number;
  57. } UAS_INFO_0, *LPUAS_INFO_0;
  58. #include <packoff.h>
  59. #endif // _UASCACHE_