TAP-Win32 is the win32 equivalent of linux/unix tun tap devices. i need to: - discover installed taps - set device options (Dont need ip and etc, just the basic ioctls) - read and write to device (after set up it becomes just a simple file)
i tried this : Uses Windows, Classes; Const TAP_Device = '\\\\.\\Global\\{44F7688F-77FA-43DC-8D8F-9CBA23E01BB0}.tap'; Var Handle : Integer; Buffer : Pointer; Stream : THandleStream; Count : Integer; Begin Handle := CreateFile(PChar(TAP_Device), GENERIC_READ Or GENERIC_WRITE, 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_SYSTEM Or FILE_FLAG_OVERLAPPED, 0); WriteLn(Handle); Stream := THandleStream.Create(Handle); Buffer := GetMem(2048); Repeat Count := Stream.Read(Buffer^, 2048); If Count > 0 Then WriteLn('Got ', Count, ' bytes !'); Stream.Write(Buffer^, Count); Until False; Stream.Free; FreeMem(Buffer, 2048); CloseHandle(Handle); End. (translated from a C# example) but the handle returned is always -1 (The guid is correct as returned by openvpn) 2010/5/13 Marc Weustink <m...@dommelstein.net>: > Felipe Monteiro de Carvalho wrote: >> >> What does TAP stand for? > > see http://en.wikipedia.org/wiki/TUN/TAP for some pointers. > > Marc > > > > _______________________________________________ > fpc-pascal maillist - fpc-pas...@lists.freepascal.org > http://lists.freepascal.org/mailman/listinfo/fpc-pascal > _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal