Vraag : fltdefs.h bron, die door (rllibby) Russell wordt gebruikt

http://www.ndis.com/papers/winpktfilter.htm#W2KPktFilterInterface
De bron was verwijdert in NDIS- documenten verbinding;
Waar kon ik het vinden?  De verbinding.

En ik vraag ook;
Wat
ik zal omzetten om een firewall in uitzicht of 7 van delphi7/9 in werking te stellen?
Waar de bron de  verbinding is.

Dank.
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:
185:
186:
187:
188:
189:
190:
191:
192:
193:
194:
195:
196:
197:
198:
199:
200:
201:
202:
203:
204:
205:
206:
207:
208:
209:
210:
211:
212:
213:
214:
215:
216:
217:
218:
219:
220:
221:
222:
223:
224:
225:
226:
227:
228:
229:
230:
231:
232:
233:
234:
235:
236:
237:
238:
239:
240:
241:
242:
243:
244:
245:
246:
247:
248:
249:
250:
251:
252:
253:
254:
255:
256:
257:
258:
259:
260:
261:
262:
263:
264:
265:
266:
267:
268:
269:
270:
271:
272:
273:
274:
275:
276:
277:
278:
279:
280:
281:
282:
283:
284:
285:
286:
287:
288:
289:
290:
291:
292:
293:
294:
295:
296:
297:
298:
299:
300:
301:
302:
303:
304:
305:
306:
//This was de Delphi omzetting van fltdefs.h, maar waar is de bron?

eenheid fltdefs;
////////////////////////////////////////////////////////////////////////////////
//
//   Delphi omzetting van fltdefs.h voor gebruik met IPHLPAPI.DLL
//
////////////////////////////////////////////////////////////////////////////////
interface

gebruik
  Vensters;

const
  IPHLPAPI          =  „IPHLPAPI.DLL“;

// de serie van de Byte
type
  TByteArray        =  Serie [0. Pred (MaxInt)] van Byte;
  PByteArray        =  ^TByteArray;

// de types van Gegevens
type
  FILTER_HANDLE     =  Wijzer;
  PFILTER_HANDLE    =  ^FILTER_HANDLE;
  INTERFACE_HANDLE  =  Wijzer;
  PINTERFACE_HANDLE =  ^INTERFACE_HANDLE;

// GlobalFilter opsomming
const
  GF_FRAGMENTS      =  2;
  GF_STRONGHOST     =  8;
  GF_FRAGCACHE      =  9;

type
  GLOBAL_FILTER     =  Geheel;
  PGLOBAL_FILTER    =  ^GLOBAL_FILTER;

// PFAddressType opsomming
const
  PF_IPV4           =  0;
  PF_IPV6           =  1;

type
  PFADDRESSTYPE     =  Geheel;
  PPFADDRESSTYPE    =  ^PFADDRESSTYPE;

// PFForwardAction opsomming
const
  PF_ACTION_FORWARD =  0;
  PF_ACTION_DROP    =  1;

type
  PFFORWARD_ACTION  =  Geheel;
  PPFFORWARD_ACTION =  ^PPFFORWARD_ACTION;

// PFFrameType opsomming
const
  PFFT_FILTER       =  1;
  PFFT_FRAG         =  2;
  PFFT_SPOOF        =  3;

type
  PFFRAMETYPE       =  Geheel;
  PPFFRAMETYPE      =  ^PFFRAMETYPE;

type
  _PF_FILTER_DESCRIPTOR   =  pakte verslag in
     dwFilterFlags:       DWORD;
     dwRule:              DWORD;
     pfatType:            PFADDRESSTYPE;
     SrcAddr:             PByteArray;
     SrcMask:             PByteArray;
     DstAddr:             PByteArray;
     DstMask:             PByteArray;
     dwProtocol:          DWORD;
     fLateBound:          DWORD;
     wSrcPort:            Word;
     wDstPort:            Word;
     wSrcPortHighRange:   Word;
     wDstPortHighRange:   Word;
  eind;
  PF_FILTER_DESCRIPTOR    =  _PF_FILTER_DESCRIPTOR;
  PPF_FILTER_DESCRIPTOR   =  ^PF_FILTER_DESCRIPTOR;

