FreeRDP
include/freerdp/settings.h
1 
24 #ifndef FREERDP_SETTINGS_H
25 #define FREERDP_SETTINGS_H
26 
27 #include <winpr/timezone.h>
28 #include <winpr/wlog.h>
29 
30 #include <freerdp/api.h>
31 #include <freerdp/config.h>
32 #include <freerdp/types.h>
33 #include <freerdp/redirection.h>
34 
35 #if !defined(WITH_OPAQUE_SETTINGS)
36 #include <freerdp/settings_types_private.h>
37 #endif
38 
39 #include <freerdp/settings_keys.h>
40 #include <freerdp/settings_types.h>
41 
42 #include <freerdp/crypto/certificate.h>
43 #include <freerdp/crypto/privatekey.h>
44 
45 #ifdef __cplusplus
46 extern "C"
47 {
48 #endif
49 
75  typedef struct rdp_settings rdpSettings;
76 
80 #define FREERDP_SETTINGS_SERVER_MODE 0x00000001
81 #define FREERDP_SETTINGS_REMOTE_MODE 0x00000002
82 
87  FREERDP_API void freerdp_settings_free(rdpSettings* settings);
88 
96  WINPR_ATTR_MALLOC(freerdp_settings_free, 1)
97  FREERDP_API rdpSettings* freerdp_settings_new(DWORD flags);
98 
105  WINPR_ATTR_MALLOC(freerdp_settings_free, 1)
106  FREERDP_API rdpSettings* freerdp_settings_clone(const rdpSettings* settings);
107 
117  FREERDP_API BOOL freerdp_settings_copy(rdpSettings* dst, const rdpSettings* src);
118 
130  FREERDP_API BOOL freerdp_settings_copy_item(rdpSettings* dst, const rdpSettings* src,
131  SSIZE_T id);
132 
139  FREERDP_API void freerdp_settings_dump(wLog* log, DWORD level, const rdpSettings* settings);
140 
150  FREERDP_API BOOL freerdp_settings_print_diff(wLog* log, DWORD level, const rdpSettings* src,
151  const rdpSettings* other);
152 
153  FREERDP_API void freerdp_addin_argv_free(ADDIN_ARGV* args);
154 
155  WINPR_ATTR_MALLOC(freerdp_addin_argv_free, 1)
156  FREERDP_API ADDIN_ARGV* freerdp_addin_argv_new(size_t argc, const char* const argv[]);
157 
158  WINPR_ATTR_MALLOC(freerdp_addin_argv_free, 1)
159  FREERDP_API ADDIN_ARGV* freerdp_addin_argv_clone(const ADDIN_ARGV* args);
160 
161  FREERDP_API BOOL freerdp_addin_argv_add_argument(ADDIN_ARGV* args, const char* argument);
162  FREERDP_API BOOL freerdp_addin_argv_add_argument_ex(ADDIN_ARGV* args, const char* argument,
163  size_t len);
164  FREERDP_API BOOL freerdp_addin_argv_del_argument(ADDIN_ARGV* args, const char* argument);
165 
166  FREERDP_API int freerdp_addin_set_argument(ADDIN_ARGV* args, const char* argument);
167  FREERDP_API int freerdp_addin_replace_argument(ADDIN_ARGV* args, const char* previous,
168  const char* argument);
169  FREERDP_API int freerdp_addin_set_argument_value(ADDIN_ARGV* args, const char* option,
170  const char* value);
171  FREERDP_API int freerdp_addin_replace_argument_value(ADDIN_ARGV* args, const char* previous,
172  const char* option, const char* value);
173 
174  FREERDP_API BOOL freerdp_device_collection_add(rdpSettings* settings, RDPDR_DEVICE* device);
175 
186  FREERDP_API BOOL freerdp_device_collection_del(rdpSettings* settings,
187  const RDPDR_DEVICE* device);
188  FREERDP_API RDPDR_DEVICE* freerdp_device_collection_find(rdpSettings* settings,
189  const char* name);
190  FREERDP_API RDPDR_DEVICE* freerdp_device_collection_find_type(rdpSettings* settings,
191  UINT32 type);
192 
193  FREERDP_API void freerdp_device_free(RDPDR_DEVICE* device);
194 
195  WINPR_ATTR_MALLOC(freerdp_device_free, 1)
196  FREERDP_API RDPDR_DEVICE* freerdp_device_new(UINT32 Type, size_t count,
197  const char* const args[]);
198 
199  WINPR_ATTR_MALLOC(freerdp_device_free, 1)
200  FREERDP_API RDPDR_DEVICE* freerdp_device_clone(const RDPDR_DEVICE* device);
201 
202  FREERDP_API BOOL freerdp_device_equal(const RDPDR_DEVICE* one, const RDPDR_DEVICE* other);
203 
204  FREERDP_API void freerdp_device_collection_free(rdpSettings* settings);
205 
206  FREERDP_API BOOL freerdp_static_channel_collection_add(rdpSettings* settings,
207  ADDIN_ARGV* channel);
208  FREERDP_API BOOL freerdp_static_channel_collection_del(rdpSettings* settings, const char* name);
209  FREERDP_API ADDIN_ARGV* freerdp_static_channel_collection_find(rdpSettings* settings,
210  const char* name);
211 #if defined(WITH_FREERDP_DEPRECATED)
212  FREERDP_API WINPR_DEPRECATED(ADDIN_ARGV* freerdp_static_channel_clone(ADDIN_ARGV* channel));
213 #endif
214 
215  FREERDP_API void freerdp_static_channel_collection_free(rdpSettings* settings);
216 
217  FREERDP_API BOOL freerdp_dynamic_channel_collection_add(rdpSettings* settings,
218  ADDIN_ARGV* channel);
219  FREERDP_API BOOL freerdp_dynamic_channel_collection_del(rdpSettings* settings,
220  const char* name);
221  FREERDP_API ADDIN_ARGV* freerdp_dynamic_channel_collection_find(const rdpSettings* settings,
222  const char* name);
223 
224 #if defined(WITH_FREERDP_DEPRECATED)
225  FREERDP_API WINPR_DEPRECATED(ADDIN_ARGV* freerdp_dynamic_channel_clone(ADDIN_ARGV* channel));
226 #endif
227 
228  FREERDP_API void freerdp_dynamic_channel_collection_free(rdpSettings* settings);
229  FREERDP_API void freerdp_capability_buffer_free(rdpSettings* settings);
230  FREERDP_API BOOL freerdp_capability_buffer_copy(rdpSettings* settings, const rdpSettings* src);
231 
232  FREERDP_API void freerdp_server_license_issuers_free(rdpSettings* settings);
233  FREERDP_API BOOL freerdp_server_license_issuers_copy(rdpSettings* settings, char** addresses,
234  UINT32 count);
235 
236  FREERDP_API void freerdp_target_net_addresses_free(rdpSettings* settings);
237  FREERDP_API BOOL freerdp_target_net_addresses_copy(rdpSettings* settings, char** addresses,
238  UINT32 count);
239 
240  FREERDP_API void freerdp_performance_flags_make(rdpSettings* settings);
241  FREERDP_API void freerdp_performance_flags_split(rdpSettings* settings);
242 
243  FREERDP_API BOOL freerdp_set_gateway_usage_method(rdpSettings* settings,
244  UINT32 GatewayUsageMethod);
245  FREERDP_API void freerdp_update_gateway_usage_method(rdpSettings* settings,
246  UINT32 GatewayEnabled,
247  UINT32 GatewayBypassLocal);
248 
249  /* DEPRECATED:
250  * the functions freerdp_get_param_* and freerdp_set_param_* are deprecated.
251  * use freerdp_settings_get_* and freerdp_settings_set_* as a replacement!
252  */
253 #if defined(WITH_FREERDP_DEPRECATED)
254  FREERDP_API WINPR_DEPRECATED_VAR("Use freerdp_settings_get_bool instead",
255  BOOL freerdp_get_param_bool(const rdpSettings* settings,
256  int id));
257  FREERDP_API WINPR_DEPRECATED_VAR("Use freerdp_settings_set_bool instead",
258  int freerdp_set_param_bool(rdpSettings* settings, int id,
259  BOOL param));
260 
261  FREERDP_API WINPR_DEPRECATED_VAR("Use freerdp_settings_get_int[16|32] instead",
262  int freerdp_get_param_int(const rdpSettings* settings,
263  int id));
264  FREERDP_API WINPR_DEPRECATED_VAR("Use freerdp_settings_set_int[16|32] instead",
265  int freerdp_set_param_int(rdpSettings* settings, int id,
266  int param));
267 
268  FREERDP_API WINPR_DEPRECATED_VAR("Use freerdp_settings_set_uint32 instead",
269  UINT32 freerdp_get_param_uint32(const rdpSettings* settings,
270  int id));
271  FREERDP_API WINPR_DEPRECATED_VAR("Use freerdp_settings_set_uint32 instead",
272  int freerdp_set_param_uint32(rdpSettings* settings, int id,
273  UINT32 param));
274 
275  FREERDP_API WINPR_DEPRECATED_VAR("Use freerdp_settings_get_uint64 instead",
276  UINT64 freerdp_get_param_uint64(const rdpSettings* settings,
277  int id));
278  FREERDP_API WINPR_DEPRECATED_VAR("Use freerdp_settings_set_uint64 instead",
279  int freerdp_set_param_uint64(rdpSettings* settings, int id,
280  UINT64 param));
281 
282  FREERDP_API WINPR_DEPRECATED_VAR("Use freerdp_settings_get_string instead",
283  char* freerdp_get_param_string(const rdpSettings* settings,
284  int id));
285  FREERDP_API WINPR_DEPRECATED_VAR("Use freerdp_settings_set_string instead",
286  int freerdp_set_param_string(rdpSettings* settings, int id,
287  const char* param));
288 #endif
289 
299  FREERDP_API BOOL freerdp_settings_are_valid(const rdpSettings* settings);
300 
308  FREERDP_API BOOL freerdp_settings_get_bool(const rdpSettings* settings,
309  FreeRDP_Settings_Keys_Bool id);
310 
319  FREERDP_API BOOL freerdp_settings_set_bool(rdpSettings* settings, FreeRDP_Settings_Keys_Bool id,
320  BOOL param);
321 
329  FREERDP_API INT16 freerdp_settings_get_int16(const rdpSettings* settings,
330  FreeRDP_Settings_Keys_Int16 id);
331 
340  FREERDP_API BOOL freerdp_settings_set_int16(rdpSettings* settings,
341  FreeRDP_Settings_Keys_Int16 id, INT16 param);
342 
350  FREERDP_API UINT16 freerdp_settings_get_uint16(const rdpSettings* settings,
351  FreeRDP_Settings_Keys_UInt16 id);
352 
361  FREERDP_API BOOL freerdp_settings_set_uint16(rdpSettings* settings,
362  FreeRDP_Settings_Keys_UInt16 id, UINT16 param);
363 
371  FREERDP_API INT32 freerdp_settings_get_int32(const rdpSettings* settings,
372  FreeRDP_Settings_Keys_Int32 id);
373 
382  FREERDP_API BOOL freerdp_settings_set_int32(rdpSettings* settings,
383  FreeRDP_Settings_Keys_Int32 id, INT32 param);
384 
392  FREERDP_API UINT32 freerdp_settings_get_uint32(const rdpSettings* settings,
393  FreeRDP_Settings_Keys_UInt32 id);
394 
403  FREERDP_API BOOL freerdp_settings_set_uint32(rdpSettings* settings,
404  FreeRDP_Settings_Keys_UInt32 id, UINT32 param);
405 
413  FREERDP_API INT64 freerdp_settings_get_int64(const rdpSettings* settings,
414  FreeRDP_Settings_Keys_Int64 id);
415 
424  FREERDP_API BOOL freerdp_settings_set_int64(rdpSettings* settings,
425  FreeRDP_Settings_Keys_Int64 id, INT64 param);
426 
434  FREERDP_API UINT64 freerdp_settings_get_uint64(const rdpSettings* settings,
435  FreeRDP_Settings_Keys_UInt64 id);
436 
445  FREERDP_API BOOL freerdp_settings_set_uint64(rdpSettings* settings,
446  FreeRDP_Settings_Keys_UInt64 id, UINT64 param);
447 
455  FREERDP_API const char* freerdp_settings_get_string(const rdpSettings* settings,
456  FreeRDP_Settings_Keys_String id);
457 
465  FREERDP_API char* freerdp_settings_get_string_writable(rdpSettings* settings,
466  FreeRDP_Settings_Keys_String id);
467 
477  FREERDP_API BOOL freerdp_settings_set_string_len(rdpSettings* settings,
478  FreeRDP_Settings_Keys_String id,
479  const char* param, size_t len);
480 
489  FREERDP_API BOOL freerdp_settings_set_string(rdpSettings* settings,
490  FreeRDP_Settings_Keys_String id,
491  const char* param);
492 
504  FREERDP_API BOOL freerdp_settings_append_string(rdpSettings* settings,
505  FreeRDP_Settings_Keys_String id,
506  const char* separator, const char* param);
507 
516  FREERDP_API BOOL freerdp_settings_set_string_from_utf16(rdpSettings* settings,
517  FreeRDP_Settings_Keys_String id,
518  const WCHAR* param);
519 
529  FREERDP_API BOOL freerdp_settings_set_string_from_utf16N(rdpSettings* settings,
530  FreeRDP_Settings_Keys_String id,
531  const WCHAR* param, size_t length);
539  FREERDP_API WCHAR* freerdp_settings_get_string_as_utf16(const rdpSettings* settings,
540  FreeRDP_Settings_Keys_String id,
541  size_t* pCharLen);
542 
550  FREERDP_API const void* freerdp_settings_get_pointer(const rdpSettings* settings,
551  FreeRDP_Settings_Keys_Pointer id);
552 
560  FREERDP_API void* freerdp_settings_get_pointer_writable(rdpSettings* settings,
561  FreeRDP_Settings_Keys_Pointer id);
562 
571  FREERDP_API BOOL freerdp_settings_set_pointer(rdpSettings* settings,
572  FreeRDP_Settings_Keys_Pointer id,
573  const void* data);
574 
583  FREERDP_API BOOL freerdp_settings_set_pointer_len(rdpSettings* settings,
584  FreeRDP_Settings_Keys_Pointer id,
585  const void* data, size_t len);
586 
587  FREERDP_API const void* freerdp_settings_get_pointer_array(const rdpSettings* settings,
588  FreeRDP_Settings_Keys_Pointer id,
589  size_t offset);
590  FREERDP_API void* freerdp_settings_get_pointer_array_writable(const rdpSettings* settings,
591  FreeRDP_Settings_Keys_Pointer id,
592  size_t offset);
593  FREERDP_API BOOL freerdp_settings_set_pointer_array(rdpSettings* settings,
594  FreeRDP_Settings_Keys_Pointer id,
595  size_t offset, const void* data);
596 
597  FREERDP_API BOOL freerdp_settings_set_value_for_name(rdpSettings* settings, const char* name,
598  const char* value);
599 
606  FREERDP_API SSIZE_T freerdp_settings_get_key_for_name(const char* value);
607 
615  FREERDP_API SSIZE_T freerdp_settings_get_type_for_name(const char* value);
616 
624  FREERDP_API SSIZE_T freerdp_settings_get_type_for_key(SSIZE_T key);
625 
631  FREERDP_API const char* freerdp_settings_get_type_name_for_key(SSIZE_T key);
632 
638  FREERDP_API const char* freerdp_settings_get_type_name_for_type(SSIZE_T type);
639 
645  FREERDP_API const char* freerdp_settings_get_name_for_key(SSIZE_T key);
646 
656  FREERDP_API UINT32 freerdp_settings_get_codecs_flags(const rdpSettings* settings);
657 
673  FREERDP_API BOOL freerdp_settings_update_from_caps(rdpSettings* settings, const BYTE* capsFlags,
674  const BYTE** capsData,
675  const UINT32* capsSizes, UINT32 capsCount,
676  BOOL serverReceivedCaps);
677 
687  FREERDP_API const char* freerdp_settings_get_server_name(const rdpSettings* settings);
688 
697  FREERDP_API const char* freerdp_rail_support_flags_to_string(UINT32 flags, char* buffer,
698  size_t length);
699 
707  FREERDP_API const char* freerdp_rdp_version_string(UINT32 version);
708 
715  FREERDP_API const char* freerdp_rdpdr_dtyp_string(UINT32 type);
716 
717  FREERDP_API const char* freerdp_encryption_level_string(UINT32 EncryptionLevel);
718  FREERDP_API const char* freerdp_encryption_methods_string(UINT32 EncryptionLevel, char* buffer,
719  size_t size);
720 
725  FREERDP_API const char* freerdp_supported_color_depths_string(UINT16 mask, char* buffer,
726  size_t size);
727 
732  WINPR_ATTR_MALLOC(free, 1)
733  FREERDP_API char* freerdp_settings_get_config_path(void);
734 
735 #ifdef __cplusplus
736 }
737 #endif
738 
741 #endif /* FREERDP_SETTINGS_H */
FREERDP_API void freerdp_settings_dump(wLog *log, DWORD level, const rdpSettings *settings)
Dumps the contents of a settings struct to a WLog logger.
Definition: settings_str.c:246
FREERDP_API UINT32 freerdp_settings_get_uint32(const rdpSettings *settings, FreeRDP_Settings_Keys_UInt32 id)
Returns a UINT32 settings value.
FREERDP_API BOOL freerdp_settings_update_from_caps(rdpSettings *settings, const BYTE *capsFlags, const BYTE **capsData, const UINT32 *capsSizes, UINT32 capsCount, BOOL serverReceivedCaps)
Parse capability data and apply to settings.
FREERDP_API BOOL freerdp_settings_set_string(rdpSettings *settings, FreeRDP_Settings_Keys_String id, const char *param)
Sets a string settings value. The param is copied.
FREERDP_API BOOL freerdp_settings_get_bool(const rdpSettings *settings, FreeRDP_Settings_Keys_Bool id)
Returns a boolean settings value.
FREERDP_API const void * freerdp_settings_get_pointer(const rdpSettings *settings, FreeRDP_Settings_Keys_Pointer id)
Returns a immutable pointer settings value.
FREERDP_API INT64 freerdp_settings_get_int64(const rdpSettings *settings, FreeRDP_Settings_Keys_Int64 id)
Returns a INT64 settings value.
FREERDP_API BOOL freerdp_settings_print_diff(wLog *log, DWORD level, const rdpSettings *src, const rdpSettings *other)
Dumps the difference between two settings structs to a WLog.
Definition: settings_str.c:96
FREERDP_API const char * freerdp_settings_get_type_name_for_type(SSIZE_T type)
Returns the type name for a type.
Definition: settings_str.c:380
FREERDP_API SSIZE_T freerdp_settings_get_type_for_name(const char *value)
Get a key type for the name string of that key.
Definition: settings_str.c:361
FREERDP_API BOOL freerdp_settings_set_string_from_utf16N(rdpSettings *settings, FreeRDP_Settings_Keys_String id, const WCHAR *param, size_t length)
Sets a string settings value. The param is converted to UTF-8 and the copy stored.
FREERDP_API char * freerdp_settings_get_string_writable(rdpSettings *settings, FreeRDP_Settings_Keys_String id)
Returns a string settings value.
FREERDP_API SSIZE_T freerdp_settings_get_type_for_key(SSIZE_T key)
Get a key type for the key index.
Definition: settings_str.c:407
FREERDP_API rdpSettings * freerdp_settings_new(DWORD flags)
creates a new setting struct
FREERDP_API BOOL freerdp_settings_are_valid(const rdpSettings *settings)
Returns TRUE if settings are in a valid state, FALSE otherwise.
FREERDP_API UINT64 freerdp_settings_get_uint64(const rdpSettings *settings, FreeRDP_Settings_Keys_UInt64 id)
Returns a UINT64 settings value.
FREERDP_API SSIZE_T freerdp_settings_get_key_for_name(const char *value)
Get a key index for the name string of that key.
Definition: settings_str.c:348
FREERDP_API const char * freerdp_settings_get_string(const rdpSettings *settings, FreeRDP_Settings_Keys_String id)
Returns a immutable string settings value.
FREERDP_API const char * freerdp_rail_support_flags_to_string(UINT32 flags, char *buffer, size_t length)
Returns a stringified representation of RAIL support flags.
FREERDP_API BOOL freerdp_settings_set_pointer_len(rdpSettings *settings, FreeRDP_Settings_Keys_Pointer id, const void *data, size_t len)
Set a pointer to value data.
FREERDP_API const char * freerdp_supported_color_depths_string(UINT16 mask, char *buffer, size_t size)
returns a string representation of RNS_UD_XXBPP_SUPPORT values
FREERDP_API BOOL freerdp_settings_set_int32(rdpSettings *settings, FreeRDP_Settings_Keys_Int32 id, INT32 param)
Sets a INT32 settings value.
FREERDP_API char * freerdp_settings_get_config_path(void)
return the configuration directory for the library
FREERDP_API BOOL freerdp_settings_copy_item(rdpSettings *dst, const rdpSettings *src, SSIZE_T id)
copies one setting identified by id from src to dst
Definition: settings_str.c:429
FREERDP_API void freerdp_settings_free(rdpSettings *settings)
Free a settings struct with all data in it.
FREERDP_API UINT16 freerdp_settings_get_uint16(const rdpSettings *settings, FreeRDP_Settings_Keys_UInt16 id)
Returns a UINT16 settings value.
FREERDP_API BOOL freerdp_settings_copy(rdpSettings *dst, const rdpSettings *src)
Deep copies settings from src to dst.
FREERDP_API const char * freerdp_rdpdr_dtyp_string(UINT32 type)
Returns a string representation of RDPDR_DTYP_*.
FREERDP_API const char * freerdp_settings_get_server_name(const rdpSettings *settings)
A helper function to return the correct server name.
FREERDP_API rdpSettings * freerdp_settings_clone(const rdpSettings *settings)
Creates a deep copy of settings.
FREERDP_API BOOL freerdp_device_collection_del(rdpSettings *settings, const RDPDR_DEVICE *device)
Removed a device from the settings, returns ownership of the allocated device to caller.
FREERDP_API BOOL freerdp_set_gateway_usage_method(rdpSettings *settings, UINT32 GatewayUsageMethod)
FREERDP_API BOOL freerdp_settings_set_uint64(rdpSettings *settings, FreeRDP_Settings_Keys_UInt64 id, UINT64 param)
Sets a UINT64 settings value.
FREERDP_API WCHAR * freerdp_settings_get_string_as_utf16(const rdpSettings *settings, FreeRDP_Settings_Keys_String id, size_t *pCharLen)
Return an allocated UTF16 string.
FREERDP_API BOOL freerdp_settings_set_int16(rdpSettings *settings, FreeRDP_Settings_Keys_Int16 id, INT16 param)
Sets a INT16 settings value.
FREERDP_API BOOL freerdp_settings_set_int64(rdpSettings *settings, FreeRDP_Settings_Keys_Int64 id, INT64 param)
Sets a INT64 settings value.
FREERDP_API BOOL freerdp_settings_set_string_from_utf16(rdpSettings *settings, FreeRDP_Settings_Keys_String id, const WCHAR *param)
Sets a string settings value. The param is converted to UTF-8 and the copy stored.
FREERDP_API BOOL freerdp_settings_set_pointer(rdpSettings *settings, FreeRDP_Settings_Keys_Pointer id, const void *data)
Set a pointer to value data.
FREERDP_API INT32 freerdp_settings_get_int32(const rdpSettings *settings, FreeRDP_Settings_Keys_Int32 id)
Returns a INT32 settings value.
FREERDP_API UINT32 freerdp_settings_get_codecs_flags(const rdpSettings *settings)
helper function to get a mask of supported codec flags.
FREERDP_API const char * freerdp_rdp_version_string(UINT32 version)
Returns a stringified representation of the RDP protocol version.
FREERDP_API BOOL freerdp_settings_set_string_len(rdpSettings *settings, FreeRDP_Settings_Keys_String id, const char *param, size_t len)
Sets a string settings value. The param is copied.
FREERDP_API BOOL freerdp_settings_set_uint32(rdpSettings *settings, FreeRDP_Settings_Keys_UInt32 id, UINT32 param)
Sets a UINT32 settings value.
FREERDP_API BOOL freerdp_settings_append_string(rdpSettings *settings, FreeRDP_Settings_Keys_String id, const char *separator, const char *param)
appends a string to a settings value. The param is copied. If the initial value of the setting was no...
FREERDP_API BOOL freerdp_settings_set_uint16(rdpSettings *settings, FreeRDP_Settings_Keys_UInt16 id, UINT16 param)
Sets a UINT16 settings value.
FREERDP_API INT16 freerdp_settings_get_int16(const rdpSettings *settings, FreeRDP_Settings_Keys_Int16 id)
Returns a INT16 settings value.
FREERDP_API const char * freerdp_settings_get_type_name_for_key(SSIZE_T key)
Returns the type name for a key.
Definition: settings_str.c:374
FREERDP_API BOOL freerdp_settings_set_bool(rdpSettings *settings, FreeRDP_Settings_Keys_Bool id, BOOL param)
Sets a BOOL settings value.
FREERDP_API void * freerdp_settings_get_pointer_writable(rdpSettings *settings, FreeRDP_Settings_Keys_Pointer id)
Returns a mutable pointer settings value.
FREERDP_API const char * freerdp_settings_get_name_for_key(SSIZE_T key)
Returns the type name for a key.
Definition: settings_str.c:418