20 #ifndef FREERDP_REMOTE_ASSISTANCE_H
21 #define FREERDP_REMOTE_ASSISTANCE_H
23 #include <freerdp/api.h>
24 #include <freerdp/types.h>
25 #include <freerdp/settings.h>
32 typedef struct rdp_assistance_file rdpAssistanceFile;
34 WINPR_ATTR_MALLOC(free, 1)
35 FREERDP_API BYTE* freerdp_assistance_hex_string_to_bin(const
void* str,
size_t* size);
37 WINPR_ATTR_MALLOC(free, 1)
38 FREERDP_API
char* freerdp_assistance_bin_to_hex_string(const
void* data,
size_t size);
40 WINPR_ATTR_MALLOC(free, 1)
41 FREERDP_API
char* freerdp_assistance_generate_pass_stub(DWORD flags);
43 WINPR_ATTR_MALLOC(free, 1)
44 FREERDP_API
char* freerdp_assistance_construct_expert_blob(const
char* name, const
char* pass);
46 WINPR_ATTR_MALLOC(free, 1)
47 FREERDP_API BYTE* freerdp_assistance_encrypt_pass_stub(const
char* password,
49 size_t* pEncryptedSize);
51 FREERDP_API
int freerdp_assistance_set_connection_string2(rdpAssistanceFile* file,
53 const
char* password);
55 FREERDP_API
int freerdp_assistance_parse_file_buffer(rdpAssistanceFile* file,
56 const
char* buffer,
size_t size,
57 const
char* password);
58 FREERDP_API
int freerdp_assistance_parse_file(rdpAssistanceFile* file, const
char* name,
59 const
char* password);
61 FREERDP_API BOOL freerdp_assistance_populate_settings_from_assistance_file(
62 rdpAssistanceFile* file, rdpSettings* settings);
63 FREERDP_API BOOL freerdp_assistance_get_encrypted_pass_stub(rdpAssistanceFile* file,
64 const
char** pwd,
size_t* size);
66 FREERDP_API
void freerdp_assistance_file_free(rdpAssistanceFile* file);
68 WINPR_ATTR_MALLOC(freerdp_assistance_file_free, 1)
69 FREERDP_API rdpAssistanceFile* freerdp_assistance_file_new(
void);
71 FREERDP_API
void freerdp_assistance_print_file(rdpAssistanceFile* file, wLog* log, DWORD level);