type
  _PF_FILTER_STATS        =  pakte verslag in
     dwNumPacketsFiltered: DWORD;
     info:                PF_FILTER_DESCRIPTOR;
  eind;
  PF_FILTER_STATS         =  _PF_FILTER_STATS;
  PPF_FILTER_STATS        =  ^PF_FILTER_STATS;

type
  _PF_INTERFACE_STATS     =  pakte verslag in
     pvDriverContext:     Wijzer;
     dwFlags:             DWORD;
     dwInDrops:           DWORD;
     dwOutDrops:          DWORD;
     eaInAction:          PFFORWARD_ACTION;
     eaOutAction:         PFFORWARD_ACTION;
     dwNumInFilters:      DWORD;
     dwNumOutFilters:     DWORD;
     dwFrag:              DWORD;
     dwSpoof:             DWORD;
     dwReserved1:         DWORD;
     dwReserved2:         DWORD;
     liSyn:               LARGE_INTEGER;
     liTotalLogged:       LARGE_INTEGER;
     dwLostLogEntries:    DWORD;
     FilterInfo:          Serie [0..0] van PF_FILTER_STATS;
  eind;
  PF_INTERFACE_STATS      =  _PF_INTERFACE_STATS;
  PPF_INTERFACE_STATS     =  ^PF_INTERFACE_STATS;

type
  _PF_LATEBIND_INFO       =  pakte verslag in
     SrcAddr:             PByteArray;
     DstAddr:             PByteArray;
     Masker:                PByteArray;
  eind;
  PF_LATEBIND_INFO        =  _PF_LATEBIND_INFO;
  PPF_LATEBIND_INFO       =  ^PF_LATEBIND_INFO;

type
  _PFLOGFRAME             =  pakte verslag in
     Timestamp:           LARGE_INTEGER;
     pfeTypeOfFrame:      PFFRAMETYPE;
     dwTotalSizeUsed:     DWORD;
     dwFilterRule:        DWORD;
     wSizeOfAdditionalData: Word;
     wSizeOfIpHeader:     Word;
     dwInterfaceName:     DWORD;
     dwIPIndex:           DWORD;
     bPacketData:         Serie [0..0] van Byte;
  eind;
  PFLOGFRAME              =  _PFLOGFRAME;
  PPFLOGFRAME             =  ^PFLOGFRAME;

const
  FILTER_PROTO_ANY        =  $00;
  FILTER_PROTO_ICMP       =  $01;
  FILTER_PROTO_TCP        =  $06;
  FILTER_PROTO_UDP        =  $11;
  FILTER_TCPUDP_PORT_ANY  =  $00;

const
  FILTER_ICMP_TYPE_ANY    =  $FF;
  FILTER_ICMP_CODE_ANY    =  $FF;

const
  FD_FLAGS_NOSYN          =  $01;
  FD_FLAGS_ALLFLAGS       =  FD_FLAGS_NOSYN;

const
  LB_SRC_ADDR_USE_SRCADDR_FLAG  =  $00000001;
  LB_SRC_ADDR_USE_DSTADDR_FLAG  =  $00000002;
  LB_DST_ADDR_USE_SRCADDR_FLAG  =  $00000004;
  LB_DST_ADDR_USE_DSTADDR_FLAG  =  $00000008;
  LB_SRC_MASK_LATE_FLAG         =  $00000010;
  LB_DST_MASK_LATE_FLAG         =  $00000020;

