Wireshark 4.7.0
The Wireshark network protocol analyzer
Loading...
Searching...
No Matches
packet-rdp.h
1/* packet-rdp.h
2 * RDP dissection
3 * Author: David Fort
4 *
5 * Wireshark - Network traffic analyzer
6 * By Gerald Combs <[email protected]>
7 * Copyright 1998 Gerald Combs
8 *
9 *
10 * SPDX-License-Identifier: GPL-2.0-or-later
11 */
12
13#ifndef __PACKET_RDP_H__
14#define __PACKET_RDP_H__
15
16#include <epan/packet.h>
17
18extern int proto_rdp;
19
20#define RDP_MAX_CHANNELS 31
21
22typedef enum {
23 RDP_CHANNEL_UNKNOWN,
24 RDP_CHANNEL_DRDYNVC,
25 RDP_CHANNEL_CLIPBOARD,
26 RDP_CHANNEL_SOUND,
27 RDP_CHANNEL_DISK,
28 RDP_CHANNEL_RAIL,
29 RDP_CHANNEL_CONCTRL,
30} rdp_known_channel_t;
31
32
33typedef struct {
34 wmem_array_t *currentPayload;
35 uint32_t packetLen;
36 uint32_t pendingLen;
37 uint32_t startFrame;
38 wmem_array_t *chunks;
40
41typedef struct {
42 uint32_t startFrame;
43 uint32_t endFrame;
44 tvbuff_t* tvb;
45 bool reassembled;
47
48typedef struct _rdp_channel_def {
49 uint32_t value;
50 const char *strptr;
51 rdp_known_channel_t channelType;
52
55 wmem_multimap_t *chunks_sc;
56 wmem_multimap_t *chunks_cs;
58
59typedef struct _rdp_server_address {
60 address addr;
61 uint16_t port;
63
64
65
66typedef struct _rdp_conv_info_t {
67 uint32_t staticChannelId;
68 uint32_t messageChannelId;
69 uint32_t encryptionMethod;
70 uint32_t encryptionLevel;
71 uint32_t licenseAgreed;
72 rdp_server_address_t serverAddr;
73 uint8_t maxChannels;
74 bool isRdstls;
75 rdp_channel_def_t staticChannels[RDP_MAX_CHANNELS+1];
77
78int dissect_rdp_bandwidth_req(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, bool from_server);
79void rdp_transport_set_udp_conversation(const packet_info *pinfo, bool reliable, uint32_t reqId,
80 uint8_t *cookie, conversation_t *conv);
81conversation_t *rdp_find_tcp_conversation_from_udp(conversation_t *udp);
82
83conversation_t *rdp_find_main_conversation(const packet_info *pinfo);
84
85
86#endif /* __PACKET_RDP_H__ */
Definition address.h:58
Definition packet_info.h:43
Definition proto.h:907
Definition packet-rdp.h:48
Definition packet-rdp.h:66
Definition packet-rdp.h:59
Definition wmem_array.c:27
Definition wmem_multimap.c:23
Definition conversation.h:230
Definition packet-rdp.h:33
Definition packet-rdp.h:41
Definition tvbuff-int.h:35