1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6#ifndef _LMSTATS_
7#define _LMSTATS_
8
9#ifdef __cplusplus
10extern "C" {
11#endif
12
13#include <lmcons.h>
14
15  NET_API_STATUS WINAPI NetStatisticsGet(LMSTR server,LMSTR service,DWORD level,DWORD options,LPBYTE *bufptr);
16
17#ifdef LM20_WORKSTATION_STATISTICS
18  typedef struct _STAT_WORKSTATION_0 {
19    DWORD stw0_start;
20    DWORD stw0_numNCB_r;
21    DWORD stw0_numNCB_s;
22    DWORD stw0_numNCB_a;
23    DWORD stw0_fiNCB_r;
24    DWORD stw0_fiNCB_s;
25    DWORD stw0_fiNCB_a;
26    DWORD stw0_fcNCB_r;
27    DWORD stw0_fcNCB_s;
28    DWORD stw0_fcNCB_a;
29    DWORD stw0_sesstart;
30    DWORD stw0_sessfailcon;
31    DWORD stw0_sessbroke;
32    DWORD stw0_uses;
33    DWORD stw0_usefail;
34    DWORD stw0_autorec;
35    DWORD stw0_bytessent_r_lo;
36    DWORD stw0_bytessent_r_hi;
37    DWORD stw0_bytesrcvd_r_lo;
38    DWORD stw0_bytesrcvd_r_hi;
39    DWORD stw0_bytessent_s_lo;
40    DWORD stw0_bytessent_s_hi;
41    DWORD stw0_bytesrcvd_s_lo;
42    DWORD stw0_bytesrcvd_s_hi;
43    DWORD stw0_bytessent_a_lo;
44    DWORD stw0_bytessent_a_hi;
45    DWORD stw0_bytesrcvd_a_lo;
46    DWORD stw0_bytesrcvd_a_hi;
47    DWORD stw0_reqbufneed;
48    DWORD stw0_bigbufneed;
49  } STAT_WORKSTATION_0,*PSTAT_WORKSTATION_0,*LPSTAT_WORKSTATION_0;
50#else
51  typedef struct _STAT_WORKSTATION_0 {
52    LARGE_INTEGER StatisticsStartTime;
53
54    LARGE_INTEGER BytesReceived;
55    LARGE_INTEGER SmbsReceived;
56    LARGE_INTEGER PagingReadBytesRequested;
57    LARGE_INTEGER NonPagingReadBytesRequested;
58    LARGE_INTEGER CacheReadBytesRequested;
59    LARGE_INTEGER NetworkReadBytesRequested;
60    LARGE_INTEGER BytesTransmitted;
61    LARGE_INTEGER SmbsTransmitted;
62    LARGE_INTEGER PagingWriteBytesRequested;
63    LARGE_INTEGER NonPagingWriteBytesRequested;
64    LARGE_INTEGER CacheWriteBytesRequested;
65    LARGE_INTEGER NetworkWriteBytesRequested;
66    DWORD InitiallyFailedOperations;
67    DWORD FailedCompletionOperations;
68    DWORD ReadOperations;
69    DWORD RandomReadOperations;
70    DWORD ReadSmbs;
71    DWORD LargeReadSmbs;
72    DWORD SmallReadSmbs;
73    DWORD WriteOperations;
74    DWORD RandomWriteOperations;
75    DWORD WriteSmbs;
76    DWORD LargeWriteSmbs;
77    DWORD SmallWriteSmbs;
78    DWORD RawReadsDenied;
79    DWORD RawWritesDenied;
80    DWORD NetworkErrors;
81    DWORD Sessions;
82    DWORD FailedSessions;
83    DWORD Reconnects;
84    DWORD CoreConnects;
85    DWORD Lanman20Connects;
86    DWORD Lanman21Connects;
87    DWORD LanmanNtConnects;
88    DWORD ServerDisconnects;
89    DWORD HungSessions;
90    DWORD UseCount;
91    DWORD FailedUseCount;
92    DWORD CurrentCommands;
93  } STAT_WORKSTATION_0,*PSTAT_WORKSTATION_0,*LPSTAT_WORKSTATION_0;
94#endif
95
96  typedef struct _STAT_SERVER_0 {
97    DWORD sts0_start;
98    DWORD sts0_fopens;
99    DWORD sts0_devopens;
100    DWORD sts0_jobsqueued;
101    DWORD sts0_sopens;
102    DWORD sts0_stimedout;
103    DWORD sts0_serrorout;
104    DWORD sts0_pwerrors;
105    DWORD sts0_permerrors;
106    DWORD sts0_syserrors;
107    DWORD sts0_bytessent_low;
108    DWORD sts0_bytessent_high;
109    DWORD sts0_bytesrcvd_low;
110    DWORD sts0_bytesrcvd_high;
111    DWORD sts0_avresponse;
112    DWORD sts0_reqbufneed;
113    DWORD sts0_bigbufneed;
114  } STAT_SERVER_0,*PSTAT_SERVER_0,*LPSTAT_SERVER_0;
115
116#define STATSOPT_CLR 1
117#define STATS_NO_VALUE ((unsigned __LONG32) -1)
118#define STATS_OVERFLOW ((unsigned __LONG32) -2)
119
120#ifdef __cplusplus
121}
122#endif
123#endif
124