const
  ERROR_BASE                    =  23000;
  PFERROR_NO_PF_INTERFACE       =  (ERROR_BASE + 0); nooit teruggekeerd //.
  PFERROR_NO_FILTERS_GIVEN      =  (ERROR_BASE + 1);
  PFERROR_BUFFER_TOO_SMALL      =  (ERROR_BASE + 2);
  ERROR_IPV6_NOT_IMPLEMENTED    =  (ERROR_BASE + 3);

////////////////////////////////////////////////////////////////////////////////
//
// de functies van de Filter door IPHLPAPI worden uitgevoerd die
//
////////////////////////////////////////////////////////////////////////////////
functie   PfCreateInterface (
           dwName:           DWORD;
           inactiviteit:         PFFORWARD_ACTION;
           outAction:        PFFORWARD_ACTION;
           bUseLog:          BOOL;
           bMustBeUnique:    BOOL;
           var ppInterface:  INTERFACE_HANDLE): DWORD;
           stdcall; externe IPHLPAPI naam „_PfCreateInterface@24“;

functie   PfDeleteInterface (
           pInterface:       INTERFACE_HANDLE): DWORD;
           stdcall; externe IPHLPAPI naam „_PfDeleteInterface@4“;

functie   PfAddFiltersToInterface (
           ih:               INTERFACE_HANDLE;
           cInFilters:       DWORD;
           pfiltIn:          PPF_FILTER_DESCRIPTOR;
           cOutFilters:      DWORD;
           pfiltOut:         PPF_FILTER_DESCRIPTOR;
           pfHandle:         PFILTER_HANDLE): DWORD;
           stdcall; externe IPHLPAPI naam „_PfAddFiltersToInterface@24“;

functie   PfRemoveFiltersFromInterface (
           ih:               INTERFACE_HANDLE;
           cInFilters:       DWORD;
           pfiltIn:          PPF_FILTER_DESCRIPTOR;
           cOutFilters:      DWORD;
           pfiltOut:         PPF_FILTER_DESCRIPTOR): DWORD;
           stdcall; externe IPHLPAPI naam „_PfRemoveFiltersFromInterface@20“;

functie   PfRemoveFilterHandles (
           pInterface:       INTERFACE_HANDLE;
           cFilters:         DWORD;
           pvHandles:        PFILTER_HANDLE): DWORD;
           stdcall; externe IPHLPAPI naam „_PfRemoveFilterHandles@12“;

functie   PfUnBindInterface (
           pInterface:       INTERFACE_HANDLE): DWORD;
           stdcall; externe IPHLPAPI naam „_PfUnBindInterface@4“;

functie   PfBindInterfaceToIndex (
           pInterface:       INTERFACE_HANDLE;
           dwIndex:          DWORD;
           pfatLinkType:     PFADDRESSTYPE;
           LinkIPAddress:    PByteArray): DWORD;
           stdcall; externe IPHLPAPI naam „_PfBindInterfaceToIndex@16“;

functie   PfBindInterfaceToIPAddress (
           pInterface:       INTERFACE_HANDLE;
           pfatLinkType:     PFADDRESSTYPE;
           IPAddress:        PByteArray): DWORD;
           stdcall; externe IPHLPAPI naam „_PfBindInterfaceToIPAddress@12“;

functie   PfRebindFilters (
           pInterface:       INTERFACE_HANDLE;
           pLateBindInfo:    PPF_LATEBIND_INFO): DWORD;
           stdcall; externe IPHLPAPI naam „_PfRebindFilters@8“;

functie   PfAddGlobalFilterToInterface (
           pInterface:       INTERFACE_HANDLE;
           gfFilter:         GLOBAL_FILTER): DWORD;
           stdcall; externe IPHLPAPI naam „_PfAddGlobalFilterToInterface@8“;

functie   PfRemoveGlobalFilterFromInterface (
           pInterface:       INTERFACE_HANDLE;
           gfFilter:         GLOBAL_FILTER): DWORD;
           stdcall; externe IPHLPAPI naam „_PfRemoveGlobalFilterFromInterface@8“;

