FreeRDP
Loading...
Searching...
No Matches
include/freerdp/streamdump.h
1
21#ifndef FREERDP_STREAM_DUMP_H
22#define FREERDP_STREAM_DUMP_H
23
24#include <winpr/stream.h>
25#include <winpr/wtypes.h>
26
27#include <freerdp/api.h>
28#include <freerdp/types.h>
29
30#ifdef __cplusplus
31extern "C"
32{
33#endif
34
35 typedef struct stream_dump_context rdpStreamDumpContext;
36
37 typedef enum
38 {
39 STREAM_MSG_SRV_RX = 1,
40 STREAM_MSG_SRV_TX = 2
41 } StreamDumpDirection;
42
43 WINPR_ATTR_NODISCARD
44 FREERDP_API SSIZE_T stream_dump_append(const rdpContext* context, UINT32 flags, wStream* s,
45 size_t* offset);
46 WINPR_ATTR_NODISCARD
47 FREERDP_API SSIZE_T stream_dump_get(const rdpContext* context, UINT32* flags, wStream* s,
48 size_t* offset, UINT64* pts);
49
50 WINPR_ATTR_NODISCARD
51 FREERDP_API BOOL stream_dump_register_handlers(rdpContext* context, CONNECTION_STATE state,
52 BOOL isServer);
53
54 FREERDP_API void stream_dump_free(rdpStreamDumpContext* dump);
55
56 WINPR_ATTR_MALLOC(stream_dump_free, 1)
57 WINPR_ATTR_NODISCARD
58 FREERDP_API rdpStreamDumpContext* stream_dump_new(void);
59
60#ifdef __cplusplus
61}
62#endif
63
64#endif /* FREERDP_STREAM_DUMP_H */