FreeRDP
Loading...
Searching...
No Matches
PacketMessage.h
1
20
#ifndef WINPR_WLOG_PACKET_MESSAGE_PRIVATE_H
21
#define WINPR_WLOG_PACKET_MESSAGE_PRIVATE_H
22
23
#include "wlog.h"
24
25
#define PCAP_MAGIC_NUMBER 0xA1B2C3D4
26
27
typedef
struct
28
{
29
UINT32 magic_number;
/* magic number */
30
UINT16 version_major;
/* major version number */
31
UINT16 version_minor;
/* minor version number */
32
INT32 thiszone;
/* GMT to local correction */
33
UINT32 sigfigs;
/* accuracy of timestamps */
34
UINT32 snaplen;
/* max length of captured packets, in octets */
35
UINT32 network;
/* data link type */
36
}
wPcapHeader
;
37
38
typedef
struct
39
{
40
UINT32 ts_sec;
/* timestamp seconds */
41
UINT32 ts_usec;
/* timestamp microseconds */
42
UINT32 incl_len;
/* number of octets of packet saved in file */
43
UINT32 orig_len;
/* actual length of packet */
44
}
wPcapRecordHeader
;
45
46
typedef
struct
s_wPcapRecort
47
{
48
wPcapRecordHeader
header;
49
void
* data;
50
size_t
length;
51
struct
s_wPcapRecort* next;
52
}
wPcapRecord
;
53
54
typedef
struct
55
{
56
FILE* fp;
57
char
* name;
58
BOOL write;
59
SSIZE_T file_size;
60
size_t
record_count;
61
wPcapHeader
header;
62
wPcapRecord
* head;
63
wPcapRecord
* tail;
64
wPcapRecord
* record;
65
}
wPcap
;
66
67
void
Pcap_Close(
wPcap
* pcap);
68
69
WINPR_ATTR_MALLOC(Pcap_Close, 1)
70
wPcap
* Pcap_Open(
char
* name, BOOL write);
71
72
void
Pcap_Flush(
wPcap
* pcap);
73
74
typedef struct
75
{
76
BYTE Destination[6];
77
BYTE Source[6];
78
UINT16 Type;
79
}
wEthernetHeader
;
80
81
typedef
struct
82
{
83
BYTE Version;
84
BYTE InternetHeaderLength;
85
BYTE TypeOfService;
86
UINT16 TotalLength;
87
UINT16 Identification;
88
BYTE InternetProtocolFlags;
89
UINT16 FragmentOffset;
90
BYTE TimeToLive;
91
BYTE Protocol;
92
UINT16 HeaderChecksum;
93
UINT32 SourceAddress;
94
UINT32 DestinationAddress;
95
}
wIPv4Header
;
96
97
typedef
struct
98
{
99
UINT16 SourcePort;
100
UINT16 DestinationPort;
101
UINT32 SequenceNumber;
102
UINT32 AcknowledgementNumber;
103
BYTE Offset;
104
BYTE Reserved;
105
BYTE TcpFlags;
106
UINT16 Window;
107
UINT16 Checksum;
108
UINT16 UrgentPointer;
109
}
wTcpHeader
;
110
111
BOOL WLog_PacketMessage_Write(
wPcap
* pcap,
void
* data,
size_t
length, DWORD flags);
112
113
#endif
/* WINPR_WLOG_PACKET_MESSAGE_PRIVATE_H */
wEthernetHeader
Definition
PacketMessage.h:75
wIPv4Header
Definition
PacketMessage.h:82
wPcapHeader
Definition
PacketMessage.h:28
wPcapRecordHeader
Definition
PacketMessage.h:39
wPcapRecord
Definition
PacketMessage.h:47
wPcap
Definition
PacketMessage.h:55
wTcpHeader
Definition
PacketMessage.h:98
winpr
libwinpr
utils
wlog
PacketMessage.h
Generated by
1.9.8