////////////////////////////////////////////////////////////////////////////////
//
Het Logboek APIs van //. Merk op dat er hoogstens één logboek is en het moet worden gecre�ërd
// vóór om het even welke interface die het gecre�ërd vereisen wordt. Er is geen manier om a te plaatsen
// logboek op een bestaande interface. Het logboek kan op om het even welk worden toegepast of elk van
// de interfaces.
//
///////////////////////////////////////////////////////////////////////
functie   PfMakeLog (
           hEvent:           T-hendel): DWORD;
           stdcall; externe IPHLPAPI naam „_PfMakeLog@4“;

functie   PfSetLogBuffer (
           pbBuffer:         PByteArray;
           dwSize:           DWORD;
           dwThreshold:      DWORD;
           dwEntries:        DWORD;
           pdwLoggedEntries: PDWORD;
           pdwLostEntries:   PDWORD;
           pdwSizeUsed:      PDWORD): DWORD;
           stdcall; externe IPHLPAPI naam „_PfSetLogBuffer@28“;

functie   PfDeleteLog (
           ): DWORD;
           stdcall; externe IPHLPAPI naam „_PfDeleteLog@0“;

////////////////////////////////////////////////////////////////////////////////
//
// krijgt statistieken. De nota pdwBufferSize in een parameter IN/OUT. Als
// ERROR_INSUFFICIENT_BUFFER is teruggekeerd, zijn de gemeenschappelijke statistieken
beschikbaar // en de correcte bytetelling zijn binnen *pdwBufferSize. Als slechts
// de interfacestatistieken zijn nodig, verstrekken een buffer van grootte
// slechts PF_INTERFACE_STATS. Als de filterbeschrijvingen ook nodig zijn,
// levert dan een grote buffer, of gebruikt de teruggekeerde telling van de eerste vraag
// om een buffer van voldoende grootte toe te wijzen. Neem nota van dat voor een gedeelde interface,
// deze tweede vraag met ERROR_INSUFFICIENT_BUFFER kan ontbreken. Dit kan gebeuren
// als andere sharers filters in de tussentijd toevoegen. Dit zou niet moeten gebeuren voor
// een UNIEKE interface.
//
////////////////////////////////////////////////////////////////////////////////
functie   PfGetInterfaceStatistics (
           pInterface:       INTERFACE_HANDLE;
           ppfStats:         PPF_INTERFACE_STATS;
           pdwBufferSize:    PDWORD;
           fResetCounters:   BOOL): DWORD;
           stdcall; externe IPHLPAPI naam „_PfGetInterfaceStatistics@16“;

////////////////////////////////////////////////////////////////////////////////
//
// Test een pakket. Deze vraag zal het pakket tegen gegeven evalueren
// de interfaces en keren de het filtreren actie terug.
//
////////////////////////////////////////////////////////////////////////////////
functie   PfTestPacket (
           pInInterface:     INTERFACE_HANDLE;
           pOutInterface:    INTERFACE_HANDLE;
           cBytes:           DWORD;
           pbPacket:         PByteArray;
           ppAction:         PPFFORWARD_ACTION): DWORD;
           stdcall; externe IPHLPAPI naam „_PfTestPacket@20“;

implementatie

eind.

Antwoord : fltdefs.h bron, die door (rllibby) Russell wordt gebruikt

DNS wordt gevestigd in uw Controlemechanisme van het Domein voor mensen op uw domein (netwerk).  Whomever ontvangt uw externe DNS of uw ISP of iets als de Oplossingen van het Netwerk u zou moeten te weten komen.

Als u OWA verandert zonder registreert het bijwerken van DNS hoewel uw gebruikers OWA niet zullen kunnen vinden aangezien DNS is hoe de computers materiaal op Internet vinden.  

Dank
Andere oplossingen  
 
programming4us programming4us