Added networking code from Casper Hornstrup
[reactos.git] / reactos / drivers / net / tcpip / include / info.h
1 /*
2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS TCP/IP protocol driver
4 * FILE: include/info.h
5 * PURPOSE: TdiQueryInformation definitions
6 */
7 #ifndef __INFO_H
8 #define __INFO_H
9
10
11 typedef struct IPSNMP_INFO {
12 ULONG Forwarding;
13 ULONG DefaultTTL;
14 ULONG InReceives;
15 ULONG InHdrErrors;
16 ULONG InAddrErrors;
17 ULONG ForwDatagrams;
18 ULONG InUnknownProtos;
19 ULONG InDiscards;
20 ULONG InDelivers;
21 ULONG OutRequests;
22 ULONG RoutingDiscards;
23 ULONG OutDiscards;
24 ULONG OutNoRoutes;
25 ULONG ReasmTimeout;
26 ULONG ReasmReqds;
27 ULONG ReasmOks;
28 ULONG ReasmFails;
29 ULONG FragOks;
30 ULONG FragFails;
31 ULONG FragCreates;
32 ULONG NumIf;
33 ULONG NumAddr;
34 ULONG NumRoutes;
35 } IPSNMP_INFO, *PIPSNMP_INFO;
36
37 typedef struct IPADDR_ENTRY {
38 ULONG Addr;
39 ULONG Index;
40 ULONG Mask;
41 ULONG BcastAddr;
42 ULONG ReasmSize;
43 USHORT Context;
44 USHORT Pad;
45 } IPADDR_ENTRY, *PIPADDR_ENTRY;
46
47 #define IP_MIB_STATS_ID 1
48 #define IP_MIB_ADDRTABLE_ENTRY_ID 0x102
49
50 #define MAX_PHYSADDR_SIZE 8
51
52
53 /* Only UDP is supported */
54 #define TDI_SERVICE_FLAGS (TDI_SERVICE_CONNECTIONLESS_MODE | \
55 TDI_SERVICE_BROADCAST_SUPPORTED)
56
57 #define TCP_MIB_STAT_ID 1
58 #define UDP_MIB_STAT_ID 1
59 #define TCP_MIB_TABLE_ID 0x101
60 #define UDP_MIB_TABLE_ID 0x101
61
62 #define TL_INSTANCE 0
63
64
65 typedef struct ADDRESS_INFO {
66 ULONG LocalAddress;
67 ULONG LocalPort;
68 } ADDRESS_INFO, *PADDRESS_INFO;
69
70 typedef union TDI_INFO {
71 TDI_CONNECTION_INFO ConnInfo;
72 TDI_ADDRESS_INFO AddrInfo;
73 TDI_PROVIDER_INFO ProviderInfo;
74 TDI_PROVIDER_STATISTICS ProviderStats;
75 } TDI_INFO, *PTDI_INFO;
76
77
78 TDI_STATUS InfoTdiQueryInformationEx(
79 PTDI_REQUEST Request,
80 TDIObjectID *ID,
81 PNDIS_BUFFER Buffer,
82 PUINT BufferSize,
83 PVOID Context);
84
85 TDI_STATUS InfoTdiSetInformationEx(
86 PTDI_REQUEST Request,
87 TDIObjectID *ID,
88 PVOID Buffer,
89 UINT BufferSize);
90
91 #endif /* __INFO_H */
92
93 /* EOF */