1 /* Generated by */
2
3 #include <freerdp/settings.h>
4 #include <freerdp/log.h>
5
6 #define TAG FREERDP_TAG("common.settings")
7
freerdp_settings_get_bool(const rdpSettings * settings,size_t id)8 BOOL freerdp_settings_get_bool(const rdpSettings* settings, size_t id)
9 {
10 if (!settings)
11 return FALSE;
12
13 switch (id)
14 {
15 case FreeRDP_AllowCacheWaitingList:
16 return settings->AllowCacheWaitingList;
17
18 case FreeRDP_AllowDesktopComposition:
19 return settings->AllowDesktopComposition;
20
21 case FreeRDP_AllowFontSmoothing:
22 return settings->AllowFontSmoothing;
23
24 case FreeRDP_AllowUnanouncedOrdersFromServer:
25 return settings->AllowUnanouncedOrdersFromServer;
26
27 case FreeRDP_AltSecFrameMarkerSupport:
28 return settings->AltSecFrameMarkerSupport;
29
30 case FreeRDP_AsyncChannels:
31 return settings->AsyncChannels;
32
33 case FreeRDP_AsyncInput:
34 return settings->AsyncInput;
35
36 case FreeRDP_AsyncUpdate:
37 return settings->AsyncUpdate;
38
39 case FreeRDP_AudioCapture:
40 return settings->AudioCapture;
41
42 case FreeRDP_AudioPlayback:
43 return settings->AudioPlayback;
44
45 case FreeRDP_Authentication:
46 return settings->Authentication;
47
48 case FreeRDP_AuthenticationOnly:
49 return settings->AuthenticationOnly;
50
51 case FreeRDP_AutoAcceptCertificate:
52 return settings->AutoAcceptCertificate;
53
54 case FreeRDP_AutoDenyCertificate:
55 return settings->AutoDenyCertificate;
56
57 case FreeRDP_AutoLogonEnabled:
58 return settings->AutoLogonEnabled;
59
60 case FreeRDP_AutoReconnectionEnabled:
61 return settings->AutoReconnectionEnabled;
62
63 case FreeRDP_BitmapCacheEnabled:
64 return settings->BitmapCacheEnabled;
65
66 case FreeRDP_BitmapCachePersistEnabled:
67 return settings->BitmapCachePersistEnabled;
68
69 case FreeRDP_BitmapCacheV3Enabled:
70 return settings->BitmapCacheV3Enabled;
71
72 case FreeRDP_BitmapCompressionDisabled:
73 return settings->BitmapCompressionDisabled;
74
75 case FreeRDP_ColorPointerFlag:
76 return settings->ColorPointerFlag;
77
78 case FreeRDP_CompressionEnabled:
79 return settings->CompressionEnabled;
80
81 case FreeRDP_ConsoleSession:
82 return settings->ConsoleSession;
83
84 case FreeRDP_CredentialsFromStdin:
85 return settings->CredentialsFromStdin;
86
87 case FreeRDP_Decorations:
88 return settings->Decorations;
89
90 case FreeRDP_DesktopResize:
91 return settings->DesktopResize;
92
93 case FreeRDP_DeviceRedirection:
94 return settings->DeviceRedirection;
95
96 case FreeRDP_DisableCredentialsDelegation:
97 return settings->DisableCredentialsDelegation;
98
99 case FreeRDP_DisableCtrlAltDel:
100 return settings->DisableCtrlAltDel;
101
102 case FreeRDP_DisableCursorBlinking:
103 return settings->DisableCursorBlinking;
104
105 case FreeRDP_DisableCursorShadow:
106 return settings->DisableCursorShadow;
107
108 case FreeRDP_DisableFullWindowDrag:
109 return settings->DisableFullWindowDrag;
110
111 case FreeRDP_DisableMenuAnims:
112 return settings->DisableMenuAnims;
113
114 case FreeRDP_DisableRemoteAppCapsCheck:
115 return settings->DisableRemoteAppCapsCheck;
116
117 case FreeRDP_DisableThemes:
118 return settings->DisableThemes;
119
120 case FreeRDP_DisableWallpaper:
121 return settings->DisableWallpaper;
122
123 case FreeRDP_DrawAllowColorSubsampling:
124 return settings->DrawAllowColorSubsampling;
125
126 case FreeRDP_DrawAllowDynamicColorFidelity:
127 return settings->DrawAllowDynamicColorFidelity;
128
129 case FreeRDP_DrawAllowSkipAlpha:
130 return settings->DrawAllowSkipAlpha;
131
132 case FreeRDP_DrawGdiPlusCacheEnabled:
133 return settings->DrawGdiPlusCacheEnabled;
134
135 case FreeRDP_DrawGdiPlusEnabled:
136 return settings->DrawGdiPlusEnabled;
137
138 case FreeRDP_DrawNineGridEnabled:
139 return settings->DrawNineGridEnabled;
140
141 case FreeRDP_DumpRemoteFx:
142 return settings->DumpRemoteFx;
143
144 case FreeRDP_DynamicDaylightTimeDisabled:
145 return settings->DynamicDaylightTimeDisabled;
146
147 case FreeRDP_DynamicResolutionUpdate:
148 return settings->DynamicResolutionUpdate;
149
150 case FreeRDP_EmbeddedWindow:
151 return settings->EmbeddedWindow;
152
153 case FreeRDP_EnableWindowsKey:
154 return settings->EnableWindowsKey;
155
156 case FreeRDP_EncomspVirtualChannel:
157 return settings->EncomspVirtualChannel;
158
159 case FreeRDP_ExtSecurity:
160 return settings->ExtSecurity;
161
162 case FreeRDP_ExternalCertificateManagement:
163 return settings->ExternalCertificateManagement;
164
165 case FreeRDP_FIPSMode:
166 return settings->FIPSMode;
167
168 case FreeRDP_FastPathInput:
169 return settings->FastPathInput;
170
171 case FreeRDP_FastPathOutput:
172 return settings->FastPathOutput;
173
174 case FreeRDP_ForceEncryptedCsPdu:
175 return settings->ForceEncryptedCsPdu;
176
177 case FreeRDP_ForceMultimon:
178 return settings->ForceMultimon;
179
180 case FreeRDP_FrameMarkerCommandEnabled:
181 return settings->FrameMarkerCommandEnabled;
182
183 case FreeRDP_Fullscreen:
184 return settings->Fullscreen;
185
186 case FreeRDP_GatewayBypassLocal:
187 return settings->GatewayBypassLocal;
188
189 case FreeRDP_GatewayEnabled:
190 return settings->GatewayEnabled;
191
192 case FreeRDP_GatewayHttpTransport:
193 return settings->GatewayHttpTransport;
194
195 case FreeRDP_GatewayHttpUseWebsockets:
196 return settings->GatewayHttpUseWebsockets;
197
198 case FreeRDP_GatewayRpcTransport:
199 return settings->GatewayRpcTransport;
200
201 case FreeRDP_GatewayUdpTransport:
202 return settings->GatewayUdpTransport;
203
204 case FreeRDP_GatewayUseSameCredentials:
205 return settings->GatewayUseSameCredentials;
206
207 case FreeRDP_GfxAVC444:
208 return settings->GfxAVC444;
209
210 case FreeRDP_GfxAVC444v2:
211 return settings->GfxAVC444v2;
212
213 case FreeRDP_GfxH264:
214 return settings->GfxH264;
215
216 case FreeRDP_GfxProgressive:
217 return settings->GfxProgressive;
218
219 case FreeRDP_GfxProgressiveV2:
220 return settings->GfxProgressiveV2;
221
222 case FreeRDP_GfxSendQoeAck:
223 return settings->GfxSendQoeAck;
224
225 case FreeRDP_GfxSmallCache:
226 return settings->GfxSmallCache;
227
228 case FreeRDP_GfxThinClient:
229 return settings->GfxThinClient;
230
231 case FreeRDP_GrabKeyboard:
232 return settings->GrabKeyboard;
233
234 case FreeRDP_HasExtendedMouseEvent:
235 return settings->HasExtendedMouseEvent;
236
237 case FreeRDP_HasHorizontalWheel:
238 return settings->HasHorizontalWheel;
239
240 case FreeRDP_HasMonitorAttributes:
241 return settings->HasMonitorAttributes;
242
243 case FreeRDP_HiDefRemoteApp:
244 return settings->HiDefRemoteApp;
245
246 case FreeRDP_IPv6Enabled:
247 return settings->IPv6Enabled;
248
249 case FreeRDP_IgnoreCertificate:
250 return settings->IgnoreCertificate;
251
252 case FreeRDP_JpegCodec:
253 return settings->JpegCodec;
254
255 case FreeRDP_ListMonitors:
256 return settings->ListMonitors;
257
258 case FreeRDP_LocalConnection:
259 return settings->LocalConnection;
260
261 case FreeRDP_LogonErrors:
262 return settings->LogonErrors;
263
264 case FreeRDP_LogonNotify:
265 return settings->LogonNotify;
266
267 case FreeRDP_LongCredentialsSupported:
268 return settings->LongCredentialsSupported;
269
270 case FreeRDP_LyncRdpMode:
271 return settings->LyncRdpMode;
272
273 case FreeRDP_MaximizeShell:
274 return settings->MaximizeShell;
275
276 case FreeRDP_MouseAttached:
277 return settings->MouseAttached;
278
279 case FreeRDP_MouseHasWheel:
280 return settings->MouseHasWheel;
281
282 case FreeRDP_MouseMotion:
283 return settings->MouseMotion;
284
285 case FreeRDP_MstscCookieMode:
286 return settings->MstscCookieMode;
287
288 case FreeRDP_MultiTouchGestures:
289 return settings->MultiTouchGestures;
290
291 case FreeRDP_MultiTouchInput:
292 return settings->MultiTouchInput;
293
294 case FreeRDP_NSCodec:
295 return settings->NSCodec;
296
297 case FreeRDP_NSCodecAllowDynamicColorFidelity:
298 return settings->NSCodecAllowDynamicColorFidelity;
299
300 case FreeRDP_NSCodecAllowSubsampling:
301 return settings->NSCodecAllowSubsampling;
302
303 case FreeRDP_NegotiateSecurityLayer:
304 return settings->NegotiateSecurityLayer;
305
306 case FreeRDP_NetworkAutoDetect:
307 return settings->NetworkAutoDetect;
308
309 case FreeRDP_NlaSecurity:
310 return settings->NlaSecurity;
311
312 case FreeRDP_NoBitmapCompressionHeader:
313 return settings->NoBitmapCompressionHeader;
314
315 case FreeRDP_OldLicenseBehaviour:
316 return settings->OldLicenseBehaviour;
317
318 case FreeRDP_PasswordIsSmartcardPin:
319 return settings->PasswordIsSmartcardPin;
320
321 case FreeRDP_PercentScreenUseHeight:
322 return settings->PercentScreenUseHeight;
323
324 case FreeRDP_PercentScreenUseWidth:
325 return settings->PercentScreenUseWidth;
326
327 case FreeRDP_PlayRemoteFx:
328 return settings->PlayRemoteFx;
329
330 case FreeRDP_PreferIPv6OverIPv4:
331 return settings->PreferIPv6OverIPv4;
332
333 case FreeRDP_PrintReconnectCookie:
334 return settings->PrintReconnectCookie;
335
336 case FreeRDP_PromptForCredentials:
337 return settings->PromptForCredentials;
338
339 case FreeRDP_RdpSecurity:
340 return settings->RdpSecurity;
341
342 case FreeRDP_RedirectClipboard:
343 return settings->RedirectClipboard;
344
345 case FreeRDP_RedirectDrives:
346 return settings->RedirectDrives;
347
348 case FreeRDP_RedirectHomeDrive:
349 return settings->RedirectHomeDrive;
350
351 case FreeRDP_RedirectParallelPorts:
352 return settings->RedirectParallelPorts;
353
354 case FreeRDP_RedirectPrinters:
355 return settings->RedirectPrinters;
356
357 case FreeRDP_RedirectSerialPorts:
358 return settings->RedirectSerialPorts;
359
360 case FreeRDP_RedirectSmartCards:
361 return settings->RedirectSmartCards;
362
363 case FreeRDP_RefreshRect:
364 return settings->RefreshRect;
365
366 case FreeRDP_RemdeskVirtualChannel:
367 return settings->RemdeskVirtualChannel;
368
369 case FreeRDP_RemoteAppLanguageBarSupported:
370 return settings->RemoteAppLanguageBarSupported;
371
372 case FreeRDP_RemoteApplicationMode:
373 return settings->RemoteApplicationMode;
374
375 case FreeRDP_RemoteAssistanceMode:
376 return settings->RemoteAssistanceMode;
377
378 case FreeRDP_RemoteAssistanceRequestControl:
379 return settings->RemoteAssistanceRequestControl;
380
381 case FreeRDP_RemoteConsoleAudio:
382 return settings->RemoteConsoleAudio;
383
384 case FreeRDP_RemoteFxCodec:
385 return settings->RemoteFxCodec;
386
387 case FreeRDP_RemoteFxImageCodec:
388 return settings->RemoteFxImageCodec;
389
390 case FreeRDP_RemoteFxOnly:
391 return settings->RemoteFxOnly;
392
393 case FreeRDP_RestrictedAdminModeRequired:
394 return settings->RestrictedAdminModeRequired;
395
396 case FreeRDP_SaltedChecksum:
397 return settings->SaltedChecksum;
398
399 case FreeRDP_SendPreconnectionPdu:
400 return settings->SendPreconnectionPdu;
401
402 case FreeRDP_ServerMode:
403 return settings->ServerMode;
404
405 case FreeRDP_SmartSizing:
406 return settings->SmartSizing;
407
408 case FreeRDP_SmartcardLogon:
409 return settings->SmartcardLogon;
410
411 case FreeRDP_SoftwareGdi:
412 return settings->SoftwareGdi;
413
414 case FreeRDP_SoundBeepsEnabled:
415 return settings->SoundBeepsEnabled;
416
417 case FreeRDP_SpanMonitors:
418 return settings->SpanMonitors;
419
420 case FreeRDP_SupportAsymetricKeys:
421 return settings->SupportAsymetricKeys;
422
423 case FreeRDP_SupportDisplayControl:
424 return settings->SupportDisplayControl;
425
426 case FreeRDP_SupportDynamicChannels:
427 return settings->SupportDynamicChannels;
428
429 case FreeRDP_SupportDynamicTimeZone:
430 return settings->SupportDynamicTimeZone;
431
432 case FreeRDP_SupportEchoChannel:
433 return settings->SupportEchoChannel;
434
435 case FreeRDP_SupportErrorInfoPdu:
436 return settings->SupportErrorInfoPdu;
437
438 case FreeRDP_SupportGeometryTracking:
439 return settings->SupportGeometryTracking;
440
441 case FreeRDP_SupportGraphicsPipeline:
442 return settings->SupportGraphicsPipeline;
443
444 case FreeRDP_SupportHeartbeatPdu:
445 return settings->SupportHeartbeatPdu;
446
447 case FreeRDP_SupportMonitorLayoutPdu:
448 return settings->SupportMonitorLayoutPdu;
449
450 case FreeRDP_SupportMultitransport:
451 return settings->SupportMultitransport;
452
453 case FreeRDP_SupportSSHAgentChannel:
454 return settings->SupportSSHAgentChannel;
455
456 case FreeRDP_SupportStatusInfoPdu:
457 return settings->SupportStatusInfoPdu;
458
459 case FreeRDP_SupportVideoOptimized:
460 return settings->SupportVideoOptimized;
461
462 case FreeRDP_SuppressOutput:
463 return settings->SuppressOutput;
464
465 case FreeRDP_SurfaceCommandsEnabled:
466 return settings->SurfaceCommandsEnabled;
467
468 case FreeRDP_SurfaceFrameMarkerEnabled:
469 return settings->SurfaceFrameMarkerEnabled;
470
471 case FreeRDP_TcpKeepAlive:
472 return settings->TcpKeepAlive;
473
474 case FreeRDP_TlsSecurity:
475 return settings->TlsSecurity;
476
477 case FreeRDP_ToggleFullscreen:
478 return settings->ToggleFullscreen;
479
480 case FreeRDP_UnicodeInput:
481 return settings->UnicodeInput;
482
483 case FreeRDP_UnmapButtons:
484 return settings->UnmapButtons;
485
486 case FreeRDP_UseMultimon:
487 return settings->UseMultimon;
488
489 case FreeRDP_UseRdpSecurityLayer:
490 return settings->UseRdpSecurityLayer;
491
492 case FreeRDP_UsingSavedCredentials:
493 return settings->UsingSavedCredentials;
494
495 case FreeRDP_VideoDisable:
496 return settings->VideoDisable;
497
498 case FreeRDP_VmConnectMode:
499 return settings->VmConnectMode;
500
501 case FreeRDP_WaitForOutputBufferFlush:
502 return settings->WaitForOutputBufferFlush;
503
504 case FreeRDP_Workarea:
505 return settings->Workarea;
506
507 default:
508 WLog_ERR(TAG, "[%s] Invalid key index %" PRIuz, __FUNCTION__, id);
509 return FALSE;
510 }
511 }
512
freerdp_settings_set_bool(rdpSettings * settings,size_t id,BOOL val)513 BOOL freerdp_settings_set_bool(rdpSettings* settings, size_t id, BOOL val)
514 {
515 if (!settings)
516 return FALSE;
517
518 switch (id)
519 {
520 case FreeRDP_AllowCacheWaitingList:
521 settings->AllowCacheWaitingList = val;
522 break;
523
524 case FreeRDP_AllowDesktopComposition:
525 settings->AllowDesktopComposition = val;
526 break;
527
528 case FreeRDP_AllowFontSmoothing:
529 settings->AllowFontSmoothing = val;
530 break;
531
532 case FreeRDP_AllowUnanouncedOrdersFromServer:
533 settings->AllowUnanouncedOrdersFromServer = val;
534 break;
535
536 case FreeRDP_AltSecFrameMarkerSupport:
537 settings->AltSecFrameMarkerSupport = val;
538 break;
539
540 case FreeRDP_AsyncChannels:
541 settings->AsyncChannels = val;
542 break;
543
544 case FreeRDP_AsyncInput:
545 settings->AsyncInput = val;
546 break;
547
548 case FreeRDP_AsyncUpdate:
549 settings->AsyncUpdate = val;
550 break;
551
552 case FreeRDP_AudioCapture:
553 settings->AudioCapture = val;
554 break;
555
556 case FreeRDP_AudioPlayback:
557 settings->AudioPlayback = val;
558 break;
559
560 case FreeRDP_Authentication:
561 settings->Authentication = val;
562 break;
563
564 case FreeRDP_AuthenticationOnly:
565 settings->AuthenticationOnly = val;
566 break;
567
568 case FreeRDP_AutoAcceptCertificate:
569 settings->AutoAcceptCertificate = val;
570 break;
571
572 case FreeRDP_AutoDenyCertificate:
573 settings->AutoDenyCertificate = val;
574 break;
575
576 case FreeRDP_AutoLogonEnabled:
577 settings->AutoLogonEnabled = val;
578 break;
579
580 case FreeRDP_AutoReconnectionEnabled:
581 settings->AutoReconnectionEnabled = val;
582 break;
583
584 case FreeRDP_BitmapCacheEnabled:
585 settings->BitmapCacheEnabled = val;
586 break;
587
588 case FreeRDP_BitmapCachePersistEnabled:
589 settings->BitmapCachePersistEnabled = val;
590 break;
591
592 case FreeRDP_BitmapCacheV3Enabled:
593 settings->BitmapCacheV3Enabled = val;
594 break;
595
596 case FreeRDP_BitmapCompressionDisabled:
597 settings->BitmapCompressionDisabled = val;
598 break;
599
600 case FreeRDP_ColorPointerFlag:
601 settings->ColorPointerFlag = val;
602 break;
603
604 case FreeRDP_CompressionEnabled:
605 settings->CompressionEnabled = val;
606 break;
607
608 case FreeRDP_ConsoleSession:
609 settings->ConsoleSession = val;
610 break;
611
612 case FreeRDP_CredentialsFromStdin:
613 settings->CredentialsFromStdin = val;
614 break;
615
616 case FreeRDP_Decorations:
617 settings->Decorations = val;
618 break;
619
620 case FreeRDP_DesktopResize:
621 settings->DesktopResize = val;
622 break;
623
624 case FreeRDP_DeviceRedirection:
625 settings->DeviceRedirection = val;
626 break;
627
628 case FreeRDP_DisableCredentialsDelegation:
629 settings->DisableCredentialsDelegation = val;
630 break;
631
632 case FreeRDP_DisableCtrlAltDel:
633 settings->DisableCtrlAltDel = val;
634 break;
635
636 case FreeRDP_DisableCursorBlinking:
637 settings->DisableCursorBlinking = val;
638 break;
639
640 case FreeRDP_DisableCursorShadow:
641 settings->DisableCursorShadow = val;
642 break;
643
644 case FreeRDP_DisableFullWindowDrag:
645 settings->DisableFullWindowDrag = val;
646 break;
647
648 case FreeRDP_DisableMenuAnims:
649 settings->DisableMenuAnims = val;
650 break;
651
652 case FreeRDP_DisableRemoteAppCapsCheck:
653 settings->DisableRemoteAppCapsCheck = val;
654 break;
655
656 case FreeRDP_DisableThemes:
657 settings->DisableThemes = val;
658 break;
659
660 case FreeRDP_DisableWallpaper:
661 settings->DisableWallpaper = val;
662 break;
663
664 case FreeRDP_DrawAllowColorSubsampling:
665 settings->DrawAllowColorSubsampling = val;
666 break;
667
668 case FreeRDP_DrawAllowDynamicColorFidelity:
669 settings->DrawAllowDynamicColorFidelity = val;
670 break;
671
672 case FreeRDP_DrawAllowSkipAlpha:
673 settings->DrawAllowSkipAlpha = val;
674 break;
675
676 case FreeRDP_DrawGdiPlusCacheEnabled:
677 settings->DrawGdiPlusCacheEnabled = val;
678 break;
679
680 case FreeRDP_DrawGdiPlusEnabled:
681 settings->DrawGdiPlusEnabled = val;
682 break;
683
684 case FreeRDP_DrawNineGridEnabled:
685 settings->DrawNineGridEnabled = val;
686 break;
687
688 case FreeRDP_DumpRemoteFx:
689 settings->DumpRemoteFx = val;
690 break;
691
692 case FreeRDP_DynamicDaylightTimeDisabled:
693 settings->DynamicDaylightTimeDisabled = val;
694 break;
695
696 case FreeRDP_DynamicResolutionUpdate:
697 settings->DynamicResolutionUpdate = val;
698 break;
699
700 case FreeRDP_EmbeddedWindow:
701 settings->EmbeddedWindow = val;
702 break;
703
704 case FreeRDP_EnableWindowsKey:
705 settings->EnableWindowsKey = val;
706 break;
707
708 case FreeRDP_EncomspVirtualChannel:
709 settings->EncomspVirtualChannel = val;
710 break;
711
712 case FreeRDP_ExtSecurity:
713 settings->ExtSecurity = val;
714 break;
715
716 case FreeRDP_ExternalCertificateManagement:
717 settings->ExternalCertificateManagement = val;
718 break;
719
720 case FreeRDP_FIPSMode:
721 settings->FIPSMode = val;
722 break;
723
724 case FreeRDP_FastPathInput:
725 settings->FastPathInput = val;
726 break;
727
728 case FreeRDP_FastPathOutput:
729 settings->FastPathOutput = val;
730 break;
731
732 case FreeRDP_ForceEncryptedCsPdu:
733 settings->ForceEncryptedCsPdu = val;
734 break;
735
736 case FreeRDP_ForceMultimon:
737 settings->ForceMultimon = val;
738 break;
739
740 case FreeRDP_FrameMarkerCommandEnabled:
741 settings->FrameMarkerCommandEnabled = val;
742 break;
743
744 case FreeRDP_Fullscreen:
745 settings->Fullscreen = val;
746 break;
747
748 case FreeRDP_GatewayBypassLocal:
749 settings->GatewayBypassLocal = val;
750 break;
751
752 case FreeRDP_GatewayEnabled:
753 settings->GatewayEnabled = val;
754 break;
755
756 case FreeRDP_GatewayHttpTransport:
757 settings->GatewayHttpTransport = val;
758 break;
759
760 case FreeRDP_GatewayHttpUseWebsockets:
761 settings->GatewayHttpUseWebsockets = val;
762 break;
763
764 case FreeRDP_GatewayRpcTransport:
765 settings->GatewayRpcTransport = val;
766 break;
767
768 case FreeRDP_GatewayUdpTransport:
769 settings->GatewayUdpTransport = val;
770 break;
771
772 case FreeRDP_GatewayUseSameCredentials:
773 settings->GatewayUseSameCredentials = val;
774 break;
775
776 case FreeRDP_GfxAVC444:
777 settings->GfxAVC444 = val;
778 break;
779
780 case FreeRDP_GfxAVC444v2:
781 settings->GfxAVC444v2 = val;
782 break;
783
784 case FreeRDP_GfxH264:
785 settings->GfxH264 = val;
786 break;
787
788 case FreeRDP_GfxProgressive:
789 settings->GfxProgressive = val;
790 break;
791
792 case FreeRDP_GfxProgressiveV2:
793 settings->GfxProgressiveV2 = val;
794 break;
795
796 case FreeRDP_GfxSendQoeAck:
797 settings->GfxSendQoeAck = val;
798 break;
799
800 case FreeRDP_GfxSmallCache:
801 settings->GfxSmallCache = val;
802 break;
803
804 case FreeRDP_GfxThinClient:
805 settings->GfxThinClient = val;
806 break;
807
808 case FreeRDP_GrabKeyboard:
809 settings->GrabKeyboard = val;
810 break;
811
812 case FreeRDP_HasExtendedMouseEvent:
813 settings->HasExtendedMouseEvent = val;
814 break;
815
816 case FreeRDP_HasHorizontalWheel:
817 settings->HasHorizontalWheel = val;
818 break;
819
820 case FreeRDP_HasMonitorAttributes:
821 settings->HasMonitorAttributes = val;
822 break;
823
824 case FreeRDP_HiDefRemoteApp:
825 settings->HiDefRemoteApp = val;
826 break;
827
828 case FreeRDP_IPv6Enabled:
829 settings->IPv6Enabled = val;
830 break;
831
832 case FreeRDP_IgnoreCertificate:
833 settings->IgnoreCertificate = val;
834 break;
835
836 case FreeRDP_JpegCodec:
837 settings->JpegCodec = val;
838 break;
839
840 case FreeRDP_ListMonitors:
841 settings->ListMonitors = val;
842 break;
843
844 case FreeRDP_LocalConnection:
845 settings->LocalConnection = val;
846 break;
847
848 case FreeRDP_LogonErrors:
849 settings->LogonErrors = val;
850 break;
851
852 case FreeRDP_LogonNotify:
853 settings->LogonNotify = val;
854 break;
855
856 case FreeRDP_LongCredentialsSupported:
857 settings->LongCredentialsSupported = val;
858 break;
859
860 case FreeRDP_LyncRdpMode:
861 settings->LyncRdpMode = val;
862 break;
863
864 case FreeRDP_MaximizeShell:
865 settings->MaximizeShell = val;
866 break;
867
868 case FreeRDP_MouseAttached:
869 settings->MouseAttached = val;
870 break;
871
872 case FreeRDP_MouseHasWheel:
873 settings->MouseHasWheel = val;
874 break;
875
876 case FreeRDP_MouseMotion:
877 settings->MouseMotion = val;
878 break;
879
880 case FreeRDP_MstscCookieMode:
881 settings->MstscCookieMode = val;
882 break;
883
884 case FreeRDP_MultiTouchGestures:
885 settings->MultiTouchGestures = val;
886 break;
887
888 case FreeRDP_MultiTouchInput:
889 settings->MultiTouchInput = val;
890 break;
891
892 case FreeRDP_NSCodec:
893 settings->NSCodec = val;
894 break;
895
896 case FreeRDP_NSCodecAllowDynamicColorFidelity:
897 settings->NSCodecAllowDynamicColorFidelity = val;
898 break;
899
900 case FreeRDP_NSCodecAllowSubsampling:
901 settings->NSCodecAllowSubsampling = val;
902 break;
903
904 case FreeRDP_NegotiateSecurityLayer:
905 settings->NegotiateSecurityLayer = val;
906 break;
907
908 case FreeRDP_NetworkAutoDetect:
909 settings->NetworkAutoDetect = val;
910 break;
911
912 case FreeRDP_NlaSecurity:
913 settings->NlaSecurity = val;
914 break;
915
916 case FreeRDP_NoBitmapCompressionHeader:
917 settings->NoBitmapCompressionHeader = val;
918 break;
919
920 case FreeRDP_OldLicenseBehaviour:
921 settings->OldLicenseBehaviour = val;
922 break;
923
924 case FreeRDP_PasswordIsSmartcardPin:
925 settings->PasswordIsSmartcardPin = val;
926 break;
927
928 case FreeRDP_PercentScreenUseHeight:
929 settings->PercentScreenUseHeight = val;
930 break;
931
932 case FreeRDP_PercentScreenUseWidth:
933 settings->PercentScreenUseWidth = val;
934 break;
935
936 case FreeRDP_PlayRemoteFx:
937 settings->PlayRemoteFx = val;
938 break;
939
940 case FreeRDP_PreferIPv6OverIPv4:
941 settings->PreferIPv6OverIPv4 = val;
942 break;
943
944 case FreeRDP_PrintReconnectCookie:
945 settings->PrintReconnectCookie = val;
946 break;
947
948 case FreeRDP_PromptForCredentials:
949 settings->PromptForCredentials = val;
950 break;
951
952 case FreeRDP_RdpSecurity:
953 settings->RdpSecurity = val;
954 break;
955
956 case FreeRDP_RedirectClipboard:
957 settings->RedirectClipboard = val;
958 break;
959
960 case FreeRDP_RedirectDrives:
961 settings->RedirectDrives = val;
962 break;
963
964 case FreeRDP_RedirectHomeDrive:
965 settings->RedirectHomeDrive = val;
966 break;
967
968 case FreeRDP_RedirectParallelPorts:
969 settings->RedirectParallelPorts = val;
970 break;
971
972 case FreeRDP_RedirectPrinters:
973 settings->RedirectPrinters = val;
974 break;
975
976 case FreeRDP_RedirectSerialPorts:
977 settings->RedirectSerialPorts = val;
978 break;
979
980 case FreeRDP_RedirectSmartCards:
981 settings->RedirectSmartCards = val;
982 break;
983
984 case FreeRDP_RefreshRect:
985 settings->RefreshRect = val;
986 break;
987
988 case FreeRDP_RemdeskVirtualChannel:
989 settings->RemdeskVirtualChannel = val;
990 break;
991
992 case FreeRDP_RemoteAppLanguageBarSupported:
993 settings->RemoteAppLanguageBarSupported = val;
994 break;
995
996 case FreeRDP_RemoteApplicationMode:
997 settings->RemoteApplicationMode = val;
998 break;
999
1000 case FreeRDP_RemoteAssistanceMode:
1001 settings->RemoteAssistanceMode = val;
1002 break;
1003
1004 case FreeRDP_RemoteAssistanceRequestControl:
1005 settings->RemoteAssistanceRequestControl = val;
1006 break;
1007
1008 case FreeRDP_RemoteConsoleAudio:
1009 settings->RemoteConsoleAudio = val;
1010 break;
1011
1012 case FreeRDP_RemoteFxCodec:
1013 settings->RemoteFxCodec = val;
1014 break;
1015
1016 case FreeRDP_RemoteFxImageCodec:
1017 settings->RemoteFxImageCodec = val;
1018 break;
1019
1020 case FreeRDP_RemoteFxOnly:
1021 settings->RemoteFxOnly = val;
1022 break;
1023
1024 case FreeRDP_RestrictedAdminModeRequired:
1025 settings->RestrictedAdminModeRequired = val;
1026 break;
1027
1028 case FreeRDP_SaltedChecksum:
1029 settings->SaltedChecksum = val;
1030 break;
1031
1032 case FreeRDP_SendPreconnectionPdu:
1033 settings->SendPreconnectionPdu = val;
1034 break;
1035
1036 case FreeRDP_ServerMode:
1037 settings->ServerMode = val;
1038 break;
1039
1040 case FreeRDP_SmartSizing:
1041 settings->SmartSizing = val;
1042 break;
1043
1044 case FreeRDP_SmartcardLogon:
1045 settings->SmartcardLogon = val;
1046 break;
1047
1048 case FreeRDP_SoftwareGdi:
1049 settings->SoftwareGdi = val;
1050 break;
1051
1052 case FreeRDP_SoundBeepsEnabled:
1053 settings->SoundBeepsEnabled = val;
1054 break;
1055
1056 case FreeRDP_SpanMonitors:
1057 settings->SpanMonitors = val;
1058 break;
1059
1060 case FreeRDP_SupportAsymetricKeys:
1061 settings->SupportAsymetricKeys = val;
1062 break;
1063
1064 case FreeRDP_SupportDisplayControl:
1065 settings->SupportDisplayControl = val;
1066 break;
1067
1068 case FreeRDP_SupportDynamicChannels:
1069 settings->SupportDynamicChannels = val;
1070 break;
1071
1072 case FreeRDP_SupportDynamicTimeZone:
1073 settings->SupportDynamicTimeZone = val;
1074 break;
1075
1076 case FreeRDP_SupportEchoChannel:
1077 settings->SupportEchoChannel = val;
1078 break;
1079
1080 case FreeRDP_SupportErrorInfoPdu:
1081 settings->SupportErrorInfoPdu = val;
1082 break;
1083
1084 case FreeRDP_SupportGeometryTracking:
1085 settings->SupportGeometryTracking = val;
1086 break;
1087
1088 case FreeRDP_SupportGraphicsPipeline:
1089 settings->SupportGraphicsPipeline = val;
1090 break;
1091
1092 case FreeRDP_SupportHeartbeatPdu:
1093 settings->SupportHeartbeatPdu = val;
1094 break;
1095
1096 case FreeRDP_SupportMonitorLayoutPdu:
1097 settings->SupportMonitorLayoutPdu = val;
1098 break;
1099
1100 case FreeRDP_SupportMultitransport:
1101 settings->SupportMultitransport = val;
1102 break;
1103
1104 case FreeRDP_SupportSSHAgentChannel:
1105 settings->SupportSSHAgentChannel = val;
1106 break;
1107
1108 case FreeRDP_SupportStatusInfoPdu:
1109 settings->SupportStatusInfoPdu = val;
1110 break;
1111
1112 case FreeRDP_SupportVideoOptimized:
1113 settings->SupportVideoOptimized = val;
1114 break;
1115
1116 case FreeRDP_SuppressOutput:
1117 settings->SuppressOutput = val;
1118 break;
1119
1120 case FreeRDP_SurfaceCommandsEnabled:
1121 settings->SurfaceCommandsEnabled = val;
1122 break;
1123
1124 case FreeRDP_SurfaceFrameMarkerEnabled:
1125 settings->SurfaceFrameMarkerEnabled = val;
1126 break;
1127
1128 case FreeRDP_TcpKeepAlive:
1129 settings->TcpKeepAlive = val;
1130 break;
1131
1132 case FreeRDP_TlsSecurity:
1133 settings->TlsSecurity = val;
1134 break;
1135
1136 case FreeRDP_ToggleFullscreen:
1137 settings->ToggleFullscreen = val;
1138 break;
1139
1140 case FreeRDP_UnicodeInput:
1141 settings->UnicodeInput = val;
1142 break;
1143
1144 case FreeRDP_UnmapButtons:
1145 settings->UnmapButtons = val;
1146 break;
1147
1148 case FreeRDP_UseMultimon:
1149 settings->UseMultimon = val;
1150 break;
1151
1152 case FreeRDP_UseRdpSecurityLayer:
1153 settings->UseRdpSecurityLayer = val;
1154 break;
1155
1156 case FreeRDP_UsingSavedCredentials:
1157 settings->UsingSavedCredentials = val;
1158 break;
1159
1160 case FreeRDP_VideoDisable:
1161 settings->VideoDisable = val;
1162 break;
1163
1164 case FreeRDP_VmConnectMode:
1165 settings->VmConnectMode = val;
1166 break;
1167
1168 case FreeRDP_WaitForOutputBufferFlush:
1169 settings->WaitForOutputBufferFlush = val;
1170 break;
1171
1172 case FreeRDP_Workarea:
1173 settings->Workarea = val;
1174 break;
1175
1176 default:
1177 WLog_ERR(TAG, "[%s] Invalid key index %" PRIuz, __FUNCTION__, id);
1178 return FALSE;
1179 }
1180 return TRUE;
1181 }
1182
freerdp_settings_get_uint16(const rdpSettings * settings,size_t id)1183 UINT16 freerdp_settings_get_uint16(const rdpSettings* settings, size_t id)
1184 {
1185 if (!settings)
1186 return FALSE;
1187
1188 switch (id)
1189 {
1190 case FreeRDP_DesktopOrientation:
1191 return settings->DesktopOrientation;
1192
1193 case FreeRDP_ProxyPort:
1194 return settings->ProxyPort;
1195
1196 default:
1197 WLog_ERR(TAG, "[%s] Invalid key index %" PRIuz, __FUNCTION__, id);
1198 return FALSE;
1199 }
1200 }
1201
freerdp_settings_set_uint16(rdpSettings * settings,size_t id,UINT16 val)1202 BOOL freerdp_settings_set_uint16(rdpSettings* settings, size_t id, UINT16 val)
1203 {
1204 if (!settings)
1205 return FALSE;
1206
1207 switch (id)
1208 {
1209 case FreeRDP_DesktopOrientation:
1210 settings->DesktopOrientation = val;
1211 break;
1212
1213 case FreeRDP_ProxyPort:
1214 settings->ProxyPort = val;
1215 break;
1216
1217 default:
1218 WLog_ERR(TAG, "[%s] Invalid key index %" PRIuz, __FUNCTION__, id);
1219 return FALSE;
1220 }
1221 return TRUE;
1222 }
1223
freerdp_settings_get_int16(const rdpSettings * settings,size_t id)1224 INT16 freerdp_settings_get_int16(const rdpSettings* settings, size_t id)
1225 {
1226 if (!settings)
1227 return FALSE;
1228
1229 switch (id)
1230 {
1231 default:
1232 WLog_ERR(TAG, "[%s] Invalid key index %" PRIuz, __FUNCTION__, id);
1233 return FALSE;
1234 }
1235 }
1236
freerdp_settings_set_int16(rdpSettings * settings,size_t id,INT16 val)1237 BOOL freerdp_settings_set_int16(rdpSettings* settings, size_t id, INT16 val)
1238 {
1239 if (!settings)
1240 return FALSE;
1241
1242 switch (id)
1243 {
1244 default:
1245 WLog_ERR(TAG, "[%s] Invalid key index %" PRIuz, __FUNCTION__, id);
1246 return FALSE;
1247 }
1248 return TRUE;
1249 }
1250
freerdp_settings_get_uint32(const rdpSettings * settings,size_t id)1251 UINT32 freerdp_settings_get_uint32(const rdpSettings* settings, size_t id)
1252 {
1253 if (!settings)
1254 return FALSE;
1255
1256 switch (id)
1257 {
1258 case FreeRDP_AcceptedCertLength:
1259 return settings->AcceptedCertLength;
1260
1261 case FreeRDP_AuthenticationLevel:
1262 return settings->AuthenticationLevel;
1263
1264 case FreeRDP_AutoReconnectMaxRetries:
1265 return settings->AutoReconnectMaxRetries;
1266
1267 case FreeRDP_BitmapCacheV2NumCells:
1268 return settings->BitmapCacheV2NumCells;
1269
1270 case FreeRDP_BitmapCacheV3CodecId:
1271 return settings->BitmapCacheV3CodecId;
1272
1273 case FreeRDP_BitmapCacheVersion:
1274 return settings->BitmapCacheVersion;
1275
1276 case FreeRDP_BrushSupportLevel:
1277 return settings->BrushSupportLevel;
1278
1279 case FreeRDP_ChannelCount:
1280 return settings->ChannelCount;
1281
1282 case FreeRDP_ChannelDefArraySize:
1283 return settings->ChannelDefArraySize;
1284
1285 case FreeRDP_ClientBuild:
1286 return settings->ClientBuild;
1287
1288 case FreeRDP_ClientRandomLength:
1289 return settings->ClientRandomLength;
1290
1291 case FreeRDP_ClusterInfoFlags:
1292 return settings->ClusterInfoFlags;
1293
1294 case FreeRDP_ColorDepth:
1295 return settings->ColorDepth;
1296
1297 case FreeRDP_CompDeskSupportLevel:
1298 return settings->CompDeskSupportLevel;
1299
1300 case FreeRDP_CompressionLevel:
1301 return settings->CompressionLevel;
1302
1303 case FreeRDP_ConnectionType:
1304 return settings->ConnectionType;
1305
1306 case FreeRDP_CookieMaxLength:
1307 return settings->CookieMaxLength;
1308
1309 case FreeRDP_DesktopHeight:
1310 return settings->DesktopHeight;
1311
1312 case FreeRDP_DesktopPhysicalHeight:
1313 return settings->DesktopPhysicalHeight;
1314
1315 case FreeRDP_DesktopPhysicalWidth:
1316 return settings->DesktopPhysicalWidth;
1317
1318 case FreeRDP_DesktopPosX:
1319 return settings->DesktopPosX;
1320
1321 case FreeRDP_DesktopPosY:
1322 return settings->DesktopPosY;
1323
1324 case FreeRDP_DesktopScaleFactor:
1325 return settings->DesktopScaleFactor;
1326
1327 case FreeRDP_DesktopWidth:
1328 return settings->DesktopWidth;
1329
1330 case FreeRDP_DeviceArraySize:
1331 return settings->DeviceArraySize;
1332
1333 case FreeRDP_DeviceCount:
1334 return settings->DeviceCount;
1335
1336 case FreeRDP_DeviceScaleFactor:
1337 return settings->DeviceScaleFactor;
1338
1339 case FreeRDP_DrawNineGridCacheEntries:
1340 return settings->DrawNineGridCacheEntries;
1341
1342 case FreeRDP_DrawNineGridCacheSize:
1343 return settings->DrawNineGridCacheSize;
1344
1345 case FreeRDP_DynamicChannelArraySize:
1346 return settings->DynamicChannelArraySize;
1347
1348 case FreeRDP_DynamicChannelCount:
1349 return settings->DynamicChannelCount;
1350
1351 case FreeRDP_EarlyCapabilityFlags:
1352 return settings->EarlyCapabilityFlags;
1353
1354 case FreeRDP_EncryptionLevel:
1355 return settings->EncryptionLevel;
1356
1357 case FreeRDP_EncryptionMethods:
1358 return settings->EncryptionMethods;
1359
1360 case FreeRDP_ExtEncryptionMethods:
1361 return settings->ExtEncryptionMethods;
1362
1363 case FreeRDP_FrameAcknowledge:
1364 return settings->FrameAcknowledge;
1365
1366 case FreeRDP_GatewayAcceptedCertLength:
1367 return settings->GatewayAcceptedCertLength;
1368
1369 case FreeRDP_GatewayCredentialsSource:
1370 return settings->GatewayCredentialsSource;
1371
1372 case FreeRDP_GatewayPort:
1373 return settings->GatewayPort;
1374
1375 case FreeRDP_GatewayUsageMethod:
1376 return settings->GatewayUsageMethod;
1377
1378 case FreeRDP_GfxCapsFilter:
1379 return settings->GfxCapsFilter;
1380
1381 case FreeRDP_GlyphSupportLevel:
1382 return settings->GlyphSupportLevel;
1383
1384 case FreeRDP_JpegCodecId:
1385 return settings->JpegCodecId;
1386
1387 case FreeRDP_JpegQuality:
1388 return settings->JpegQuality;
1389
1390 case FreeRDP_KeyboardCodePage:
1391 return settings->KeyboardCodePage;
1392
1393 case FreeRDP_KeyboardFunctionKey:
1394 return settings->KeyboardFunctionKey;
1395
1396 case FreeRDP_KeyboardHook:
1397 return settings->KeyboardHook;
1398
1399 case FreeRDP_KeyboardLayout:
1400 return settings->KeyboardLayout;
1401
1402 case FreeRDP_KeyboardSubType:
1403 return settings->KeyboardSubType;
1404
1405 case FreeRDP_KeyboardType:
1406 return settings->KeyboardType;
1407
1408 case FreeRDP_LargePointerFlag:
1409 return settings->LargePointerFlag;
1410
1411 case FreeRDP_LoadBalanceInfoLength:
1412 return settings->LoadBalanceInfoLength;
1413
1414 case FreeRDP_MaxTimeInCheckLoop:
1415 return settings->MaxTimeInCheckLoop;
1416
1417 case FreeRDP_MonitorCount:
1418 return settings->MonitorCount;
1419
1420 case FreeRDP_MonitorDefArraySize:
1421 return settings->MonitorDefArraySize;
1422
1423 case FreeRDP_MonitorLocalShiftX:
1424 return settings->MonitorLocalShiftX;
1425
1426 case FreeRDP_MonitorLocalShiftY:
1427 return settings->MonitorLocalShiftY;
1428
1429 case FreeRDP_MultifragMaxRequestSize:
1430 return settings->MultifragMaxRequestSize;
1431
1432 case FreeRDP_MultitransportFlags:
1433 return settings->MultitransportFlags;
1434
1435 case FreeRDP_NSCodecColorLossLevel:
1436 return settings->NSCodecColorLossLevel;
1437
1438 case FreeRDP_NSCodecId:
1439 return settings->NSCodecId;
1440
1441 case FreeRDP_NegotiationFlags:
1442 return settings->NegotiationFlags;
1443
1444 case FreeRDP_NumMonitorIds:
1445 return settings->NumMonitorIds;
1446
1447 case FreeRDP_OffscreenCacheEntries:
1448 return settings->OffscreenCacheEntries;
1449
1450 case FreeRDP_OffscreenCacheSize:
1451 return settings->OffscreenCacheSize;
1452
1453 case FreeRDP_OffscreenSupportLevel:
1454 return settings->OffscreenSupportLevel;
1455
1456 case FreeRDP_OsMajorType:
1457 return settings->OsMajorType;
1458
1459 case FreeRDP_OsMinorType:
1460 return settings->OsMinorType;
1461
1462 case FreeRDP_Password51Length:
1463 return settings->Password51Length;
1464
1465 case FreeRDP_PduSource:
1466 return settings->PduSource;
1467
1468 case FreeRDP_PercentScreen:
1469 return settings->PercentScreen;
1470
1471 case FreeRDP_PerformanceFlags:
1472 return settings->PerformanceFlags;
1473
1474 case FreeRDP_PointerCacheSize:
1475 return settings->PointerCacheSize;
1476
1477 case FreeRDP_PreconnectionId:
1478 return settings->PreconnectionId;
1479
1480 case FreeRDP_ProxyType:
1481 return settings->ProxyType;
1482
1483 case FreeRDP_RdpVersion:
1484 return settings->RdpVersion;
1485
1486 case FreeRDP_ReceivedCapabilitiesSize:
1487 return settings->ReceivedCapabilitiesSize;
1488
1489 case FreeRDP_RedirectedSessionId:
1490 return settings->RedirectedSessionId;
1491
1492 case FreeRDP_RedirectionAcceptedCertLength:
1493 return settings->RedirectionAcceptedCertLength;
1494
1495 case FreeRDP_RedirectionFlags:
1496 return settings->RedirectionFlags;
1497
1498 case FreeRDP_RedirectionPasswordLength:
1499 return settings->RedirectionPasswordLength;
1500
1501 case FreeRDP_RedirectionPreferType:
1502 return settings->RedirectionPreferType;
1503
1504 case FreeRDP_RedirectionTsvUrlLength:
1505 return settings->RedirectionTsvUrlLength;
1506
1507 case FreeRDP_RemoteAppNumIconCacheEntries:
1508 return settings->RemoteAppNumIconCacheEntries;
1509
1510 case FreeRDP_RemoteAppNumIconCaches:
1511 return settings->RemoteAppNumIconCaches;
1512
1513 case FreeRDP_RemoteApplicationExpandCmdLine:
1514 return settings->RemoteApplicationExpandCmdLine;
1515
1516 case FreeRDP_RemoteApplicationExpandWorkingDir:
1517 return settings->RemoteApplicationExpandWorkingDir;
1518
1519 case FreeRDP_RemoteApplicationSupportLevel:
1520 return settings->RemoteApplicationSupportLevel;
1521
1522 case FreeRDP_RemoteApplicationSupportMask:
1523 return settings->RemoteApplicationSupportMask;
1524
1525 case FreeRDP_RemoteFxCaptureFlags:
1526 return settings->RemoteFxCaptureFlags;
1527
1528 case FreeRDP_RemoteFxCodecId:
1529 return settings->RemoteFxCodecId;
1530
1531 case FreeRDP_RemoteFxCodecMode:
1532 return settings->RemoteFxCodecMode;
1533
1534 case FreeRDP_RemoteWndSupportLevel:
1535 return settings->RemoteWndSupportLevel;
1536
1537 case FreeRDP_RequestedProtocols:
1538 return settings->RequestedProtocols;
1539
1540 case FreeRDP_SelectedProtocol:
1541 return settings->SelectedProtocol;
1542
1543 case FreeRDP_ServerCertificateLength:
1544 return settings->ServerCertificateLength;
1545
1546 case FreeRDP_ServerPort:
1547 return settings->ServerPort;
1548
1549 case FreeRDP_ServerRandomLength:
1550 return settings->ServerRandomLength;
1551
1552 case FreeRDP_ShareId:
1553 return settings->ShareId;
1554
1555 case FreeRDP_SmartSizingHeight:
1556 return settings->SmartSizingHeight;
1557
1558 case FreeRDP_SmartSizingWidth:
1559 return settings->SmartSizingWidth;
1560
1561 case FreeRDP_StaticChannelArraySize:
1562 return settings->StaticChannelArraySize;
1563
1564 case FreeRDP_StaticChannelCount:
1565 return settings->StaticChannelCount;
1566
1567 case FreeRDP_TargetNetAddressCount:
1568 return settings->TargetNetAddressCount;
1569
1570 case FreeRDP_TcpAckTimeout:
1571 return settings->TcpAckTimeout;
1572
1573 case FreeRDP_TcpConnectTimeout:
1574 return settings->TcpConnectTimeout;
1575
1576 case FreeRDP_TcpKeepAliveDelay:
1577 return settings->TcpKeepAliveDelay;
1578
1579 case FreeRDP_TcpKeepAliveInterval:
1580 return settings->TcpKeepAliveInterval;
1581
1582 case FreeRDP_TcpKeepAliveRetries:
1583 return settings->TcpKeepAliveRetries;
1584
1585 case FreeRDP_TlsSecLevel:
1586 return settings->TlsSecLevel;
1587
1588 case FreeRDP_VirtualChannelChunkSize:
1589 return settings->VirtualChannelChunkSize;
1590
1591 case FreeRDP_VirtualChannelCompressionFlags:
1592 return settings->VirtualChannelCompressionFlags;
1593
1594 default:
1595 WLog_ERR(TAG, "[%s] Invalid key index %" PRIuz, __FUNCTION__, id);
1596 return FALSE;
1597 }
1598 }
1599
freerdp_settings_set_uint32(rdpSettings * settings,size_t id,UINT32 val)1600 BOOL freerdp_settings_set_uint32(rdpSettings* settings, size_t id, UINT32 val)
1601 {
1602 if (!settings)
1603 return FALSE;
1604
1605 switch (id)
1606 {
1607 case FreeRDP_AcceptedCertLength:
1608 settings->AcceptedCertLength = val;
1609 break;
1610
1611 case FreeRDP_AuthenticationLevel:
1612 settings->AuthenticationLevel = val;
1613 break;
1614
1615 case FreeRDP_AutoReconnectMaxRetries:
1616 settings->AutoReconnectMaxRetries = val;
1617 break;
1618
1619 case FreeRDP_BitmapCacheV2NumCells:
1620 settings->BitmapCacheV2NumCells = val;
1621 break;
1622
1623 case FreeRDP_BitmapCacheV3CodecId:
1624 settings->BitmapCacheV3CodecId = val;
1625 break;
1626
1627 case FreeRDP_BitmapCacheVersion:
1628 settings->BitmapCacheVersion = val;
1629 break;
1630
1631 case FreeRDP_BrushSupportLevel:
1632 settings->BrushSupportLevel = val;
1633 break;
1634
1635 case FreeRDP_ChannelCount:
1636 settings->ChannelCount = val;
1637 break;
1638
1639 case FreeRDP_ChannelDefArraySize:
1640 settings->ChannelDefArraySize = val;
1641 break;
1642
1643 case FreeRDP_ClientBuild:
1644 settings->ClientBuild = val;
1645 break;
1646
1647 case FreeRDP_ClientRandomLength:
1648 settings->ClientRandomLength = val;
1649 break;
1650
1651 case FreeRDP_ClusterInfoFlags:
1652 settings->ClusterInfoFlags = val;
1653 break;
1654
1655 case FreeRDP_ColorDepth:
1656 settings->ColorDepth = val;
1657 break;
1658
1659 case FreeRDP_CompDeskSupportLevel:
1660 settings->CompDeskSupportLevel = val;
1661 break;
1662
1663 case FreeRDP_CompressionLevel:
1664 settings->CompressionLevel = val;
1665 break;
1666
1667 case FreeRDP_ConnectionType:
1668 settings->ConnectionType = val;
1669 break;
1670
1671 case FreeRDP_CookieMaxLength:
1672 settings->CookieMaxLength = val;
1673 break;
1674
1675 case FreeRDP_DesktopHeight:
1676 settings->DesktopHeight = val;
1677 break;
1678
1679 case FreeRDP_DesktopPhysicalHeight:
1680 settings->DesktopPhysicalHeight = val;
1681 break;
1682
1683 case FreeRDP_DesktopPhysicalWidth:
1684 settings->DesktopPhysicalWidth = val;
1685 break;
1686
1687 case FreeRDP_DesktopPosX:
1688 settings->DesktopPosX = val;
1689 break;
1690
1691 case FreeRDP_DesktopPosY:
1692 settings->DesktopPosY = val;
1693 break;
1694
1695 case FreeRDP_DesktopScaleFactor:
1696 settings->DesktopScaleFactor = val;
1697 break;
1698
1699 case FreeRDP_DesktopWidth:
1700 settings->DesktopWidth = val;
1701 break;
1702
1703 case FreeRDP_DeviceArraySize:
1704 settings->DeviceArraySize = val;
1705 break;
1706
1707 case FreeRDP_DeviceCount:
1708 settings->DeviceCount = val;
1709 break;
1710
1711 case FreeRDP_DeviceScaleFactor:
1712 settings->DeviceScaleFactor = val;
1713 break;
1714
1715 case FreeRDP_DrawNineGridCacheEntries:
1716 settings->DrawNineGridCacheEntries = val;
1717 break;
1718
1719 case FreeRDP_DrawNineGridCacheSize:
1720 settings->DrawNineGridCacheSize = val;
1721 break;
1722
1723 case FreeRDP_DynamicChannelArraySize:
1724 settings->DynamicChannelArraySize = val;
1725 break;
1726
1727 case FreeRDP_DynamicChannelCount:
1728 settings->DynamicChannelCount = val;
1729 break;
1730
1731 case FreeRDP_EarlyCapabilityFlags:
1732 settings->EarlyCapabilityFlags = val;
1733 break;
1734
1735 case FreeRDP_EncryptionLevel:
1736 settings->EncryptionLevel = val;
1737 break;
1738
1739 case FreeRDP_EncryptionMethods:
1740 settings->EncryptionMethods = val;
1741 break;
1742
1743 case FreeRDP_ExtEncryptionMethods:
1744 settings->ExtEncryptionMethods = val;
1745 break;
1746
1747 case FreeRDP_FrameAcknowledge:
1748 settings->FrameAcknowledge = val;
1749 break;
1750
1751 case FreeRDP_GatewayAcceptedCertLength:
1752 settings->GatewayAcceptedCertLength = val;
1753 break;
1754
1755 case FreeRDP_GatewayCredentialsSource:
1756 settings->GatewayCredentialsSource = val;
1757 break;
1758
1759 case FreeRDP_GatewayPort:
1760 settings->GatewayPort = val;
1761 break;
1762
1763 case FreeRDP_GatewayUsageMethod:
1764 settings->GatewayUsageMethod = val;
1765 break;
1766
1767 case FreeRDP_GfxCapsFilter:
1768 settings->GfxCapsFilter = val;
1769 break;
1770
1771 case FreeRDP_GlyphSupportLevel:
1772 settings->GlyphSupportLevel = val;
1773 break;
1774
1775 case FreeRDP_JpegCodecId:
1776 settings->JpegCodecId = val;
1777 break;
1778
1779 case FreeRDP_JpegQuality:
1780 settings->JpegQuality = val;
1781 break;
1782
1783 case FreeRDP_KeyboardCodePage:
1784 settings->KeyboardCodePage = val;
1785 break;
1786
1787 case FreeRDP_KeyboardFunctionKey:
1788 settings->KeyboardFunctionKey = val;
1789 break;
1790
1791 case FreeRDP_KeyboardHook:
1792 settings->KeyboardHook = val;
1793 break;
1794
1795 case FreeRDP_KeyboardLayout:
1796 settings->KeyboardLayout = val;
1797 break;
1798
1799 case FreeRDP_KeyboardSubType:
1800 settings->KeyboardSubType = val;
1801 break;
1802
1803 case FreeRDP_KeyboardType:
1804 settings->KeyboardType = val;
1805 break;
1806
1807 case FreeRDP_LargePointerFlag:
1808 settings->LargePointerFlag = val;
1809 break;
1810
1811 case FreeRDP_LoadBalanceInfoLength:
1812 settings->LoadBalanceInfoLength = val;
1813 break;
1814
1815 case FreeRDP_MaxTimeInCheckLoop:
1816 settings->MaxTimeInCheckLoop = val;
1817 break;
1818
1819 case FreeRDP_MonitorCount:
1820 settings->MonitorCount = val;
1821 break;
1822
1823 case FreeRDP_MonitorDefArraySize:
1824 settings->MonitorDefArraySize = val;
1825 break;
1826
1827 case FreeRDP_MonitorLocalShiftX:
1828 settings->MonitorLocalShiftX = val;
1829 break;
1830
1831 case FreeRDP_MonitorLocalShiftY:
1832 settings->MonitorLocalShiftY = val;
1833 break;
1834
1835 case FreeRDP_MultifragMaxRequestSize:
1836 settings->MultifragMaxRequestSize = val;
1837 break;
1838
1839 case FreeRDP_MultitransportFlags:
1840 settings->MultitransportFlags = val;
1841 break;
1842
1843 case FreeRDP_NSCodecColorLossLevel:
1844 settings->NSCodecColorLossLevel = val;
1845 break;
1846
1847 case FreeRDP_NSCodecId:
1848 settings->NSCodecId = val;
1849 break;
1850
1851 case FreeRDP_NegotiationFlags:
1852 settings->NegotiationFlags = val;
1853 break;
1854
1855 case FreeRDP_NumMonitorIds:
1856 settings->NumMonitorIds = val;
1857 break;
1858
1859 case FreeRDP_OffscreenCacheEntries:
1860 settings->OffscreenCacheEntries = val;
1861 break;
1862
1863 case FreeRDP_OffscreenCacheSize:
1864 settings->OffscreenCacheSize = val;
1865 break;
1866
1867 case FreeRDP_OffscreenSupportLevel:
1868 settings->OffscreenSupportLevel = val;
1869 break;
1870
1871 case FreeRDP_OsMajorType:
1872 settings->OsMajorType = val;
1873 break;
1874
1875 case FreeRDP_OsMinorType:
1876 settings->OsMinorType = val;
1877 break;
1878
1879 case FreeRDP_Password51Length:
1880 settings->Password51Length = val;
1881 break;
1882
1883 case FreeRDP_PduSource:
1884 settings->PduSource = val;
1885 break;
1886
1887 case FreeRDP_PercentScreen:
1888 settings->PercentScreen = val;
1889 break;
1890
1891 case FreeRDP_PerformanceFlags:
1892 settings->PerformanceFlags = val;
1893 break;
1894
1895 case FreeRDP_PointerCacheSize:
1896 settings->PointerCacheSize = val;
1897 break;
1898
1899 case FreeRDP_PreconnectionId:
1900 settings->PreconnectionId = val;
1901 break;
1902
1903 case FreeRDP_ProxyType:
1904 settings->ProxyType = val;
1905 break;
1906
1907 case FreeRDP_RdpVersion:
1908 settings->RdpVersion = val;
1909 break;
1910
1911 case FreeRDP_ReceivedCapabilitiesSize:
1912 settings->ReceivedCapabilitiesSize = val;
1913 break;
1914
1915 case FreeRDP_RedirectedSessionId:
1916 settings->RedirectedSessionId = val;
1917 break;
1918
1919 case FreeRDP_RedirectionAcceptedCertLength:
1920 settings->RedirectionAcceptedCertLength = val;
1921 break;
1922
1923 case FreeRDP_RedirectionFlags:
1924 settings->RedirectionFlags = val;
1925 break;
1926
1927 case FreeRDP_RedirectionPasswordLength:
1928 settings->RedirectionPasswordLength = val;
1929 break;
1930
1931 case FreeRDP_RedirectionPreferType:
1932 settings->RedirectionPreferType = val;
1933 break;
1934
1935 case FreeRDP_RedirectionTsvUrlLength:
1936 settings->RedirectionTsvUrlLength = val;
1937 break;
1938
1939 case FreeRDP_RemoteAppNumIconCacheEntries:
1940 settings->RemoteAppNumIconCacheEntries = val;
1941 break;
1942
1943 case FreeRDP_RemoteAppNumIconCaches:
1944 settings->RemoteAppNumIconCaches = val;
1945 break;
1946
1947 case FreeRDP_RemoteApplicationExpandCmdLine:
1948 settings->RemoteApplicationExpandCmdLine = val;
1949 break;
1950
1951 case FreeRDP_RemoteApplicationExpandWorkingDir:
1952 settings->RemoteApplicationExpandWorkingDir = val;
1953 break;
1954
1955 case FreeRDP_RemoteApplicationSupportLevel:
1956 settings->RemoteApplicationSupportLevel = val;
1957 break;
1958
1959 case FreeRDP_RemoteApplicationSupportMask:
1960 settings->RemoteApplicationSupportMask = val;
1961 break;
1962
1963 case FreeRDP_RemoteFxCaptureFlags:
1964 settings->RemoteFxCaptureFlags = val;
1965 break;
1966
1967 case FreeRDP_RemoteFxCodecId:
1968 settings->RemoteFxCodecId = val;
1969 break;
1970
1971 case FreeRDP_RemoteFxCodecMode:
1972 settings->RemoteFxCodecMode = val;
1973 break;
1974
1975 case FreeRDP_RemoteWndSupportLevel:
1976 settings->RemoteWndSupportLevel = val;
1977 break;
1978
1979 case FreeRDP_RequestedProtocols:
1980 settings->RequestedProtocols = val;
1981 break;
1982
1983 case FreeRDP_SelectedProtocol:
1984 settings->SelectedProtocol = val;
1985 break;
1986
1987 case FreeRDP_ServerCertificateLength:
1988 settings->ServerCertificateLength = val;
1989 break;
1990
1991 case FreeRDP_ServerPort:
1992 settings->ServerPort = val;
1993 break;
1994
1995 case FreeRDP_ServerRandomLength:
1996 settings->ServerRandomLength = val;
1997 break;
1998
1999 case FreeRDP_ShareId:
2000 settings->ShareId = val;
2001 break;
2002
2003 case FreeRDP_SmartSizingHeight:
2004 settings->SmartSizingHeight = val;
2005 break;
2006
2007 case FreeRDP_SmartSizingWidth:
2008 settings->SmartSizingWidth = val;
2009 break;
2010
2011 case FreeRDP_StaticChannelArraySize:
2012 settings->StaticChannelArraySize = val;
2013 break;
2014
2015 case FreeRDP_StaticChannelCount:
2016 settings->StaticChannelCount = val;
2017 break;
2018
2019 case FreeRDP_TargetNetAddressCount:
2020 settings->TargetNetAddressCount = val;
2021 break;
2022
2023 case FreeRDP_TcpAckTimeout:
2024 settings->TcpAckTimeout = val;
2025 break;
2026
2027 case FreeRDP_TcpConnectTimeout:
2028 settings->TcpConnectTimeout = val;
2029 break;
2030
2031 case FreeRDP_TcpKeepAliveDelay:
2032 settings->TcpKeepAliveDelay = val;
2033 break;
2034
2035 case FreeRDP_TcpKeepAliveInterval:
2036 settings->TcpKeepAliveInterval = val;
2037 break;
2038
2039 case FreeRDP_TcpKeepAliveRetries:
2040 settings->TcpKeepAliveRetries = val;
2041 break;
2042
2043 case FreeRDP_TlsSecLevel:
2044 settings->TlsSecLevel = val;
2045 break;
2046
2047 case FreeRDP_VirtualChannelChunkSize:
2048 settings->VirtualChannelChunkSize = val;
2049 break;
2050
2051 case FreeRDP_VirtualChannelCompressionFlags:
2052 settings->VirtualChannelCompressionFlags = val;
2053 break;
2054
2055 default:
2056 WLog_ERR(TAG, "[%s] Invalid key index %" PRIuz, __FUNCTION__, id);
2057 return FALSE;
2058 }
2059 return TRUE;
2060 }
2061
freerdp_settings_get_int32(const rdpSettings * settings,size_t id)2062 INT32 freerdp_settings_get_int32(const rdpSettings* settings, size_t id)
2063 {
2064 if (!settings)
2065 return FALSE;
2066
2067 switch (id)
2068 {
2069 case FreeRDP_XPan:
2070 return settings->XPan;
2071
2072 case FreeRDP_YPan:
2073 return settings->YPan;
2074
2075 default:
2076 WLog_ERR(TAG, "[%s] Invalid key index %" PRIuz, __FUNCTION__, id);
2077 return FALSE;
2078 }
2079 }
2080
freerdp_settings_set_int32(rdpSettings * settings,size_t id,INT32 val)2081 BOOL freerdp_settings_set_int32(rdpSettings* settings, size_t id, INT32 val)
2082 {
2083 if (!settings)
2084 return FALSE;
2085
2086 switch (id)
2087 {
2088 case FreeRDP_XPan:
2089 settings->XPan = val;
2090 break;
2091
2092 case FreeRDP_YPan:
2093 settings->YPan = val;
2094 break;
2095
2096 default:
2097 WLog_ERR(TAG, "[%s] Invalid key index %" PRIuz, __FUNCTION__, id);
2098 return FALSE;
2099 }
2100 return TRUE;
2101 }
2102
freerdp_settings_get_uint64(const rdpSettings * settings,size_t id)2103 UINT64 freerdp_settings_get_uint64(const rdpSettings* settings, size_t id)
2104 {
2105 if (!settings)
2106 return FALSE;
2107
2108 switch (id)
2109 {
2110 case FreeRDP_ParentWindowId:
2111 return settings->ParentWindowId;
2112
2113 default:
2114 WLog_ERR(TAG, "[%s] Invalid key index %" PRIuz, __FUNCTION__, id);
2115 return FALSE;
2116 }
2117 }
2118
freerdp_settings_set_uint64(rdpSettings * settings,size_t id,UINT64 val)2119 BOOL freerdp_settings_set_uint64(rdpSettings* settings, size_t id, UINT64 val)
2120 {
2121 if (!settings)
2122 return FALSE;
2123
2124 switch (id)
2125 {
2126 case FreeRDP_ParentWindowId:
2127 settings->ParentWindowId = val;
2128 break;
2129
2130 default:
2131 WLog_ERR(TAG, "[%s] Invalid key index %" PRIuz, __FUNCTION__, id);
2132 return FALSE;
2133 }
2134 return TRUE;
2135 }
2136
freerdp_settings_get_int64(const rdpSettings * settings,size_t id)2137 INT64 freerdp_settings_get_int64(const rdpSettings* settings, size_t id)
2138 {
2139 if (!settings)
2140 return FALSE;
2141
2142 switch (id)
2143 {
2144 default:
2145 WLog_ERR(TAG, "[%s] Invalid key index %" PRIuz, __FUNCTION__, id);
2146 return FALSE;
2147 }
2148 }
2149
freerdp_settings_set_int64(rdpSettings * settings,size_t id,INT64 val)2150 BOOL freerdp_settings_set_int64(rdpSettings* settings, size_t id, INT64 val)
2151 {
2152 if (!settings)
2153 return FALSE;
2154
2155 switch (id)
2156 {
2157 default:
2158 WLog_ERR(TAG, "[%s] Invalid key index %" PRIuz, __FUNCTION__, id);
2159 return FALSE;
2160 }
2161 return TRUE;
2162 }
2163
freerdp_settings_get_string(const rdpSettings * settings,size_t id)2164 const char* freerdp_settings_get_string(const rdpSettings* settings, size_t id)
2165 {
2166 if (!settings)
2167 return FALSE;
2168
2169 switch (id)
2170 {
2171 case FreeRDP_AcceptedCert:
2172 return settings->AcceptedCert;
2173
2174 case FreeRDP_AllowedTlsCiphers:
2175 return settings->AllowedTlsCiphers;
2176
2177 case FreeRDP_AlternateShell:
2178 return settings->AlternateShell;
2179
2180 case FreeRDP_AssistanceFile:
2181 return settings->AssistanceFile;
2182
2183 case FreeRDP_AuthenticationServiceClass:
2184 return settings->AuthenticationServiceClass;
2185
2186 case FreeRDP_CertificateAcceptedFingerprints:
2187 return settings->CertificateAcceptedFingerprints;
2188
2189 case FreeRDP_CertificateContent:
2190 return settings->CertificateContent;
2191
2192 case FreeRDP_CertificateFile:
2193 return settings->CertificateFile;
2194
2195 case FreeRDP_CertificateName:
2196 return settings->CertificateName;
2197
2198 case FreeRDP_ClientAddress:
2199 return settings->ClientAddress;
2200
2201 case FreeRDP_ClientDir:
2202 return settings->ClientDir;
2203
2204 case FreeRDP_ClientHostname:
2205 return settings->ClientHostname;
2206
2207 case FreeRDP_ClientProductId:
2208 return settings->ClientProductId;
2209
2210 case FreeRDP_ComputerName:
2211 return settings->ComputerName;
2212
2213 case FreeRDP_ConfigPath:
2214 return settings->ConfigPath;
2215
2216 case FreeRDP_ConnectionFile:
2217 return settings->ConnectionFile;
2218
2219 case FreeRDP_CurrentPath:
2220 return settings->CurrentPath;
2221
2222 case FreeRDP_Domain:
2223 return settings->Domain;
2224
2225 case FreeRDP_DrivesToRedirect:
2226 return settings->DrivesToRedirect;
2227
2228 case FreeRDP_DumpRemoteFxFile:
2229 return settings->DumpRemoteFxFile;
2230
2231 case FreeRDP_DynamicDSTTimeZoneKeyName:
2232 return settings->DynamicDSTTimeZoneKeyName;
2233
2234 case FreeRDP_GatewayAcceptedCert:
2235 return settings->GatewayAcceptedCert;
2236
2237 case FreeRDP_GatewayAccessToken:
2238 return settings->GatewayAccessToken;
2239
2240 case FreeRDP_GatewayDomain:
2241 return settings->GatewayDomain;
2242
2243 case FreeRDP_GatewayHostname:
2244 return settings->GatewayHostname;
2245
2246 case FreeRDP_GatewayPassword:
2247 return settings->GatewayPassword;
2248
2249 case FreeRDP_GatewayUsername:
2250 return settings->GatewayUsername;
2251
2252 case FreeRDP_HomePath:
2253 return settings->HomePath;
2254
2255 case FreeRDP_ImeFileName:
2256 return settings->ImeFileName;
2257
2258 case FreeRDP_KerberosKdc:
2259 return settings->KerberosKdc;
2260
2261 case FreeRDP_KerberosRealm:
2262 return settings->KerberosRealm;
2263
2264 case FreeRDP_KeyboardRemappingList:
2265 return settings->KeyboardRemappingList;
2266
2267 case FreeRDP_NtlmSamFile:
2268 return settings->NtlmSamFile;
2269
2270 case FreeRDP_Password:
2271 return settings->Password;
2272
2273 case FreeRDP_PasswordHash:
2274 return settings->PasswordHash;
2275
2276 case FreeRDP_PlayRemoteFxFile:
2277 return settings->PlayRemoteFxFile;
2278
2279 case FreeRDP_PreconnectionBlob:
2280 return settings->PreconnectionBlob;
2281
2282 case FreeRDP_PrivateKeyContent:
2283 return settings->PrivateKeyContent;
2284
2285 case FreeRDP_PrivateKeyFile:
2286 return settings->PrivateKeyFile;
2287
2288 case FreeRDP_ProxyHostname:
2289 return settings->ProxyHostname;
2290
2291 case FreeRDP_ProxyPassword:
2292 return settings->ProxyPassword;
2293
2294 case FreeRDP_ProxyUsername:
2295 return settings->ProxyUsername;
2296
2297 case FreeRDP_RDP2TCPArgs:
2298 return settings->RDP2TCPArgs;
2299
2300 case FreeRDP_RdpKeyContent:
2301 return settings->RdpKeyContent;
2302
2303 case FreeRDP_RdpKeyFile:
2304 return settings->RdpKeyFile;
2305
2306 case FreeRDP_RedirectionAcceptedCert:
2307 return settings->RedirectionAcceptedCert;
2308
2309 case FreeRDP_RedirectionDomain:
2310 return settings->RedirectionDomain;
2311
2312 case FreeRDP_RedirectionTargetFQDN:
2313 return settings->RedirectionTargetFQDN;
2314
2315 case FreeRDP_RedirectionTargetNetBiosName:
2316 return settings->RedirectionTargetNetBiosName;
2317
2318 case FreeRDP_RedirectionUsername:
2319 return settings->RedirectionUsername;
2320
2321 case FreeRDP_RemoteApplicationCmdLine:
2322 return settings->RemoteApplicationCmdLine;
2323
2324 case FreeRDP_RemoteApplicationFile:
2325 return settings->RemoteApplicationFile;
2326
2327 case FreeRDP_RemoteApplicationGuid:
2328 return settings->RemoteApplicationGuid;
2329
2330 case FreeRDP_RemoteApplicationIcon:
2331 return settings->RemoteApplicationIcon;
2332
2333 case FreeRDP_RemoteApplicationName:
2334 return settings->RemoteApplicationName;
2335
2336 case FreeRDP_RemoteApplicationProgram:
2337 return settings->RemoteApplicationProgram;
2338
2339 case FreeRDP_RemoteApplicationWorkingDir:
2340 return settings->RemoteApplicationWorkingDir;
2341
2342 case FreeRDP_RemoteAssistancePassStub:
2343 return settings->RemoteAssistancePassStub;
2344
2345 case FreeRDP_RemoteAssistancePassword:
2346 return settings->RemoteAssistancePassword;
2347
2348 case FreeRDP_RemoteAssistanceRCTicket:
2349 return settings->RemoteAssistanceRCTicket;
2350
2351 case FreeRDP_RemoteAssistanceSessionId:
2352 return settings->RemoteAssistanceSessionId;
2353
2354 case FreeRDP_ServerHostname:
2355 return settings->ServerHostname;
2356
2357 case FreeRDP_ShellWorkingDirectory:
2358 return settings->ShellWorkingDirectory;
2359
2360 case FreeRDP_TargetNetAddress:
2361 return settings->TargetNetAddress;
2362
2363 case FreeRDP_Username:
2364 return settings->Username;
2365
2366 case FreeRDP_WindowTitle:
2367 return settings->WindowTitle;
2368
2369 case FreeRDP_WmClass:
2370 return settings->WmClass;
2371
2372 default:
2373 WLog_ERR(TAG, "[%s] Invalid key index %" PRIuz, __FUNCTION__, id);
2374 return FALSE;
2375 }
2376 }
2377
freerdp_settings_set_string_(rdpSettings * settings,size_t id,const char * val,BOOL cleanup)2378 BOOL freerdp_settings_set_string_(rdpSettings* settings, size_t id, const char* val, BOOL cleanup)
2379 {
2380 if (!settings)
2381 return FALSE;
2382
2383 switch (id)
2384 {
2385 case FreeRDP_AcceptedCert:
2386 if (cleanup)
2387 free(settings->AcceptedCert);
2388 settings->AcceptedCert = (val ? _strdup(val) : NULL);
2389 return (!val || settings->AcceptedCert != NULL);
2390
2391 case FreeRDP_AllowedTlsCiphers:
2392 if (cleanup)
2393 free(settings->AllowedTlsCiphers);
2394 settings->AllowedTlsCiphers = (val ? _strdup(val) : NULL);
2395 return (!val || settings->AllowedTlsCiphers != NULL);
2396
2397 case FreeRDP_AlternateShell:
2398 if (cleanup)
2399 free(settings->AlternateShell);
2400 settings->AlternateShell = (val ? _strdup(val) : NULL);
2401 return (!val || settings->AlternateShell != NULL);
2402
2403 case FreeRDP_AssistanceFile:
2404 if (cleanup)
2405 free(settings->AssistanceFile);
2406 settings->AssistanceFile = (val ? _strdup(val) : NULL);
2407 return (!val || settings->AssistanceFile != NULL);
2408
2409 case FreeRDP_AuthenticationServiceClass:
2410 if (cleanup)
2411 free(settings->AuthenticationServiceClass);
2412 settings->AuthenticationServiceClass = (val ? _strdup(val) : NULL);
2413 return (!val || settings->AuthenticationServiceClass != NULL);
2414
2415 case FreeRDP_CertificateAcceptedFingerprints:
2416 if (cleanup)
2417 free(settings->CertificateAcceptedFingerprints);
2418 settings->CertificateAcceptedFingerprints = (val ? _strdup(val) : NULL);
2419 return (!val || settings->CertificateAcceptedFingerprints != NULL);
2420
2421 case FreeRDP_CertificateContent:
2422 if (cleanup)
2423 free(settings->CertificateContent);
2424 settings->CertificateContent = (val ? _strdup(val) : NULL);
2425 return (!val || settings->CertificateContent != NULL);
2426
2427 case FreeRDP_CertificateFile:
2428 if (cleanup)
2429 free(settings->CertificateFile);
2430 settings->CertificateFile = (val ? _strdup(val) : NULL);
2431 return (!val || settings->CertificateFile != NULL);
2432
2433 case FreeRDP_CertificateName:
2434 if (cleanup)
2435 free(settings->CertificateName);
2436 settings->CertificateName = (val ? _strdup(val) : NULL);
2437 return (!val || settings->CertificateName != NULL);
2438
2439 case FreeRDP_ClientAddress:
2440 if (cleanup)
2441 free(settings->ClientAddress);
2442 settings->ClientAddress = (val ? _strdup(val) : NULL);
2443 return (!val || settings->ClientAddress != NULL);
2444
2445 case FreeRDP_ClientDir:
2446 if (cleanup)
2447 free(settings->ClientDir);
2448 settings->ClientDir = (val ? _strdup(val) : NULL);
2449 return (!val || settings->ClientDir != NULL);
2450
2451 case FreeRDP_ClientHostname:
2452 if (cleanup)
2453 free(settings->ClientHostname);
2454 settings->ClientHostname = (val ? _strdup(val) : NULL);
2455 return (!val || settings->ClientHostname != NULL);
2456
2457 case FreeRDP_ClientProductId:
2458 if (cleanup)
2459 free(settings->ClientProductId);
2460 settings->ClientProductId = (val ? _strdup(val) : NULL);
2461 return (!val || settings->ClientProductId != NULL);
2462
2463 case FreeRDP_ComputerName:
2464 if (cleanup)
2465 free(settings->ComputerName);
2466 settings->ComputerName = (val ? _strdup(val) : NULL);
2467 return (!val || settings->ComputerName != NULL);
2468
2469 case FreeRDP_ConfigPath:
2470 if (cleanup)
2471 free(settings->ConfigPath);
2472 settings->ConfigPath = (val ? _strdup(val) : NULL);
2473 return (!val || settings->ConfigPath != NULL);
2474
2475 case FreeRDP_ConnectionFile:
2476 if (cleanup)
2477 free(settings->ConnectionFile);
2478 settings->ConnectionFile = (val ? _strdup(val) : NULL);
2479 return (!val || settings->ConnectionFile != NULL);
2480
2481 case FreeRDP_CurrentPath:
2482 if (cleanup)
2483 free(settings->CurrentPath);
2484 settings->CurrentPath = (val ? _strdup(val) : NULL);
2485 return (!val || settings->CurrentPath != NULL);
2486
2487 case FreeRDP_Domain:
2488 if (cleanup)
2489 free(settings->Domain);
2490 settings->Domain = (val ? _strdup(val) : NULL);
2491 return (!val || settings->Domain != NULL);
2492
2493 case FreeRDP_DrivesToRedirect:
2494 if (cleanup)
2495 free(settings->DrivesToRedirect);
2496 settings->DrivesToRedirect = (val ? _strdup(val) : NULL);
2497 return (!val || settings->DrivesToRedirect != NULL);
2498
2499 case FreeRDP_DumpRemoteFxFile:
2500 if (cleanup)
2501 free(settings->DumpRemoteFxFile);
2502 settings->DumpRemoteFxFile = (val ? _strdup(val) : NULL);
2503 return (!val || settings->DumpRemoteFxFile != NULL);
2504
2505 case FreeRDP_DynamicDSTTimeZoneKeyName:
2506 if (cleanup)
2507 free(settings->DynamicDSTTimeZoneKeyName);
2508 settings->DynamicDSTTimeZoneKeyName = (val ? _strdup(val) : NULL);
2509 return (!val || settings->DynamicDSTTimeZoneKeyName != NULL);
2510
2511 case FreeRDP_GatewayAcceptedCert:
2512 if (cleanup)
2513 free(settings->GatewayAcceptedCert);
2514 settings->GatewayAcceptedCert = (val ? _strdup(val) : NULL);
2515 return (!val || settings->GatewayAcceptedCert != NULL);
2516
2517 case FreeRDP_GatewayAccessToken:
2518 if (cleanup)
2519 free(settings->GatewayAccessToken);
2520 settings->GatewayAccessToken = (val ? _strdup(val) : NULL);
2521 return (!val || settings->GatewayAccessToken != NULL);
2522
2523 case FreeRDP_GatewayDomain:
2524 if (cleanup)
2525 free(settings->GatewayDomain);
2526 settings->GatewayDomain = (val ? _strdup(val) : NULL);
2527 return (!val || settings->GatewayDomain != NULL);
2528
2529 case FreeRDP_GatewayHostname:
2530 if (cleanup)
2531 free(settings->GatewayHostname);
2532 settings->GatewayHostname = (val ? _strdup(val) : NULL);
2533 return (!val || settings->GatewayHostname != NULL);
2534
2535 case FreeRDP_GatewayPassword:
2536 if (cleanup)
2537 free(settings->GatewayPassword);
2538 settings->GatewayPassword = (val ? _strdup(val) : NULL);
2539 return (!val || settings->GatewayPassword != NULL);
2540
2541 case FreeRDP_GatewayUsername:
2542 if (cleanup)
2543 free(settings->GatewayUsername);
2544 settings->GatewayUsername = (val ? _strdup(val) : NULL);
2545 return (!val || settings->GatewayUsername != NULL);
2546
2547 case FreeRDP_HomePath:
2548 if (cleanup)
2549 free(settings->HomePath);
2550 settings->HomePath = (val ? _strdup(val) : NULL);
2551 return (!val || settings->HomePath != NULL);
2552
2553 case FreeRDP_ImeFileName:
2554 if (cleanup)
2555 free(settings->ImeFileName);
2556 settings->ImeFileName = (val ? _strdup(val) : NULL);
2557 return (!val || settings->ImeFileName != NULL);
2558
2559 case FreeRDP_KerberosKdc:
2560 if (cleanup)
2561 free(settings->KerberosKdc);
2562 settings->KerberosKdc = (val ? _strdup(val) : NULL);
2563 return (!val || settings->KerberosKdc != NULL);
2564
2565 case FreeRDP_KerberosRealm:
2566 if (cleanup)
2567 free(settings->KerberosRealm);
2568 settings->KerberosRealm = (val ? _strdup(val) : NULL);
2569 return (!val || settings->KerberosRealm != NULL);
2570
2571 case FreeRDP_KeyboardRemappingList:
2572 if (cleanup)
2573 free(settings->KeyboardRemappingList);
2574 settings->KeyboardRemappingList = (val ? _strdup(val) : NULL);
2575 return (!val || settings->KeyboardRemappingList != NULL);
2576
2577 case FreeRDP_NtlmSamFile:
2578 if (cleanup)
2579 free(settings->NtlmSamFile);
2580 settings->NtlmSamFile = (val ? _strdup(val) : NULL);
2581 return (!val || settings->NtlmSamFile != NULL);
2582
2583 case FreeRDP_Password:
2584 if (cleanup)
2585 free(settings->Password);
2586 settings->Password = (val ? _strdup(val) : NULL);
2587 return (!val || settings->Password != NULL);
2588
2589 case FreeRDP_PasswordHash:
2590 if (cleanup)
2591 free(settings->PasswordHash);
2592 settings->PasswordHash = (val ? _strdup(val) : NULL);
2593 return (!val || settings->PasswordHash != NULL);
2594
2595 case FreeRDP_PlayRemoteFxFile:
2596 if (cleanup)
2597 free(settings->PlayRemoteFxFile);
2598 settings->PlayRemoteFxFile = (val ? _strdup(val) : NULL);
2599 return (!val || settings->PlayRemoteFxFile != NULL);
2600
2601 case FreeRDP_PreconnectionBlob:
2602 if (cleanup)
2603 free(settings->PreconnectionBlob);
2604 settings->PreconnectionBlob = (val ? _strdup(val) : NULL);
2605 return (!val || settings->PreconnectionBlob != NULL);
2606
2607 case FreeRDP_PrivateKeyContent:
2608 if (cleanup)
2609 free(settings->PrivateKeyContent);
2610 settings->PrivateKeyContent = (val ? _strdup(val) : NULL);
2611 return (!val || settings->PrivateKeyContent != NULL);
2612
2613 case FreeRDP_PrivateKeyFile:
2614 if (cleanup)
2615 free(settings->PrivateKeyFile);
2616 settings->PrivateKeyFile = (val ? _strdup(val) : NULL);
2617 return (!val || settings->PrivateKeyFile != NULL);
2618
2619 case FreeRDP_ProxyHostname:
2620 if (cleanup)
2621 free(settings->ProxyHostname);
2622 settings->ProxyHostname = (val ? _strdup(val) : NULL);
2623 return (!val || settings->ProxyHostname != NULL);
2624
2625 case FreeRDP_ProxyPassword:
2626 if (cleanup)
2627 free(settings->ProxyPassword);
2628 settings->ProxyPassword = (val ? _strdup(val) : NULL);
2629 return (!val || settings->ProxyPassword != NULL);
2630
2631 case FreeRDP_ProxyUsername:
2632 if (cleanup)
2633 free(settings->ProxyUsername);
2634 settings->ProxyUsername = (val ? _strdup(val) : NULL);
2635 return (!val || settings->ProxyUsername != NULL);
2636
2637 case FreeRDP_RDP2TCPArgs:
2638 if (cleanup)
2639 free(settings->RDP2TCPArgs);
2640 settings->RDP2TCPArgs = (val ? _strdup(val) : NULL);
2641 return (!val || settings->RDP2TCPArgs != NULL);
2642
2643 case FreeRDP_RdpKeyContent:
2644 if (cleanup)
2645 free(settings->RdpKeyContent);
2646 settings->RdpKeyContent = (val ? _strdup(val) : NULL);
2647 return (!val || settings->RdpKeyContent != NULL);
2648
2649 case FreeRDP_RdpKeyFile:
2650 if (cleanup)
2651 free(settings->RdpKeyFile);
2652 settings->RdpKeyFile = (val ? _strdup(val) : NULL);
2653 return (!val || settings->RdpKeyFile != NULL);
2654
2655 case FreeRDP_RedirectionAcceptedCert:
2656 if (cleanup)
2657 free(settings->RedirectionAcceptedCert);
2658 settings->RedirectionAcceptedCert = (val ? _strdup(val) : NULL);
2659 return (!val || settings->RedirectionAcceptedCert != NULL);
2660
2661 case FreeRDP_RedirectionDomain:
2662 if (cleanup)
2663 free(settings->RedirectionDomain);
2664 settings->RedirectionDomain = (val ? _strdup(val) : NULL);
2665 return (!val || settings->RedirectionDomain != NULL);
2666
2667 case FreeRDP_RedirectionTargetFQDN:
2668 if (cleanup)
2669 free(settings->RedirectionTargetFQDN);
2670 settings->RedirectionTargetFQDN = (val ? _strdup(val) : NULL);
2671 return (!val || settings->RedirectionTargetFQDN != NULL);
2672
2673 case FreeRDP_RedirectionTargetNetBiosName:
2674 if (cleanup)
2675 free(settings->RedirectionTargetNetBiosName);
2676 settings->RedirectionTargetNetBiosName = (val ? _strdup(val) : NULL);
2677 return (!val || settings->RedirectionTargetNetBiosName != NULL);
2678
2679 case FreeRDP_RedirectionUsername:
2680 if (cleanup)
2681 free(settings->RedirectionUsername);
2682 settings->RedirectionUsername = (val ? _strdup(val) : NULL);
2683 return (!val || settings->RedirectionUsername != NULL);
2684
2685 case FreeRDP_RemoteApplicationCmdLine:
2686 if (cleanup)
2687 free(settings->RemoteApplicationCmdLine);
2688 settings->RemoteApplicationCmdLine = (val ? _strdup(val) : NULL);
2689 return (!val || settings->RemoteApplicationCmdLine != NULL);
2690
2691 case FreeRDP_RemoteApplicationFile:
2692 if (cleanup)
2693 free(settings->RemoteApplicationFile);
2694 settings->RemoteApplicationFile = (val ? _strdup(val) : NULL);
2695 return (!val || settings->RemoteApplicationFile != NULL);
2696
2697 case FreeRDP_RemoteApplicationGuid:
2698 if (cleanup)
2699 free(settings->RemoteApplicationGuid);
2700 settings->RemoteApplicationGuid = (val ? _strdup(val) : NULL);
2701 return (!val || settings->RemoteApplicationGuid != NULL);
2702
2703 case FreeRDP_RemoteApplicationIcon:
2704 if (cleanup)
2705 free(settings->RemoteApplicationIcon);
2706 settings->RemoteApplicationIcon = (val ? _strdup(val) : NULL);
2707 return (!val || settings->RemoteApplicationIcon != NULL);
2708
2709 case FreeRDP_RemoteApplicationName:
2710 if (cleanup)
2711 free(settings->RemoteApplicationName);
2712 settings->RemoteApplicationName = (val ? _strdup(val) : NULL);
2713 return (!val || settings->RemoteApplicationName != NULL);
2714
2715 case FreeRDP_RemoteApplicationProgram:
2716 if (cleanup)
2717 free(settings->RemoteApplicationProgram);
2718 settings->RemoteApplicationProgram = (val ? _strdup(val) : NULL);
2719 return (!val || settings->RemoteApplicationProgram != NULL);
2720
2721 case FreeRDP_RemoteApplicationWorkingDir:
2722 if (cleanup)
2723 free(settings->RemoteApplicationWorkingDir);
2724 settings->RemoteApplicationWorkingDir = (val ? _strdup(val) : NULL);
2725 return (!val || settings->RemoteApplicationWorkingDir != NULL);
2726
2727 case FreeRDP_RemoteAssistancePassStub:
2728 if (cleanup)
2729 free(settings->RemoteAssistancePassStub);
2730 settings->RemoteAssistancePassStub = (val ? _strdup(val) : NULL);
2731 return (!val || settings->RemoteAssistancePassStub != NULL);
2732
2733 case FreeRDP_RemoteAssistancePassword:
2734 if (cleanup)
2735 free(settings->RemoteAssistancePassword);
2736 settings->RemoteAssistancePassword = (val ? _strdup(val) : NULL);
2737 return (!val || settings->RemoteAssistancePassword != NULL);
2738
2739 case FreeRDP_RemoteAssistanceRCTicket:
2740 if (cleanup)
2741 free(settings->RemoteAssistanceRCTicket);
2742 settings->RemoteAssistanceRCTicket = (val ? _strdup(val) : NULL);
2743 return (!val || settings->RemoteAssistanceRCTicket != NULL);
2744
2745 case FreeRDP_RemoteAssistanceSessionId:
2746 if (cleanup)
2747 free(settings->RemoteAssistanceSessionId);
2748 settings->RemoteAssistanceSessionId = (val ? _strdup(val) : NULL);
2749 return (!val || settings->RemoteAssistanceSessionId != NULL);
2750
2751 case FreeRDP_ServerHostname:
2752 if (cleanup)
2753 free(settings->ServerHostname);
2754 settings->ServerHostname = (val ? _strdup(val) : NULL);
2755 return (!val || settings->ServerHostname != NULL);
2756
2757 case FreeRDP_ShellWorkingDirectory:
2758 if (cleanup)
2759 free(settings->ShellWorkingDirectory);
2760 settings->ShellWorkingDirectory = (val ? _strdup(val) : NULL);
2761 return (!val || settings->ShellWorkingDirectory != NULL);
2762
2763 case FreeRDP_TargetNetAddress:
2764 if (cleanup)
2765 free(settings->TargetNetAddress);
2766 settings->TargetNetAddress = (val ? _strdup(val) : NULL);
2767 return (!val || settings->TargetNetAddress != NULL);
2768
2769 case FreeRDP_Username:
2770 if (cleanup)
2771 free(settings->Username);
2772 settings->Username = (val ? _strdup(val) : NULL);
2773 return (!val || settings->Username != NULL);
2774
2775 case FreeRDP_WindowTitle:
2776 if (cleanup)
2777 free(settings->WindowTitle);
2778 settings->WindowTitle = (val ? _strdup(val) : NULL);
2779 return (!val || settings->WindowTitle != NULL);
2780
2781 case FreeRDP_WmClass:
2782 if (cleanup)
2783 free(settings->WmClass);
2784 settings->WmClass = (val ? _strdup(val) : NULL);
2785 return (!val || settings->WmClass != NULL);
2786
2787 default:
2788 WLog_ERR(TAG, "[%s] Invalid key index %" PRIuz, __FUNCTION__, id);
2789 return FALSE;
2790 }
2791 return TRUE;
2792 }
2793
freerdp_settings_set_string(rdpSettings * settings,size_t id,const char * val)2794 BOOL freerdp_settings_set_string(rdpSettings* settings, size_t id, const char* val)
2795 {
2796 return freerdp_settings_set_string_(settings, id, val, TRUE);
2797 }
2798
freerdp_settings_get_pointer(const rdpSettings * settings,size_t id)2799 const void* freerdp_settings_get_pointer(const rdpSettings* settings, size_t id)
2800 {
2801 if (!settings)
2802 return FALSE;
2803
2804 switch (id)
2805 {
2806 case FreeRDP_BitmapCacheV2CellInfo:
2807 return settings->BitmapCacheV2CellInfo;
2808
2809 case FreeRDP_ChannelDefArray:
2810 return settings->ChannelDefArray;
2811
2812 case FreeRDP_ClientAutoReconnectCookie:
2813 return settings->ClientAutoReconnectCookie;
2814
2815 case FreeRDP_ClientRandom:
2816 return settings->ClientRandom;
2817
2818 case FreeRDP_ClientTimeZone:
2819 return settings->ClientTimeZone;
2820
2821 case FreeRDP_DeviceArray:
2822 return settings->DeviceArray;
2823
2824 case FreeRDP_DynamicChannelArray:
2825 return settings->DynamicChannelArray;
2826
2827 case FreeRDP_FragCache:
2828 return settings->FragCache;
2829
2830 case FreeRDP_GlyphCache:
2831 return settings->GlyphCache;
2832
2833 case FreeRDP_LoadBalanceInfo:
2834 return settings->LoadBalanceInfo;
2835
2836 case FreeRDP_MonitorDefArray:
2837 return settings->MonitorDefArray;
2838
2839 case FreeRDP_MonitorIds:
2840 return settings->MonitorIds;
2841
2842 case FreeRDP_OrderSupport:
2843 return settings->OrderSupport;
2844
2845 case FreeRDP_Password51:
2846 return settings->Password51;
2847
2848 case FreeRDP_RdpServerCertificate:
2849 return settings->RdpServerCertificate;
2850
2851 case FreeRDP_RdpServerRsaKey:
2852 return settings->RdpServerRsaKey;
2853
2854 case FreeRDP_ReceivedCapabilities:
2855 return settings->ReceivedCapabilities;
2856
2857 case FreeRDP_RedirectionPassword:
2858 return settings->RedirectionPassword;
2859
2860 case FreeRDP_RedirectionTsvUrl:
2861 return settings->RedirectionTsvUrl;
2862
2863 case FreeRDP_ServerAutoReconnectCookie:
2864 return settings->ServerAutoReconnectCookie;
2865
2866 case FreeRDP_ServerCertificate:
2867 return settings->ServerCertificate;
2868
2869 case FreeRDP_ServerRandom:
2870 return settings->ServerRandom;
2871
2872 case FreeRDP_StaticChannelArray:
2873 return settings->StaticChannelArray;
2874
2875 case FreeRDP_TargetNetAddresses:
2876 return settings->TargetNetAddresses;
2877
2878 case FreeRDP_TargetNetPorts:
2879 return settings->TargetNetPorts;
2880
2881 case FreeRDP_instance:
2882 return settings->instance;
2883
2884 default:
2885 WLog_ERR(TAG, "[%s] Invalid key index %" PRIuz, __FUNCTION__, id);
2886 return FALSE;
2887 }
2888 }
2889
freerdp_settings_set_pointer(rdpSettings * settings,size_t id,const void * val)2890 BOOL freerdp_settings_set_pointer(rdpSettings* settings, size_t id, const void* val)
2891 {
2892 if (!settings)
2893 return FALSE;
2894
2895 switch (id)
2896 {
2897 case FreeRDP_BitmapCacheV2CellInfo:
2898 settings->BitmapCacheV2CellInfo = (void*)val;
2899 break;
2900
2901 case FreeRDP_ChannelDefArray:
2902 settings->ChannelDefArray = (void*)val;
2903 break;
2904
2905 case FreeRDP_ClientAutoReconnectCookie:
2906 settings->ClientAutoReconnectCookie = (void*)val;
2907 break;
2908
2909 case FreeRDP_ClientRandom:
2910 settings->ClientRandom = (void*)val;
2911 break;
2912
2913 case FreeRDP_ClientTimeZone:
2914 settings->ClientTimeZone = (void*)val;
2915 break;
2916
2917 case FreeRDP_DeviceArray:
2918 settings->DeviceArray = (void*)val;
2919 break;
2920
2921 case FreeRDP_DynamicChannelArray:
2922 settings->DynamicChannelArray = (void*)val;
2923 break;
2924
2925 case FreeRDP_FragCache:
2926 settings->FragCache = (void*)val;
2927 break;
2928
2929 case FreeRDP_GlyphCache:
2930 settings->GlyphCache = (void*)val;
2931 break;
2932
2933 case FreeRDP_LoadBalanceInfo:
2934 settings->LoadBalanceInfo = (void*)val;
2935 break;
2936
2937 case FreeRDP_MonitorDefArray:
2938 settings->MonitorDefArray = (void*)val;
2939 break;
2940
2941 case FreeRDP_MonitorIds:
2942 settings->MonitorIds = (void*)val;
2943 break;
2944
2945 case FreeRDP_OrderSupport:
2946 settings->OrderSupport = (void*)val;
2947 break;
2948
2949 case FreeRDP_Password51:
2950 settings->Password51 = (void*)val;
2951 break;
2952
2953 case FreeRDP_RdpServerCertificate:
2954 settings->RdpServerCertificate = (void*)val;
2955 break;
2956
2957 case FreeRDP_RdpServerRsaKey:
2958 settings->RdpServerRsaKey = (void*)val;
2959 break;
2960
2961 case FreeRDP_ReceivedCapabilities:
2962 settings->ReceivedCapabilities = (void*)val;
2963 break;
2964
2965 case FreeRDP_RedirectionPassword:
2966 settings->RedirectionPassword = (void*)val;
2967 break;
2968
2969 case FreeRDP_RedirectionTsvUrl:
2970 settings->RedirectionTsvUrl = (void*)val;
2971 break;
2972
2973 case FreeRDP_ServerAutoReconnectCookie:
2974 settings->ServerAutoReconnectCookie = (void*)val;
2975 break;
2976
2977 case FreeRDP_ServerCertificate:
2978 settings->ServerCertificate = (void*)val;
2979 break;
2980
2981 case FreeRDP_ServerRandom:
2982 settings->ServerRandom = (void*)val;
2983 break;
2984
2985 case FreeRDP_StaticChannelArray:
2986 settings->StaticChannelArray = (void*)val;
2987 break;
2988
2989 case FreeRDP_TargetNetAddresses:
2990 settings->TargetNetAddresses = (void*)val;
2991 break;
2992
2993 case FreeRDP_TargetNetPorts:
2994 settings->TargetNetPorts = (void*)val;
2995 break;
2996
2997 case FreeRDP_instance:
2998 settings->instance = (void*)val;
2999 break;
3000
3001 default:
3002 WLog_ERR(TAG, "[%s] Invalid key index %" PRIuz, __FUNCTION__, id);
3003 return FALSE;
3004 }
3005 return TRUE;
3006 }
3007