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.

222 lines
3.5 KiB

  1. /*++
  2. Copyright (c) 1990 Microsoft Corporation
  3. Module Name:
  4. bowdata.h
  5. Abstract:
  6. Redirector global data structure definition
  7. Author:
  8. Larry Osterman (LarryO) 30-May-1990
  9. Revision History:
  10. 30-May-1990 LarryO
  11. Created
  12. --*/
  13. #ifndef _BOWDATA_
  14. #define _BOWDATA_
  15. #define SERVERS_PER_BACKUP 32
  16. #define MIN_CONFIGURED_BROWSERS 1
  17. #define MAX_BROWSE_ENTRIES (100000)
  18. #define MASTER_TIME_UP 15*60*1000
  19. #define NUMBER_IGNORED_PROMOTIONS 10
  20. #define HOST_ANNOUNCEMENT_AGE 3
  21. //
  22. //
  23. //
  24. typedef struct _BowserData {
  25. BOOLEAN Initialized; // True iff redirector has been started
  26. LONG NumberOfMailslotBuffers; // Number of buffers to receive mailslots
  27. LONG NumberOfServerAnnounceBuffers; // Number of buffers for server announcements
  28. LONG IllegalDatagramThreshold; // Max number of illegal datagrams/frequency
  29. LONG EventLogResetFrequency; // Number of seconds between resetting counter.
  30. BOOLEAN ProcessHostAnnouncements;
  31. BOOLEAN MaintainServerList;
  32. BOOLEAN IsLanmanNt;
  33. #ifdef ENABLE_PSEUDO_BROWSER
  34. DWORD PseudoServerLevel;
  35. #endif
  36. } BOWSERDATA, *PBOWSERDATA;
  37. typedef struct _BOWSER_CONFIG_INFO {
  38. LPWSTR ConfigParameterName;
  39. PVOID ConfigValue;
  40. ULONG ConfigValueType;
  41. ULONG ConfigValueSize;
  42. } BOWSER_CONFIG_INFO, *PBOWSER_CONFIG_INFO;
  43. extern
  44. BOWSER_CONFIG_INFO
  45. BowserConfigEntries[];
  46. //
  47. // Private boolean type used by redirector only.
  48. //
  49. // Maps to REG_DWORD, with value != 0
  50. //
  51. #define REG_BOOLEAN (0xffffffff)
  52. #define REG_BOOLEAN_SIZE (sizeof(DWORD))
  53. //
  54. //
  55. //
  56. // Bowser Data variables
  57. //
  58. //
  59. //
  60. extern
  61. ERESOURCE
  62. BowserNameResource;
  63. extern
  64. UNICODE_STRING
  65. BowserNameString;
  66. extern
  67. LIST_ENTRY
  68. BowserNameHead;
  69. extern
  70. KSPIN_LOCK
  71. BowserTimeSpinLock;
  72. extern
  73. KSPIN_LOCK
  74. BowserMailslotSpinLock;
  75. extern
  76. PKEVENT
  77. BowserServerAnnouncementEvent;
  78. extern
  79. struct _BOWSER_FS_DEVICE_OBJECT *
  80. BowserDeviceObject;
  81. extern
  82. ERESOURCE
  83. BowserDataResource; // Resource controlling Bowser data.
  84. extern
  85. BOWSERDATA
  86. BowserData; // Structure protected by resource
  87. extern ULONG BowserOperationCount;
  88. #define BOWSER_DEFAULT_IRP_STACK_SIZE 4
  89. extern
  90. ULONG
  91. BowserIrpStackSize;
  92. extern
  93. ULONG
  94. BowserCurrentTime;
  95. extern
  96. LARGE_INTEGER
  97. BowserStartTime;
  98. extern
  99. KSPIN_LOCK
  100. BowserTransportMasterNameSpinLock;
  101. extern
  102. PEPROCESS
  103. BowserFspProcess;
  104. extern
  105. LONG
  106. BowserEventLogResetFrequency;
  107. extern
  108. LONG
  109. BowserIllegalDatagramCount;
  110. extern
  111. BOOLEAN
  112. BowserIllegalDatagramThreshold;
  113. extern
  114. LONG
  115. BowserIllegalNameCount;
  116. extern
  117. BOOLEAN
  118. BowserIllegalNameThreshold;
  119. extern
  120. BOOLEAN
  121. BowserLogElectionPackets;
  122. extern
  123. BOWSER_STATISTICS
  124. BowserStatistics;
  125. extern
  126. KSPIN_LOCK
  127. BowserStatisticsLock;
  128. extern
  129. ULONG
  130. BowserNumberOfMissedMailslotDatagrams;
  131. extern
  132. ULONG
  133. BowserNumberOfMissedGetBrowserServerListRequests;
  134. extern
  135. ULONG
  136. BowserMailslotDatagramThreshold;
  137. extern
  138. ULONG
  139. BowserGetBrowserListThreshold;
  140. extern
  141. ULONG
  142. BowserServerDeletionThreshold;
  143. extern
  144. ULONG
  145. BowserDomainDeletionThreshold;
  146. extern
  147. ULONG
  148. BowserFindMasterTimeout;
  149. extern
  150. ULONG
  151. BowserMinimumConfiguredBrowsers;
  152. extern
  153. ULONG
  154. BowserMaximumBrowseEntries;
  155. extern
  156. BOOLEAN
  157. BowserRefuseReset;
  158. extern
  159. ULONG
  160. BowserRandomSeed;
  161. extern
  162. LONG
  163. BowserNumberOfOpenFiles;
  164. #endif // _BOWDATA_