1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
|
/*++ BUILD Version: 0001 // Increment this if a change has global effects
Copyright (c) 1991-1996 Microsoft Corporation
Module Name:
lmstats.h
Abstract:
This module defines the API function prototypes and data structures
for the following groups of NT API functions:
NetStatistics
Environment:
User Mode - Win32
Notes:
You must include NETCONS.H before this file, since this file depends
on values defined in NETCONS.H.
--*/
#ifndef _LMSTATS_
#define _LMSTATS_
#ifdef __cplusplus
extern "C" {
#endif
//
// Function Prototypes - Statistics
//
NET_API_STATUS NET_API_FUNCTION
NetStatisticsGet (
IN LPTSTR server,
IN LPTSTR service,
IN DWORD level,
IN DWORD options,
OUT LPBYTE *bufptr
);
//
// Data Structures - Statistics
//
#ifdef LM20_WORKSTATION_STATISTICS
typedef struct _STAT_WORKSTATION_0 {
DWORD stw0_start;
DWORD stw0_numNCB_r;
DWORD stw0_numNCB_s;
DWORD stw0_numNCB_a;
DWORD stw0_fiNCB_r;
DWORD stw0_fiNCB_s;
DWORD stw0_fiNCB_a;
DWORD stw0_fcNCB_r;
DWORD stw0_fcNCB_s;
DWORD stw0_fcNCB_a;
DWORD stw0_sesstart;
DWORD stw0_sessfailcon;
DWORD stw0_sessbroke;
DWORD stw0_uses;
DWORD stw0_usefail;
DWORD stw0_autorec;
DWORD stw0_bytessent_r_lo;
DWORD stw0_bytessent_r_hi;
DWORD stw0_bytesrcvd_r_lo;
DWORD stw0_bytesrcvd_r_hi;
DWORD stw0_bytessent_s_lo;
DWORD stw0_bytessent_s_hi;
DWORD stw0_bytesrcvd_s_lo;
DWORD stw0_bytesrcvd_s_hi;
DWORD stw0_bytessent_a_lo;
DWORD stw0_bytessent_a_hi;
DWORD stw0_bytesrcvd_a_lo;
DWORD stw0_bytesrcvd_a_hi;
DWORD stw0_reqbufneed;
DWORD stw0_bigbufneed;
} STAT_WORKSTATION_0, *PSTAT_WORKSTATION_0, *LPSTAT_WORKSTATION_0;
#else
//
// NB: The following structure is REDIR_STATISTICS in sdk\inc\ntddnfs.h. If you
// change the structure, change it in both places
//
typedef struct _STAT_WORKSTATION_0 {
LARGE_INTEGER StatisticsStartTime;
LARGE_INTEGER BytesReceived;
LARGE_INTEGER SmbsReceived;
LARGE_INTEGER PagingReadBytesRequested;
LARGE_INTEGER NonPagingReadBytesRequested;
LARGE_INTEGER CacheReadBytesRequested;
LARGE_INTEGER NetworkReadBytesRequested;
LARGE_INTEGER BytesTransmitted;
LARGE_INTEGER SmbsTransmitted;
LARGE_INTEGER PagingWriteBytesRequested;
LARGE_INTEGER NonPagingWriteBytesRequested;
LARGE_INTEGER CacheWriteBytesRequested;
LARGE_INTEGER NetworkWriteBytesRequested;
DWORD InitiallyFailedOperations;
DWORD FailedCompletionOperations;
DWORD ReadOperations;
DWORD RandomReadOperations;
DWORD ReadSmbs;
DWORD LargeReadSmbs;
DWORD SmallReadSmbs;
DWORD WriteOperations;
DWORD RandomWriteOperations;
DWORD WriteSmbs;
DWORD LargeWriteSmbs;
DWORD SmallWriteSmbs;
DWORD RawReadsDenied;
DWORD RawWritesDenied;
DWORD NetworkErrors;
// Connection/Session counts
DWORD Sessions;
DWORD FailedSessions;
DWORD Reconnects;
DWORD CoreConnects;
DWORD Lanman20Connects;
DWORD Lanman21Connects;
DWORD LanmanNtConnects;
DWORD ServerDisconnects;
DWORD HungSessions;
DWORD UseCount;
DWORD FailedUseCount;
//
// Queue Lengths (updates protected by RdrMpxTableSpinLock NOT
// RdrStatisticsSpinlock)
//
DWORD CurrentCommands;
} STAT_WORKSTATION_0, *PSTAT_WORKSTATION_0, *LPSTAT_WORKSTATION_0;
#endif
typedef struct _STAT_SERVER_0 {
DWORD sts0_start;
DWORD sts0_fopens;
DWORD sts0_devopens;
DWORD sts0_jobsqueued;
DWORD sts0_sopens;
DWORD sts0_stimedout;
DWORD sts0_serrorout;
DWORD sts0_pwerrors;
DWORD sts0_permerrors;
DWORD sts0_syserrors;
DWORD sts0_bytessent_low;
DWORD sts0_bytessent_high;
DWORD sts0_bytesrcvd_low;
DWORD sts0_bytesrcvd_high;
DWORD sts0_avresponse;
DWORD sts0_reqbufneed;
DWORD sts0_bigbufneed;
} STAT_SERVER_0, *PSTAT_SERVER_0, *LPSTAT_SERVER_0;
//
// Special Values and Constants
//
#define STATSOPT_CLR 1
#define STATS_NO_VALUE ((unsigned long) -1L)
#define STATS_OVERFLOW ((unsigned long) -2L)
#ifdef __cplusplus
}
#endif
#endif // _LMSTATS.H
|