Data Structures | |
struct | _ADAPTER |
Describes an opened network adapter. More... | |
struct | _ADAPTER_INFO |
Contains comprehensive information about a network adapter. More... | |
struct | _PACKET |
Structure that contains a group of packets coming from the driver. More... | |
struct | _PACKET_OID_DATA |
Structure containing an OID request. More... | |
struct | bpf_hdr |
Packet header. More... | |
struct | bpf_insn |
A single BPF pseudo-instruction. More... | |
struct | bpf_program |
A BPF pseudo-assembly program. More... | |
struct | bpf_stat |
Structure that contains a couple of statistics values on the current capture. More... | |
struct | dump_bpf_hdr |
Dump packet header. More... | |
struct | NetType |
Network type structure. More... | |
struct | npf_if_addr |
Addresses of a network adapter. More... | |
Defines | |
#define | PACKET_MODE_CAPT 0x0 |
Capture mode. | |
#define | PACKET_MODE_STAT 0x1 |
Statistical mode. | |
#define | PACKET_MODE_MON 0x2 |
Monitoring mode. | |
#define | PACKET_MODE_DUMP 0x10 |
Dump mode. | |
#define | PACKET_MODE_STAT_DUMP MODE_DUMP | MODE_STAT |
Statistical dump Mode. | |
#define | FILE_DEVICE_PROTOCOL 0x8000 |
#define | IOCTL_PROTOCOL_STATISTICS CTL_CODE(FILE_DEVICE_PROTOCOL, 2 , METHOD_BUFFERED, FILE_ANY_ACCESS) |
#define | IOCTL_PROTOCOL_RESET CTL_CODE(FILE_DEVICE_PROTOCOL, 3 , METHOD_BUFFERED, FILE_ANY_ACCESS) |
#define | IOCTL_PROTOCOL_READ CTL_CODE(FILE_DEVICE_PROTOCOL, 4 , METHOD_BUFFERED, FILE_ANY_ACCESS) |
#define | IOCTL_PROTOCOL_WRITE CTL_CODE(FILE_DEVICE_PROTOCOL, 5 , METHOD_BUFFERED, FILE_ANY_ACCESS) |
#define | IOCTL_PROTOCOL_MACNAME CTL_CODE(FILE_DEVICE_PROTOCOL, 6 , METHOD_BUFFERED, FILE_ANY_ACCESS) |
#define | IOCTL_OPEN CTL_CODE(FILE_DEVICE_PROTOCOL, 7 , METHOD_BUFFERED, FILE_ANY_ACCESS) |
#define | IOCTL_CLOSE CTL_CODE(FILE_DEVICE_PROTOCOL, 8 , METHOD_BUFFERED, FILE_ANY_ACCESS) |
#define | pBIOCSETBUFFERSIZE 9592 |
IOCTL code: set kernel buffer size. | |
#define | pBIOCSETF 9030 |
IOCTL code: set packet filtering program. | |
#define | pBIOCGSTATS 9031 |
IOCTL code: get the capture stats. | |
#define | pBIOCSRTIMEOUT 7416 |
IOCTL code: set the read timeout. | |
#define | pBIOCSMODE 7412 |
IOCTL code: set working mode. | |
#define | pBIOCSWRITEREP 7413 |
IOCTL code: set number of physical repetions of every packet written by the app. | |
#define | pBIOCSMINTOCOPY 7414 |
IOCTL code: set minimum amount of data in the kernel buffer that unlocks a read call. | |
#define | pBIOCSETOID 2147483648 |
IOCTL code: set an OID value. | |
#define | pBIOCQUERYOID 2147483652 |
IOCTL code: get an OID value. | |
#define | pATTACHPROCESS 7117 |
IOCTL code: attach a process to the driver. Used in Win9x only. | |
#define | pDETACHPROCESS 7118 |
IOCTL code: detach a process from the driver. Used in Win9x only. | |
#define | pBIOCSETDUMPFILENAME 9029 |
IOCTL code: set the name of a the file used by kernel dump mode. | |
#define | pBIOCEVNAME 7415 |
IOCTL code: get the name of the event that the driver signals when some data is present in the buffer. | |
#define | pBIOCSENDPACKETSNOSYNC 9032 |
IOCTL code: Send a buffer containing multiple packets to the network, ignoring the timestamps associated with the packets. | |
#define | pBIOCSENDPACKETSSYNC 9033 |
IOCTL code: Send a buffer containing multiple packets to the network, respecting the timestamps associated with the packets. | |
#define | pBIOCSETDUMPLIMITS 9034 |
IOCTL code: Set the dump file limits. See the PacketSetDumpLimits() function. | |
#define | pBIOCISDUMPENDED 7411 |
IOCTL code: Get the status of the kernel dump process. See the PacketIsDumpEnded() function. | |
#define | pBIOCSTIMEZONE 7471 |
IOCTL code: set time zone. Used in Win9x only. | |
#define | Packet_ALIGNMENT sizeof(int) |
Alignment macro. Defines the alignment size. | |
#define | Packet_WORDALIGN(x) (((x)+(Packet_ALIGNMENT-1))&~(Packet_ALIGNMENT-1)) |
Alignment macro. Rounds up to the next even multiple of Packet_ALIGNMENT. | |
#define | NdisMediumNull -1 |
#define | NdisMediumCHDLC -2 |
#define | NdisMediumPPPSerial -3 |
#define | DOSNAMEPREFIX TEXT("Packet_") |
Prefix added to the adapters device names to create the WinPcap devices. | |
#define | MAX_LINK_NAME_LENGTH 64 |
#define | NMAX_PACKET 65535 |
#define | ADAPTER_NAME_LENGTH 256 + 12 |
Maximum length for the name of an adapter. The value is the same used by the IP Helper API. | |
#define | ADAPTER_DESC_LENGTH 128 |
Maximum length for the description of an adapter. The value is the same used by the IP Helper API. | |
#define | MAX_MAC_ADDR_LENGTH 8 |
Maximum length for the link layer address of an adapter. The value is the same used by the IP Helper API. | |
#define | MAX_NETWORK_ADDRESSES 16 |
Maximum length for the link layer address of an adapter. The value is the same used by the IP Helper API. | |
#define | INFO_FLAG_NDIS_ADAPTER 0 |
Flag for ADAPTER_INFO: this is a traditional ndis adapter. | |
#define | INFO_FLAG_NDISWAN_ADAPTER 1 |
Flag for ADAPTER_INFO: this is a NdisWan adapter. | |
#define | INFO_FLAG_DAG_CARD 2 |
Flag for ADAPTER_INFO: this is a DAG card. | |
#define | INFO_FLAG_DAG_FILE 6 |
Flag for ADAPTER_INFO: this is a DAG file. | |
#define | ODS(_x) |
Macro to print a debug string. The behavior differs depending on the debug level. | |
#define | ODSEx(_x, _y) |
Macro to print debug data with the printf convention. The behavior differs depending on the debug level. | |
Typedefs | |
typedef NetType | NetType |
Network type structure. | |
typedef npf_if_addr | npf_if_addr |
Addresses of a network adapter. | |
typedef WAN_ADAPTER_INT | WAN_ADAPTER |
Describes an opened wan (dialup, VPN...) network adapter using the NetMon API. | |
typedef WAN_ADAPTER * | PWAN_ADAPTER |
Describes an opened wan (dialup, VPN...) network adapter using the NetMon API. | |
typedef _ADAPTER_INFO | ADAPTER_INFO |
Contains comprehensive information about a network adapter. | |
typedef _ADAPTER_INFO * | PADAPTER_INFO |
Contains comprehensive information about a network adapter. | |
typedef _ADAPTER | ADAPTER |
Describes an opened network adapter. | |
typedef _ADAPTER * | LPADAPTER |
Describes an opened network adapter. | |
typedef _PACKET | PACKET |
Structure that contains a group of packets coming from the driver. | |
typedef _PACKET * | LPPACKET |
Structure that contains a group of packets coming from the driver. | |
typedef _PACKET_OID_DATA PACKET_OID_DATA * | PPACKET_OID_DATA |
Functions | |
LONG | PacketDumpRegistryKey (PCHAR KeyName, PCHAR FileName) |
Dumps a registry key to disk in text format. Uses regedit. |
|
Maximum length for the description of an adapter. The value is the same used by the IP Helper API.
Definition at line 211 of file Packet32.h. |
|
Maximum length for the name of an adapter. The value is the same used by the IP Helper API.
Definition at line 210 of file Packet32.h. |
|
Prefix added to the adapters device names to create the WinPcap devices.
Definition at line 193 of file Packet32.h. |
|
Definition at line 61 of file Packet32.h. |
|
Flag for ADAPTER_INFO: this is a DAG card.
Definition at line 221 of file Packet32.h. Referenced by PacketCloseAdapter(), PacketGetStats(), PacketGetStatsEx(), PacketOpenAdapter(), PacketSetBpf(), PacketSetBuff(), PacketSetMinToCopy(), PacketSetReadTimeout(), PacketSetSnapLen(), and pcap_open_live(). |
|
Flag for ADAPTER_INFO: this is a DAG file.
Definition at line 222 of file Packet32.h. Referenced by PacketCloseAdapter(). |
|
Flag for ADAPTER_INFO: this is a traditional ndis adapter.
Definition at line 219 of file Packet32.h. Referenced by PacketIsDumpEnded(), PacketOpenAdapter(), PacketRequest(), PacketSendPacket(), PacketSendPackets(), PacketSetDumpLimits(), PacketSetDumpName(), PacketSetHwFilter(), and PacketSetNumWrites(). |
|
Flag for ADAPTER_INFO: this is a NdisWan adapter.
Definition at line 220 of file Packet32.h. Referenced by PacketOpenAdapter(), and PacketSetMinToCopy(). |
|
Definition at line 69 of file Packet32.h. |
|
Definition at line 68 of file Packet32.h. |
|
Definition at line 67 of file Packet32.h. |
|
Definition at line 65 of file Packet32.h. |
|
Definition at line 64 of file Packet32.h. Referenced by NPF_IoControl(). |
|
Definition at line 63 of file Packet32.h. |
|
Definition at line 66 of file Packet32.h. |
|
Definition at line 194 of file Packet32.h. |
|
Maximum length for the link layer address of an adapter. The value is the same used by the IP Helper API.
Definition at line 212 of file Packet32.h. |
|
Maximum length for the link layer address of an adapter. The value is the same used by the IP Helper API.
Definition at line 213 of file Packet32.h. |
|
Definition at line 99 of file Packet32.h. Referenced by pcap_open_live(). |
|
Definition at line 98 of file Packet32.h. Referenced by pcap_open_live(). |
|
Definition at line 100 of file Packet32.h. Referenced by pcap_open_live(). |
|
Definition at line 195 of file Packet32.h. |
|
Value: { \ FILE *f; \ f = fopen("winpcap_debug.txt", "a"); \ fprintf(f, "%s", _x); \ fclose(f); \ }
Definition at line 317 of file Packet32.h. Referenced by DllMain(), PacketAllocatePacket(), PacketGetAdapterNames(), PacketGetFileVersion(), PacketGetNetInfoEx(), PacketGetNetType(), PacketInstallDriver(), PacketIsDumpEnded(), PacketOpenAdapterNPF(), PacketSendPacket(), PacketSendPackets(), PacketSetDumpLimits(), PacketSetDumpName(), PacketSetHwFilter(), PacketSetMaxLookaheadsize(), PacketSetNumWrites(), and PacketSetReadEvt(). |
|
Value: { \ FILE *f; \ f = fopen("winpcap_debug.txt", "a"); \ fprintf(f, _x, _y); \ fclose(f); \ }
Definition at line 327 of file Packet32.h. Referenced by PacketGetAdapterNames(), PacketGetFileVersion(), PacketInstallDriver(), PacketOpenAdapter(), PacketOpenAdapterNPF(), and PacketRequest(). |
|
Alignment macro. Defines the alignment size.
Definition at line 93 of file Packet32.h. |
|
Capture mode.
Definition at line 54 of file Packet32.h. |
|
Dump mode.
Definition at line 57 of file Packet32.h. |
|
Monitoring mode.
Definition at line 56 of file Packet32.h. |
|
Statistical mode.
Definition at line 55 of file Packet32.h. |
|
Statistical dump Mode.
Definition at line 58 of file Packet32.h. |
|
Alignment macro. Rounds up to the next even multiple of Packet_ALIGNMENT.
Definition at line 95 of file Packet32.h. Referenced by NPF_Read(), and PrintPackets(). |
|
IOCTL code: attach a process to the driver. Used in Win9x only.
Definition at line 80 of file Packet32.h. |
|
IOCTL code: get the name of the event that the driver signals when some data is present in the buffer.
Definition at line 83 of file Packet32.h. |
|
IOCTL code: get the capture stats.
Definition at line 73 of file Packet32.h. |
|
IOCTL code: Get the status of the kernel dump process. See the PacketIsDumpEnded() function.
Definition at line 87 of file Packet32.h. |
|
IOCTL code: get an OID value.
Definition at line 79 of file Packet32.h. |
|
IOCTL code: Send a buffer containing multiple packets to the network, ignoring the timestamps associated with the packets.
Definition at line 84 of file Packet32.h. |
|
IOCTL code: Send a buffer containing multiple packets to the network, respecting the timestamps associated with the packets.
Definition at line 85 of file Packet32.h. |
|
IOCTL code: set kernel buffer size.
Definition at line 71 of file Packet32.h. |
|
IOCTL code: set the name of a the file used by kernel dump mode.
Definition at line 82 of file Packet32.h. |
|
IOCTL code: Set the dump file limits. See the PacketSetDumpLimits() function.
Definition at line 86 of file Packet32.h. |
|
IOCTL code: set packet filtering program.
Definition at line 72 of file Packet32.h. |
|
IOCTL code: set an OID value.
Definition at line 78 of file Packet32.h. |
|
IOCTL code: set minimum amount of data in the kernel buffer that unlocks a read call.
Definition at line 77 of file Packet32.h. |
|
IOCTL code: set working mode.
Definition at line 75 of file Packet32.h. |
|
IOCTL code: set the read timeout.
Definition at line 74 of file Packet32.h. |
|
IOCTL code: set time zone. Used in Win9x only.
Definition at line 89 of file Packet32.h. |
|
IOCTL code: set number of physical repetions of every packet written by the app.
Definition at line 76 of file Packet32.h. |
|
IOCTL code: detach a process from the driver. Used in Win9x only.
Definition at line 81 of file Packet32.h. |
|
Describes an opened network adapter. This structure is the most important for the functioning of packet.dll, but the great part of its fields should be ignored by the user, since the library offers functions that avoid to cope with low-level parameters |
|
Contains comprehensive information about a network adapter. This structure is filled with all the accessory information that the user can need about an adapter installed on his system. |
|
Describes an opened network adapter. This structure is the most important for the functioning of packet.dll, but the great part of its fields should be ignored by the user, since the library offers functions that avoid to cope with low-level parameters |
|
Structure that contains a group of packets coming from the driver. This structure defines the header associated with every packet delivered to the application. |
|
Network type structure. This structure is used by the PacketGetNetType() function to return information on the current adapter's type and speed. |
|
Addresses of a network adapter. This structure is used by the PacketGetNetInfoEx() function to return the IP addresses associated with an adapter. |
|
Structure that contains a group of packets coming from the driver. This structure defines the header associated with every packet delivered to the application. |
|
Contains comprehensive information about a network adapter. This structure is filled with all the accessory information that the user can need about an adapter installed on his system. |
|
Definition at line 306 of file Packet32.h. Referenced by NPF_IoControl(), NPF_RequestComplete(), PacketSetHwFilter(), and PacketSetMaxLookaheadsize(). |
|
Describes an opened wan (dialup, VPN...) network adapter using the NetMon API.
Definition at line 217 of file Packet32.h. |
|
Describes an opened wan (dialup, VPN...) network adapter using the NetMon API.
Definition at line 216 of file Packet32.h. |
|
Dumps a registry key to disk in text format. Uses regedit.
Let regedit do the dirt work for us Definition at line 394 of file Packet32.c. Referenced by DllMain(). |
documentation. Copyright (c) 2002-2003 Politecnico di Torino. All rights reserved.