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 112