20 #ifndef FREERDP_LIB_CORE_GATEWAY_RDG_H
21 #define FREERDP_LIB_CORE_GATEWAY_RDG_H
23 #include <winpr/wtypes.h>
24 #include <winpr/stream.h>
25 #include <winpr/winpr.h>
28 #include <openssl/ssl.h>
30 typedef struct rdp_rdg rdpRdg;
32 FREERDP_LOCAL
void rdg_free(rdpRdg* rdg);
34 WINPR_ATTR_MALLOC(rdg_free, 1)
35 FREERDP_LOCAL rdpRdg* rdg_new(rdpContext* context);
37 FREERDP_LOCAL BIO* rdg_get_front_bio_and_take_ownership(rdpRdg* rdg);
39 FREERDP_LOCAL BOOL rdg_connect(rdpRdg* rdg, DWORD timeout, BOOL* rpcFallback);
40 FREERDP_LOCAL DWORD rdg_get_event_handles(rdpRdg* rdg, HANDLE* events, DWORD count);