Sync with trunk (r47116), hopefully without breaking anything.
[reactos.git] / include / psdk / lmstats.h
1 #ifndef _LMSTATS_H
2 #define _LMSTATS_H
3
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
7 #define STATSOPT_CLR 1
8 #define STATS_NO_VALUE ((ULONG)-1)
9 #define STATS_OVERFLOW ((ULONG)-2)
10 typedef struct _STAT_SERVER_0 {
11 DWORD sts0_start;
12 DWORD sts0_fopens;
13 DWORD sts0_devopens;
14 DWORD sts0_jobsqueued;
15 DWORD sts0_sopens;
16 DWORD sts0_stimedout;
17 DWORD sts0_serrorout;
18 DWORD sts0_pwerrors;
19 DWORD sts0_permerrors;
20 DWORD sts0_syserrors;
21 DWORD sts0_bytessent_low;
22 DWORD sts0_bytessent_high;
23 DWORD sts0_bytesrcvd_low;
24 DWORD sts0_bytesrcvd_high;
25 DWORD sts0_avresponse;
26 DWORD sts0_reqbufneed;
27 DWORD sts0_bigbufneed;
28 } STAT_SERVER_0,*PSTAT_SERVER_0,*LPSTAT_SERVER_0;
29 #ifdef LM20_WORKSTATION_STATISTICS
30 typedef struct _STAT_WORKSTATION_0 {
31 DWORD stw0_start;
32 DWORD stw0_numNCB_r;
33 DWORD stw0_numNCB_s;
34 DWORD stw0_numNCB_a;
35 DWORD stw0_fiNCB_r;
36 DWORD stw0_fiNCB_s;
37 DWORD stw0_fiNCB_a;
38 DWORD stw0_fcNCB_r;
39 DWORD stw0_fcNCB_s;
40 DWORD stw0_fcNCB_a;
41 DWORD stw0_sesstart;
42 DWORD stw0_sessfailcon;
43 DWORD stw0_sessbroke;
44 DWORD stw0_uses;
45 DWORD stw0_usefail;
46 DWORD stw0_autorec;
47 DWORD stw0_bytessent_r_lo;
48 DWORD stw0_bytessent_r_hi;
49 DWORD stw0_bytesrcvd_r_lo;
50 DWORD stw0_bytesrcvd_r_hi;
51 DWORD stw0_bytessent_s_lo;
52 DWORD stw0_bytessent_s_hi;
53 DWORD stw0_bytesrcvd_s_lo;
54 DWORD stw0_bytesrcvd_s_hi;
55 DWORD stw0_bytessent_a_lo;
56 DWORD stw0_bytessent_a_hi;
57 DWORD stw0_bytesrcvd_a_lo;
58 DWORD stw0_bytesrcvd_a_hi;
59 DWORD stw0_reqbufneed;
60 DWORD stw0_bigbufneed;
61 } STAT_WORKSTATION_0,*PSTAT_WORKSTATION_0,*LPSTAT_WORKSTATION_0;
62 #else
63 typedef struct _STAT_WORKSTATION_0 {
64 LARGE_INTEGER StatisticsStartTime;
65 LARGE_INTEGER BytesReceived;
66 LARGE_INTEGER SmbsReceived;
67 LARGE_INTEGER PagingReadBytesRequested;
68 LARGE_INTEGER NonPagingReadBytesRequested;
69 LARGE_INTEGER CacheReadBytesRequested;
70 LARGE_INTEGER NetworkReadBytesRequested;
71 LARGE_INTEGER BytesTransmitted;
72 LARGE_INTEGER SmbsTransmitted;
73 LARGE_INTEGER PagingWriteBytesRequested;
74 LARGE_INTEGER NonPagingWriteBytesRequested;
75 LARGE_INTEGER CacheWriteBytesRequested;
76 LARGE_INTEGER NetworkWriteBytesRequested;
77 DWORD InitiallyFailedOperations;
78 DWORD FailedCompletionOperations;
79 DWORD ReadOperations;
80 DWORD RandomReadOperations;
81 DWORD ReadSmbs;
82 DWORD LargeReadSmbs;
83 DWORD SmallReadSmbs;
84 DWORD WriteOperations;
85 DWORD RandomWriteOperations;
86 DWORD WriteSmbs;
87 DWORD LargeWriteSmbs;
88 DWORD SmallWriteSmbs;
89 DWORD RawReadsDenied;
90 DWORD RawWritesDenied;
91 DWORD NetworkErrors;
92 DWORD Sessions;
93 DWORD FailedSessions;
94 DWORD Reconnects;
95 DWORD CoreConnects;
96 DWORD Lanman20Connects;
97 DWORD Lanman21Connects;
98 DWORD LanmanNtConnects;
99 DWORD ServerDisconnects;
100 DWORD HungSessions;
101 DWORD UseCount;
102 DWORD FailedUseCount;
103 DWORD CurrentCommands;
104 } STAT_WORKSTATION_0,*PSTAT_WORKSTATION_0,*LPSTAT_WORKSTATION_0;
105 #endif
106
107 NET_API_STATUS WINAPI NetStatisticsGet(LPWSTR,LPWSTR,DWORD,DWORD,PBYTE*);
108 #ifdef __cplusplus
109 }
110 #endif
111 #endif