xref: /netbsd-src/external/gpl3/gcc/dist/libphobos/libdruntime/core/sys/windows/lmbrowsr.d (revision 0a3071956a3a9fdebdbf7f338cf2d439b45fc728)
1 /**
2  * Windows API header module
3  *
4  * Translated from MinGW Windows headers
5  *
6  * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost License 1.0)
7  * Source: $(DRUNTIMESRC core/sys/windows/_lmbrowsr.d)
8  */
9 module core.sys.windows.lmbrowsr;
10 version (Windows):
11 @system:
12 
13 import core.sys.windows.lmcons, core.sys.windows.windef;
14 
15 enum BROWSER_ROLE_PDC = 1;
16 enum BROWSER_ROLE_BDC = 2;
17 
18 struct BROWSER_STATISTICS {
19     LARGE_INTEGER StatisticsStartTime;
20     LARGE_INTEGER NumberOfServerAnnouncements;
21     LARGE_INTEGER NumberOfDomainAnnouncements;
22     ULONG NumberOfElectionPackets;
23     ULONG NumberOfMailslotWrites;
24     ULONG NumberOfGetBrowserServerListRequests;
25     ULONG NumberOfServerEnumerations;
26     ULONG NumberOfDomainEnumerations;
27     ULONG NumberOfOtherEnumerations;
28     ULONG NumberOfMissedServerAnnouncements;
29     ULONG NumberOfMissedMailslotDatagrams;
30     ULONG NumberOfMissedGetBrowserServerListRequests;
31     ULONG NumberOfFailedServerAnnounceAllocations;
32     ULONG NumberOfFailedMailslotAllocations;
33     ULONG NumberOfFailedMailslotReceives;
34     ULONG NumberOfFailedMailslotWrites;
35     ULONG NumberOfFailedMailslotOpens;
36     ULONG NumberOfDuplicateMasterAnnouncements;
37     LARGE_INTEGER NumberOfIllegalDatagrams;
38 }
39 alias BROWSER_STATISTICS* PBROWSER_STATISTICS, LPBROWSER_STATISTICS;
40 
41 struct BROWSER_STATISTICS_100 {
42     LARGE_INTEGER StartTime;
43     LARGE_INTEGER NumberOfServerAnnouncements;
44     LARGE_INTEGER NumberOfDomainAnnouncements;
45     ULONG NumberOfElectionPackets;
46     ULONG NumberOfMailslotWrites;
47     ULONG NumberOfGetBrowserServerListRequests;
48     LARGE_INTEGER NumberOfIllegalDatagrams;
49 }
50 alias BROWSER_STATISTICS_100* PBROWSER_STATISTICS_100;
51 
52 struct BROWSER_STATISTICS_101 {
53     LARGE_INTEGER StartTime;
54     LARGE_INTEGER NumberOfServerAnnouncements;
55     LARGE_INTEGER NumberOfDomainAnnouncements;
56     ULONG NumberOfElectionPackets;
57     ULONG NumberOfMailslotWrites;
58     ULONG NumberOfGetBrowserServerListRequests;
59     LARGE_INTEGER NumberOfIllegalDatagrams;
60     ULONG NumberOfMissedServerAnnouncements;
61     ULONG NumberOfMissedMailslotDatagrams;
62     ULONG NumberOfMissedGetBrowserServerListRequests;
63     ULONG NumberOfFailedServerAnnounceAllocations;
64     ULONG NumberOfFailedMailslotAllocations;
65     ULONG NumberOfFailedMailslotReceives;
66     ULONG NumberOfFailedMailslotWrites;
67     ULONG NumberOfFailedMailslotOpens;
68     ULONG NumberOfDuplicateMasterAnnouncements;
69 }
70 alias BROWSER_STATISTICS_101* PBROWSER_STATISTICS_101;
71 
72 extern (Windows) {
73     NET_API_STATUS I_BrowserServerEnum(LPCWSTR, LPCWSTR, LPCWSTR, DWORD,
74       PBYTE*, DWORD, PDWORD, PDWORD, DWORD, LPCWSTR, PDWORD);
75     NET_API_STATUS I_BrowserServerEnumEx(LPCWSTR, LPCWSTR, LPCWSTR, DWORD,
76       PBYTE*, DWORD, PDWORD, PDWORD, DWORD, LPCWSTR, LPCWSTR);
77     NET_API_STATUS I_BrowserQueryEmulatedDomains(LPWSTR, PBYTE*, PDWORD);
78     NET_API_STATUS I_BrowserQueryOtherDomains(LPCWSTR, PBYTE*, PDWORD, PDWORD);
79     NET_API_STATUS I_BrowserResetNetlogonState(LPCWSTR);
80     NET_API_STATUS I_BrowserSetNetlogonState(LPWSTR, LPWSTR, LPWSTR, DWORD);
81     NET_API_STATUS I_BrowserQueryStatistics(LPCWSTR, LPBROWSER_STATISTICS*);
82     NET_API_STATUS I_BrowserResetStatistics(LPCWSTR);
83     WORD I_BrowserServerEnumForXactsrv(LPCWSTR, LPCWSTR, ULONG, USHORT, PVOID,
84       WORD, DWORD, PDWORD, PDWORD, DWORD, LPCWSTR, LPCWSTR, PWORD);
85     NET_API_STATUS I_BrowserDebugTrace(PWCHAR, PCHAR);
86 }
87