FreeRDP
settings_str.c
1 /* Generated by */
2 
3 #include "../core/settings.h"
4 #include "settings_str.h"
5 
6 BOOL freerdp_settings_clone_keys(rdpSettings* dst, const rdpSettings* src)
7 {
8  WINPR_ASSERT(dst);
9  WINPR_ASSERT(src);
10 
11  for (size_t x = 0; x < ARRAYSIZE(settings_map); x++)
12  {
13  const struct settings_str_entry* cur = &settings_map[x];
14  switch (cur->type)
15  {
16  case FREERDP_SETTINGS_TYPE_BOOL: /* bool */
17  {
18  BOOL sval = freerdp_settings_get_bool(src, (FreeRDP_Settings_Keys_Bool)cur->id);
19  if (!freerdp_settings_set_bool(dst, (FreeRDP_Settings_Keys_Bool)cur->id, sval))
20  return FALSE;
21  }
22  break;
23  case FREERDP_SETTINGS_TYPE_UINT16: /* UINT16 */
24  {
25  UINT16 sval =
26  freerdp_settings_get_uint16(src, (FreeRDP_Settings_Keys_UInt16)cur->id);
27  if (!freerdp_settings_set_uint16(dst, (FreeRDP_Settings_Keys_UInt16)cur->id, sval))
28  return FALSE;
29  }
30  break;
31  case FREERDP_SETTINGS_TYPE_INT16: /* INT16 */
32  {
33  INT16 sval = freerdp_settings_get_int16(src, (FreeRDP_Settings_Keys_Int16)cur->id);
34  if (!freerdp_settings_set_int16(dst, (FreeRDP_Settings_Keys_Int16)cur->id, sval))
35  return FALSE;
36  }
37  break;
38  case FREERDP_SETTINGS_TYPE_UINT32: /* UINT32 */
39  {
40  UINT32 sval =
41  freerdp_settings_get_uint32(src, (FreeRDP_Settings_Keys_UInt32)cur->id);
42  if (!freerdp_settings_set_uint32(dst, (FreeRDP_Settings_Keys_UInt32)cur->id, sval))
43  return FALSE;
44  }
45  break;
46  case FREERDP_SETTINGS_TYPE_INT32: /* INT32 */
47  {
48  INT32 sval = freerdp_settings_get_int32(src, (FreeRDP_Settings_Keys_Int32)cur->id);
49  if (!freerdp_settings_set_int32(dst, (FreeRDP_Settings_Keys_Int32)cur->id, sval))
50  return FALSE;
51  }
52  break;
53  case FREERDP_SETTINGS_TYPE_UINT64: /* UINT64 */
54  {
55  UINT64 sval =
56  freerdp_settings_get_uint64(src, (FreeRDP_Settings_Keys_UInt64)cur->id);
57  if (!freerdp_settings_set_uint64(dst, (FreeRDP_Settings_Keys_UInt64)cur->id, sval))
58  return FALSE;
59  }
60  break;
61  case FREERDP_SETTINGS_TYPE_INT64: /* INT64 */
62  {
63  INT64 sval = freerdp_settings_get_int64(src, (FreeRDP_Settings_Keys_Int64)cur->id);
64  if (!freerdp_settings_set_int64(dst, (FreeRDP_Settings_Keys_Int64)cur->id, sval))
65  return FALSE;
66  }
67  break;
68  case FREERDP_SETTINGS_TYPE_STRING: /* strings */
69  {
70  const char* sval =
71  freerdp_settings_get_string(src, (FreeRDP_Settings_Keys_String)cur->id);
72  size_t len = 0;
73  if (sval)
74  len = strlen(sval);
75  if (!freerdp_settings_set_string_copy_(dst, (FreeRDP_Settings_Keys_String)cur->id,
76  sval, len, FALSE))
77  return FALSE;
78  }
79  break;
80  case FREERDP_SETTINGS_TYPE_POINTER: /* pointer */
81  {
82  const void* sval =
83  freerdp_settings_get_pointer(src, (FreeRDP_Settings_Keys_Pointer)cur->id);
84  if (!freerdp_settings_set_pointer(dst, (FreeRDP_Settings_Keys_Pointer)cur->id,
85  sval))
86  return FALSE;
87  }
88  break;
89  default:
90  return FALSE;
91  }
92  }
93  return TRUE;
94 }
95 
96 BOOL freerdp_settings_print_diff(wLog* log, DWORD level, const rdpSettings* settings,
97  const rdpSettings* other)
98 {
99  BOOL rc = FALSE;
100 
101  WINPR_ASSERT(log);
102  WINPR_ASSERT(settings);
103  WINPR_ASSERT(other);
104 
105  for (size_t x = 0; x < ARRAYSIZE(settings_map); x++)
106  {
107  const struct settings_str_entry* cur = &settings_map[x];
108  switch (cur->type)
109  {
110  case FREERDP_SETTINGS_TYPE_BOOL: /* bool */
111  {
112  BOOL sval =
113  freerdp_settings_get_bool(settings, (FreeRDP_Settings_Keys_Bool)cur->id);
114  BOOL cval = freerdp_settings_get_bool(other, (FreeRDP_Settings_Keys_Bool)cur->id);
115  if (sval != cval)
116  {
117  rc = TRUE;
118  WLog_Print(log, level, "%s [BOOL]: %s -> %s", cur->str, sval ? "TRUE" : "FALSE",
119  cval ? "TRUE" : "FALSE");
120  }
121  }
122  break;
123  case FREERDP_SETTINGS_TYPE_UINT16: /* UINT16 */
124  {
125  UINT16 sval =
126  freerdp_settings_get_uint16(settings, (FreeRDP_Settings_Keys_UInt16)cur->id);
127  UINT16 cval =
128  freerdp_settings_get_uint16(other, (FreeRDP_Settings_Keys_UInt16)cur->id);
129  if (sval != cval)
130  {
131  rc = TRUE;
132  WLog_Print(log, level, "%s [UINT16]: %" PRIu16 " -> %" PRIu16, cur->str, sval,
133  cval);
134  }
135  }
136  break;
137  case FREERDP_SETTINGS_TYPE_INT16: /* INT16 */
138  {
139  INT16 sval =
140  freerdp_settings_get_int16(settings, (FreeRDP_Settings_Keys_Int16)cur->id);
141  INT16 cval =
142  freerdp_settings_get_int16(other, (FreeRDP_Settings_Keys_Int16)cur->id);
143  if (sval != cval)
144  {
145  rc = TRUE;
146  WLog_Print(log, level, "%s [INT16]: %" PRId16 " -> %" PRId16, cur->str, sval,
147  cval);
148  }
149  }
150  break;
151  case FREERDP_SETTINGS_TYPE_UINT32: /* UINT32 */
152  {
153  UINT32 sval =
154  freerdp_settings_get_uint32(settings, (FreeRDP_Settings_Keys_UInt32)cur->id);
155  UINT32 cval =
156  freerdp_settings_get_uint32(other, (FreeRDP_Settings_Keys_UInt32)cur->id);
157  if (sval != cval)
158  {
159  rc = TRUE;
160  WLog_Print(log, level, "%s [UINT32]: %" PRIu32 " -> %" PRIu32, cur->str, sval,
161  cval);
162  }
163  }
164  break;
165  case FREERDP_SETTINGS_TYPE_INT32: /* INT32 */
166  {
167  INT32 sval =
168  freerdp_settings_get_int32(settings, (FreeRDP_Settings_Keys_Int32)cur->id);
169  INT32 cval =
170  freerdp_settings_get_int32(other, (FreeRDP_Settings_Keys_Int32)cur->id);
171  if (sval != cval)
172  {
173  rc = TRUE;
174  WLog_Print(log, level, "%s [INT32]: %" PRId32 " -> %" PRId32, cur->str, sval,
175  cval);
176  }
177  }
178  break;
179  case FREERDP_SETTINGS_TYPE_UINT64: /* UINT64 */
180  {
181  UINT64 sval =
182  freerdp_settings_get_uint64(settings, (FreeRDP_Settings_Keys_UInt64)cur->id);
183  UINT64 cval =
184  freerdp_settings_get_uint64(other, (FreeRDP_Settings_Keys_UInt64)cur->id);
185  if (sval != cval)
186  {
187  rc = TRUE;
188  WLog_Print(log, level, "%s [UINT64]: %" PRIu64 " -> %" PRIu64, cur->str, sval,
189  cval);
190  }
191  }
192  break;
193  case FREERDP_SETTINGS_TYPE_INT64: /* INT64 */
194  {
195  INT64 sval =
196  freerdp_settings_get_int64(settings, (FreeRDP_Settings_Keys_Int64)cur->id);
197  INT64 cval =
198  freerdp_settings_get_int64(other, (FreeRDP_Settings_Keys_Int64)cur->id);
199  if (sval != cval)
200  {
201  rc = TRUE;
202  WLog_Print(log, level, "%s [INT64]: %" PRId64 " -> %" PRId64, cur->str, sval,
203  cval);
204  }
205  }
206  break;
207  case FREERDP_SETTINGS_TYPE_STRING: /* strings */
208  {
209  const char* sval =
210  freerdp_settings_get_string(settings, (FreeRDP_Settings_Keys_String)cur->id);
211  const char* cval =
212  freerdp_settings_get_string(other, (FreeRDP_Settings_Keys_String)cur->id);
213  if (sval != cval)
214  {
215  if (!sval || !cval || (strcmp(sval, cval) != 0))
216  {
217  rc = TRUE;
218  WLog_Print(log, level, "%s [STRING]: '%s' -> '%s'", cur->str, sval, cval);
219  }
220  }
221  }
222  break;
223  case FREERDP_SETTINGS_TYPE_POINTER: /* pointer */
224  {
225  const void* sval =
226  freerdp_settings_get_pointer(settings, (FreeRDP_Settings_Keys_Pointer)cur->id);
227  const void* cval =
228  freerdp_settings_get_pointer(other, (FreeRDP_Settings_Keys_Pointer)cur->id);
229  if (sval != cval)
230  {
231  if ((sval && !cval) || (!sval && cval))
232  {
233  rc = TRUE;
234  WLog_Print(log, level, "%s [POINTER]: '%p' -> '%p'", cur->str, sval, cval);
235  }
236  }
237  }
238  break;
239  default:
240  break;
241  }
242  }
243  return rc;
244 }
245 
246 void freerdp_settings_dump(wLog* log, DWORD level, const rdpSettings* settings)
247 {
248  WINPR_ASSERT(log);
249  WINPR_ASSERT(settings);
250 
251  for (size_t x = 0; x < ARRAYSIZE(settings_map); x++)
252  {
253  const struct settings_str_entry* cur = &settings_map[x];
254  switch (cur->type)
255  {
256  case FREERDP_SETTINGS_TYPE_BOOL: /* bool */
257  {
258  BOOL sval =
259  freerdp_settings_get_bool(settings, (FreeRDP_Settings_Keys_Bool)cur->id);
260  WLog_Print(log, level, "%s [BOOL]: %s", cur->str, sval ? "TRUE" : "FALSE");
261  }
262  break;
263  case FREERDP_SETTINGS_TYPE_UINT16: /* UINT16 */
264  {
265  UINT16 sval =
266  freerdp_settings_get_uint16(settings, (FreeRDP_Settings_Keys_UInt16)cur->id);
267  WLog_Print(log, level, "%s [UINT16]: %" PRIu16, cur->str, sval);
268  }
269  break;
270  case FREERDP_SETTINGS_TYPE_INT16: /* INT16 */
271  {
272  INT16 sval =
273  freerdp_settings_get_int16(settings, (FreeRDP_Settings_Keys_Int16)cur->id);
274  WLog_Print(log, level, "%s [INT16]: %" PRId16, cur->str, sval);
275  }
276  break;
277  case FREERDP_SETTINGS_TYPE_UINT32: /* UINT32 */
278  {
279  UINT32 sval =
280  freerdp_settings_get_uint32(settings, (FreeRDP_Settings_Keys_UInt32)cur->id);
281  WLog_Print(log, level, "%s [UINT32]: %" PRIu32, cur->str, sval);
282  }
283  break;
284  case FREERDP_SETTINGS_TYPE_INT32: /* INT32 */
285  {
286  INT32 sval =
287  freerdp_settings_get_int32(settings, (FreeRDP_Settings_Keys_Int32)cur->id);
288  WLog_Print(log, level, "%s [INT32]: %" PRId32, cur->str, sval);
289  }
290  break;
291  case FREERDP_SETTINGS_TYPE_UINT64: /* UINT64 */
292  {
293  UINT64 sval =
294  freerdp_settings_get_uint64(settings, (FreeRDP_Settings_Keys_UInt64)cur->id);
295  WLog_Print(log, level, "%s [UINT64]: %" PRIu64, cur->str, sval);
296  }
297  break;
298  case FREERDP_SETTINGS_TYPE_INT64: /* INT64 */
299  {
300  INT64 sval =
301  freerdp_settings_get_int64(settings, (FreeRDP_Settings_Keys_Int64)cur->id);
302  WLog_Print(log, level, "%s [INT64]: %" PRId64, cur->str, sval);
303  }
304  break;
305  case FREERDP_SETTINGS_TYPE_STRING: /* strings */
306  {
307  const char* sval =
308  freerdp_settings_get_string(settings, (FreeRDP_Settings_Keys_String)cur->id);
309  WLog_Print(log, level, "%s [STRING]: '%s'", cur->str, sval);
310  }
311  break;
312  case FREERDP_SETTINGS_TYPE_POINTER: /* pointer */
313  {
314  const void* sval =
315  freerdp_settings_get_pointer(settings, (FreeRDP_Settings_Keys_Pointer)cur->id);
316  WLog_Print(log, level, "%s [POINTER]: '%p'", cur->str, sval);
317  }
318  break;
319  default:
320  break;
321  }
322  }
323 }
324 
325 void freerdp_settings_free_keys(rdpSettings* dst, BOOL cleanup)
326 {
327  WINPR_ASSERT(dst);
328 
329  for (size_t x = 0; x < ARRAYSIZE(settings_map); x++)
330  {
331  const struct settings_str_entry* cur = &settings_map[x];
332  switch (cur->type)
333  {
334  case FREERDP_SETTINGS_TYPE_STRING: /* strings */
335  (void)freerdp_settings_set_string_copy_(dst, (FreeRDP_Settings_Keys_String)cur->id,
336  NULL, 0, cleanup);
337  break;
338  case FREERDP_SETTINGS_TYPE_POINTER: /* pointer */
339  (void)freerdp_settings_set_pointer_len(dst, (FreeRDP_Settings_Keys_Pointer)cur->id,
340  NULL, 0);
341  break;
342  default:
343  break;
344  }
345  }
346 }
347 
348 SSIZE_T freerdp_settings_get_key_for_name(const char* value)
349 {
350  WINPR_ASSERT(value);
351 
352  for (size_t x = 0; x < ARRAYSIZE(settings_map); x++)
353  {
354  const struct settings_str_entry* cur = &settings_map[x];
355  if (strcmp(value, cur->str) == 0)
356  return cur->id;
357  }
358  return -1;
359 }
360 
361 SSIZE_T freerdp_settings_get_type_for_name(const char* value)
362 {
363  WINPR_ASSERT(value);
364 
365  for (size_t x = 0; x < ARRAYSIZE(settings_map); x++)
366  {
367  const struct settings_str_entry* cur = &settings_map[x];
368  if (strcmp(value, cur->str) == 0)
369  return cur->type;
370  }
371  return -1;
372 }
373 
375 {
376  const SSIZE_T type = freerdp_settings_get_type_for_key(key);
378 }
379 
381 {
382  switch (type)
383  {
384  case FREERDP_SETTINGS_TYPE_BOOL:
385  return "FREERDP_SETTINGS_TYPE_BOOL";
386  case FREERDP_SETTINGS_TYPE_UINT16:
387  return "FREERDP_SETTINGS_TYPE_UINT16";
388  case FREERDP_SETTINGS_TYPE_INT16:
389  return "FREERDP_SETTINGS_TYPE_INT16";
390  case FREERDP_SETTINGS_TYPE_UINT32:
391  return "FREERDP_SETTINGS_TYPE_UINT32";
392  case FREERDP_SETTINGS_TYPE_INT32:
393  return "FREERDP_SETTINGS_TYPE_INT32";
394  case FREERDP_SETTINGS_TYPE_UINT64:
395  return "FREERDP_SETTINGS_TYPE_UINT64";
396  case FREERDP_SETTINGS_TYPE_INT64:
397  return "FREERDP_SETTINGS_TYPE_INT64";
398  case FREERDP_SETTINGS_TYPE_STRING:
399  return "FREERDP_SETTINGS_TYPE_STRING";
400  case FREERDP_SETTINGS_TYPE_POINTER:
401  return "FREERDP_SETTINGS_TYPE_POINTER";
402  default:
403  return "FREERDP_SETTINGS_TYPE_UNKNOWN";
404  }
405 }
406 
408 {
409  for (size_t x = 0; x < ARRAYSIZE(settings_map); x++)
410  {
411  const struct settings_str_entry* cur = &settings_map[x];
412  if (cur->id == key)
413  return cur->type;
414  }
415  return -1;
416 }
417 
418 const char* freerdp_settings_get_name_for_key(SSIZE_T key)
419 {
420  for (size_t x = 0; x < ARRAYSIZE(settings_map); x++)
421  {
422  const struct settings_str_entry* cur = &settings_map[x];
423  if (cur->id == key)
424  return cur->str;
425  }
426  return NULL;
427 }
428 
429 BOOL freerdp_settings_copy_item(rdpSettings* dst, const rdpSettings* src, SSIZE_T id)
430 {
431  WINPR_ASSERT(dst);
432  WINPR_ASSERT(src);
433 
434  const SSIZE_T key = freerdp_settings_get_type_for_key(id);
435  switch (key)
436  {
437  case FREERDP_SETTINGS_TYPE_BOOL:
438  {
439  const BOOL val = freerdp_settings_get_bool(src, (FreeRDP_Settings_Keys_Bool)id);
440  return freerdp_settings_set_bool(dst, (FreeRDP_Settings_Keys_Bool)id, val);
441  }
442  case FREERDP_SETTINGS_TYPE_INT16:
443  {
444  const INT16 val = freerdp_settings_get_int16(src, (FreeRDP_Settings_Keys_Int16)id);
445  return freerdp_settings_set_int16(dst, (FreeRDP_Settings_Keys_Int16)id, val);
446  }
447  case FREERDP_SETTINGS_TYPE_INT32:
448  {
449  const INT32 val = freerdp_settings_get_int32(src, (FreeRDP_Settings_Keys_Int32)id);
450  return freerdp_settings_set_int32(dst, (FreeRDP_Settings_Keys_Int32)id, val);
451  }
452  case FREERDP_SETTINGS_TYPE_INT64:
453  {
454  const INT64 val = freerdp_settings_get_int64(src, (FreeRDP_Settings_Keys_Int64)id);
455  return freerdp_settings_set_int64(dst, (FreeRDP_Settings_Keys_Int64)id, val);
456  }
457  case FREERDP_SETTINGS_TYPE_UINT16:
458  {
459  const UINT16 val = freerdp_settings_get_uint16(src, (FreeRDP_Settings_Keys_UInt16)id);
460  return freerdp_settings_set_uint16(dst, (FreeRDP_Settings_Keys_UInt16)id, val);
461  }
462  case FREERDP_SETTINGS_TYPE_UINT32:
463  {
464  const UINT32 val = freerdp_settings_get_uint32(src, (FreeRDP_Settings_Keys_UInt32)id);
465  return freerdp_settings_set_uint32(dst, (FreeRDP_Settings_Keys_UInt32)id, val);
466  }
467  case FREERDP_SETTINGS_TYPE_UINT64:
468  {
469  const UINT64 val = freerdp_settings_get_uint64(src, (FreeRDP_Settings_Keys_UInt64)id);
470  return freerdp_settings_set_uint64(dst, (FreeRDP_Settings_Keys_UInt64)id, val);
471  }
472  case FREERDP_SETTINGS_TYPE_STRING:
473  {
474  const char* val = freerdp_settings_get_string(src, (FreeRDP_Settings_Keys_String)id);
475  return freerdp_settings_set_string(dst, (FreeRDP_Settings_Keys_String)id, val);
476  }
477  case FREERDP_SETTINGS_TYPE_POINTER:
478  {
479  const void* val = freerdp_settings_get_pointer(src, (FreeRDP_Settings_Keys_Pointer)id);
480  return freerdp_settings_set_pointer(dst, (FreeRDP_Settings_Keys_Pointer)id, val);
481  }
482  default:
483  return FALSE;
484  }
485 }
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_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.
BOOL freerdp_settings_print_diff(wLog *log, DWORD level, const rdpSettings *settings, const rdpSettings *other)
Dumps the difference between two settings structs to a WLog.
Definition: settings_str.c:96
const char * freerdp_settings_get_type_name_for_type(SSIZE_T type)
Returns the type name for a type.
Definition: settings_str.c:380
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
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 UINT64 freerdp_settings_get_uint64(const rdpSettings *settings, FreeRDP_Settings_Keys_UInt64 id)
Returns a UINT64 settings value.
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 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 BOOL freerdp_settings_set_int32(rdpSettings *settings, FreeRDP_Settings_Keys_Int32 id, INT32 param)
Sets a INT32 settings value.
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 UINT16 freerdp_settings_get_uint16(const rdpSettings *settings, FreeRDP_Settings_Keys_UInt16 id)
Returns a UINT16 settings value.
FREERDP_API BOOL freerdp_settings_set_uint64(rdpSettings *settings, FreeRDP_Settings_Keys_UInt64 id, UINT64 param)
Sets a UINT64 settings value.
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_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 BOOL freerdp_settings_set_uint32(rdpSettings *settings, FreeRDP_Settings_Keys_UInt32 id, UINT32 param)
Sets a UINT32 settings value.
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.
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.
const char * freerdp_settings_get_name_for_key(SSIZE_T key)
Returns the type name for a key.
Definition: settings_str.c:418
Definition: settings_str.h:27