File: ChangeLog

package info (click to toggle)
freerdp3 3.24.2%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 69,144 kB
  • sloc: ansic: 422,590; cpp: 17,977; xml: 1,721; python: 1,158; sh: 783; lisp: 408; perl: 231; cs: 191; makefile: 116
file content (1634 lines) | stat: -rw-r--r-- 69,842 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
# 2026-03-25 Version 3.24.1

Bug and security fix release

## CVE fixes

We got 4 High and 2 Moderate security reports from
* Calvin Young - eWalker Consulting
* Enoch Chow - Isomorph Cyber

and 2 Modreate reports from
* [Sebastian Alba Vives] ***@***.***) Sebastián Alba

and 1 Moderate report from
* @prahal

CVE have been requested but not assigned yet. They will be published once assigned at
https://github.com/FreeRDP/FreeRDP/security

## What's Changed
* [channels,video] fix wrong cast (#12511)
* [codec,openh264] reject encoder ABI mismatch on runtime-loaded library (#12510)
* [client,sdl] create a copy of rdpPointer (#12512)
* [codec,video] properly pass intermediate format (#12518)
* [utils, signal] lazily initialize Windows CRITICAL_SECTION to match POSIX static mutex behavior (#12520)
* winpr: improve libunwind backtraces (#12530)
* [server,shadow] remember selected caps (#12528)
* Zero credential data before free in NLA and NTLM context (#12532)
* [server,proxy] ignore missing client in input channel (#12536)
* [server,proxy] ignore rdpdr messages (#12537)
* [winpr,sspi] improve kerberos logging (#12538)
* Codec fixes (#12542)

## New Contributors
* @Kotivskyi made their first contribution in #12532

For a complete and detailed change log since the last release run:
git log 3.24.2...3.24.1

# 2026-03-18 Version 3.24.1

Minor bugfix release addression two regressions found in previous 3.24.0 release

## What's Changed
* [warnings] fix various sign and cast warnings (#12480)
* [client,x11] start with xfc->remote_app = TRUE; (#12491)
* Sam file read regression fix (#12484)
* [ncrypt,smartcardlogon] support ECC keys in PKCS#11 smartcard enumeration (#12490)
* Fix: memory leak in rdp_client_establish_keys() in libfreerdp/core/co… (#12494)
* Fix memory leak in `freerdp_settings_int_buffer_copy()` on error paths (`libfreerdp/core/settings.c`) (#12486)
* Code Cleanups (#12493)
* Fix: memory leak in PCSC_SCardListReadersW() in winpr/libwinpr/smartc… (#12495)
* [channels,telemetry] use dynamic logging (#12496)
* [channel,gfx] use generic plugin log (@12498, #12499)
* [channels,audin] set error when audio_format_read fails (#12500)
* [channels,video] unify error handling (#12502)
* Fastpath fine grained lock (#12503)
* [core,update] make the PlaySound callback non-mandatory (#12504)
* Refinements: RPM build updates, FIPS improvements (#12506)

## New Contributors
* @dko-strd made their first contribution in #12490
* @huanghuihui0904 made their first contribution in #12486

For a complete and detailed change log since the last release run:
git log 3.24.1...3.24.0

# 2026-03-13 Version 3.24.0

A new release with bugfixes and many improvements for users and developers alike.
* Completed the [[nodiscard]] marking of the API to warn about problematic
  unchecked use of functions
* Added full C23 support (default stays at C11) to allow new compilers
  to do stricter checking
* Improved X11 and SDL3 clients
* Improved smartcard support
* proxy now supports RFX graphics mode

## Security Advisories
* CVE-2026-29774
* CVE-2026-29775
* CVE-2026-29776
* CVE-2026-31806
* CVE-2026-31883
* CVE-2026-31884
* CVE-2026-31885
* CVE-2026-31897

## What's Changed
* Attribute nodiscard related chanes (#12325, #12360, #12395, #12406,
  #12421, #12426, #12177, #12403, #12405, #12407, #12409, #12408,
  #12412, #12413)
* c23 related improvements (#12368, #12371, #12379, #12381, #12383,
  #12385, #12386, #12387, #12384)
* Generic code cleanups (#12382, #12439, #12455, #12462, #12399, #12473)
* [core,utils] ignore NULL values in remove_rdpdr_type (#12372)
* [codec,fdk] revert use of WinPR types (#12373)
* [core,gateway] ignore incomplete rpc header (#12375, #12376)
* [warnings] make function declaration names consistent (#12377)
* [libfreerdp] Add new define for logon error info (#12380)
* [client,x11] improve rails window locking (#12392)
* Reload fix missing null checks (#12396)
* Bounds checks (#12400)
* [server,proxy] check for nullptr before using scard_call_context (#12404)
* [uwac] fix rectangular glitch around surface damage regions (#12410)
* Address various error handling inconsistencies (#12411)
* [core,server] Improve WTS API locking (#12414)
* Address some GCC compile issues (#12415, #12420)
* Winpr atexit (#12416)
* [winpr,smartcard] fix function pointer casts (#12422)
* Xf timer fix (#12423)
* [client,sdl] workaround for wlroots compositors (#12425)
* [client,sdl] fix SdlWindow::query (#12378)
* [winpr,smartcard] fix PCSC_ReleaseCardContext (#12427)
* [client,x11] eliminate obsolete compile flags (#12428)
* [client,common] skip sending input events when not connected (#12429)
* Input connected checks (#12430)
* Floatbar and display channel improvements (#12431)
* [winpr,platform] fix WINPR_ATTR_NODISCARD definition (#12432)
* [client] Fix writing of gatewayusagemethod to .rdp files (#12433)
* Nodiscard finetune (#12435)
* [core] fix missing gateway credential sync (#12436)
* [client,sdl3] limit FREERDP_WLROOTS_HACK (#12441)
* [core,settings] Allow FreeRDP_instance in setter (#12442)
* [codec,h264] make log message trace (#12444)
* X11 rails improve (#12440)
* [codec,nsc] limit copy area in nsc_process_message (#12448)
* Proxy support RFX and NSC settings (#12449)
* [client,common] display a shortened help on parsing issues (#12450)
* [winpr,smartcard] refine locking for pcsc layer (#12451)
* [codec,swscale] allow runtime loading of swscale (#12452)
* Swscale fallback (#12454)
* Sdl multi scaling support (#12456)
* [packaging,flatpak] update runtime and dependencies (#12457)
* [codec,video] add doxygen version details (#12458)
* [github,templates] update templates (#12460)
* [client,sdl] allow FREERDP_WLROOTS_HACK for all sessions (#12461)
* [warnings,nodiscard] add log messages for failures (#12463)
* [gdi,gdi] ignore empty rectangles (#12467)
* Smartcard fix smartcard-login, pass rdpContext for abort (#12466)
* [winpr,smartcard] fix compiler warnings (#12469)
* [winpr,timezone] fix search for transition dates (#12468)
* [client,common] improve /p help (#12471)
* Scard logging refactored (#12472)
* [emu,scard] fix smartcard emulation (#12475)
* Sdl null cursor (#12474)

## New Contributors
* @larsch made their first contribution in #12410

For a complete and detailed change log since the last release run:
git log 3.24.0...3.23.0

# 2026-02-25 Version 3.23.0

A new release and again a lot of changes:
* We've received in depth analysis of FreeRDP client code and have addressed shortcomings uncovered by these.
CVE-2026-26965
CVE-2026-26955
CVE-2026-26271
CVE-2026-25997
CVE-2026-25959
CVE-2026-25955
CVE-2026-25954
CVE-2026-25953
CVE-2026-25952
CVE-2026-25942
CVE-2026-25941

Another weakness was reported, see https://github.com/FreeRDP/FreeRDP/security/advisories/GHSA-qcfc-ghxr-h927

* Configuration isolation was added. 3rd party client/server applications should check
  the new API freerdp_setApplicationDetails and winpr_setApplicationDetails which allows
  using a custom namespace for configuration files and runtime data per application
* For developers, we've marked most of the API with [[nodiscard]] now so compilers
  might start complaining about unchecked return values now. This is intentional and should
  give some incentive to clean up code. Functions where the return is optional have been
  omitted. For the time being these checks are automatically applied for FreeRDP builds, external
  projects can opt in by defining WINPR_DEFINE_ATTR_NODISCARD in their build system.
* For developers: Please start testing your applications against FreeRDP builds with
  `-DWITHOUT_FREERDP_3x_DEPRECATED=ON` to ensure you're not using some soon to be removed API.
* SDL client did get a huge update, multimonitor and high DPI modes are now much improved
* We got a contribution for smartcard channel adding support for new attributes, so more
  applications might work now.

## What's Changed
* Sdl cleanup (#12202)
* [client,sdl] do not apply window offset (#12205)
* [client,sdl] add SDL_Error to exceptions (#12214)
* Rdp monitor log (#12215)
* [winpr,smartcard] implement some attributes (#12213)
* [client,windows] Fix return value checks for mouse event functions (#12279)
* [channels,rdpecam] fix sws context checks (#12272)
* [client,windows] Enhance error handling and context validation (#12264)
* [client,windows] Add window handle validation in RDP_EVENT_TYPE_WINDOW_NEW (#12261)
* [client,sdl] fix multimon/fullscreen on wayland (#12248)
* Vendor by app (#12207)
* [core,gateway] relax TSG parsing (#12283)
* [winpr,smartcard] simplify PCSC_ReadDeviceSystemName (#12273)
* [client,windows] Implement complete keyboard indicator synchronization (#12268)
* Fixes more more more (#12286)
* Use application details for names (#12285)
* warning cleanups (#12289)
* Warning cleanup (#12291)
* [client,windows] Enhance memory safety with NULL checks and resource protection (#12271)
* [client,x11] apply /size:xx% only once (#12293)
* Freerdp config test (#12295)
* [winpr,smartcard] fix returned attribute length (#12296)
* [client,SDL3] Fix properly handle smart-sizing with fullscreen (#12298)
* [core,test] fix use after free (#12299)
* Sign warnings (#12300)
* [cmake,compiler] disable -Wjump-misses-init (#12301)
* [codec,color] fix input length checks (#12302)
* [client,sdl] improve cursor updates, fix surface sizes (#12303)
* Sdl fullscreen (#12217)
* [client,sdl] fix move constructor of SdlWindow (#12305)
* [utils,smartcard] check stream length on padding (#12306)
* [android] Fix invert scrolling default value mismatch (#12309)
* Clear fix bounds checks (#12310)
* Winpr attr nodiscard fkt ptr (#12311)
* [codec,planar] fix missing destination bounds checks (#12312)
* [codec,clear] fix destination checks (#12315)
* NSC Codec fixes (#12317)
* Freerdp api nodiscard (#12313)
* [allocations] fix growth of preallocated buffers (#12319)
* Rdpdr simplify (#12320)
* Resource fix (#12323)
* [winpr,utils] ensure message queue capacity (#12322)
* [server,shadow] fix return and parameter checks (#12330)
* Shadow fixes (#12331)
* [rdtk,nodiscard] mark rdtk API nodiscard (#12329)
* [client,x11] fix XGetWindowProperty return handling (#12334)
* Win32 signal (#12335)
* [channel,usb] fix message parsing and creation (#12336)
* [cmake] Define WINPR_DEFINE_ATTR_NODISCARD (#12338)
* Proxy config fix (#12345)
* [codec,progressive] refine progressive decoding (#12347)
* [client,sdl] fix sdl_Pointer_New (#12350)
* [core,gateway] parse [MS-TSGU] 2.2.10.5 HTTP_CHANNEL_RESPONSE_OPTIONAL (#12353)
* X11 kbd sym (#12354)
* Windows compile warning fixes (#12357,#12358,#12359)

## New Contributors
* @tsz8899 made their first contribution in (#12279)
* @morgan9e made their first contribution in (#12298)
* @Wladefant made their first contribution in (#12309)

For a complete and detailed change log since the last release run:
git log 3.23.0...3.22.0

# 2026-01-28 Version 3.22.0

Major bugfix release:
* Complete overhaul of SDL client
* Introduction of new WINPR_ATTR_NODISCARD macro wrapping compiler or C language
  version specific [[nodiscard]] attributes
* Addition of WINPR_ATTR_NODISCARD to (some) public API functions so usage errors
  are producing warnings now
* Add some more stringify functions for logging
* We've received CVE reports, check
  https://github.com/FreeRDP/FreeRDP/security/advisories for more details!
  * @Keryer reported an issue affecting client and proxy:
    * CVE-2026-23948
  * @ehdgks0627 did some more fuzzying and found quite a number of client side bugs.
    * CVE-2026-24682
    * CVE-2026-24683
    * CVE-2026-24676
    * CVE-2026-24677
    * CVE-2026-24678
    * CVE-2026-24684
    * CVE-2026-24679
    * CVE-2026-24681
    * CVE-2026-24675
    * CVE-2026-24491
    * CVE-2026-24680

## What's Changed
* [core,info] fix missing NULL check (#12157)
* [gateway,tsg] fix TSG_PACKET_RESPONSE parsing (#12161)
* Allow querying auth identity with kerberos when running as a server (#12162)
* Sspi krb heimdal (#12163)
* Tsg fix idleTimeout parsing (#12167)
* [channels,smartcard] revert 649f7deee4e32ecedf0dcdfe571e54134b5be81e (#12166)
* [crypto] deprecate er and der modules (#12170)
* [channels,rdpei] lock full update, not only parts (#12175)
* [winpr,platform] add WINPR_ATTR_NODISCARD macro (#12178)
* Wlog cleanup (#12179)
* new stringify functions & touch API defines (#12180)
* Add support for querying SECPKG_ATTR_PACKAGE_INFO to NTLM and Kerberos (#12171)
* [channels,video] measure times in ns (#12184)
* [utils] Nodiscard (#12187)
* Error handling fixes (#12186)
* [channels,drdynvc] check pointer before reset (#12189)
* Winpr api def (#12190)
* [winpr,platform] drop C23 [[nodiscard]] (#12192)
* [gdi] add additional checks for a valid rdpGdi (#12194)
* Sdl3 high dpiv2 (#12173)
* peer: Disconnect if Logon() returned FALSE (#12196)
* [channels,rdpecam] fix PROPERTY_DESCRIPTION parsing (#12197)
* [channel,rdpsnd] only clean up thread before free (#12199)
* [channels,rdpei] add RDPINPUT_CONTACT_FLAG_UP (#12195)


For a complete and detailed change log since the last release run:
git log 3.22.0...3.21.0

# 2026-01-19 Version 3.21.0

Bugfix release with a few new API functions addressing shortcomings with
regard to input data validation.
Thanks to @ehdgks0627 we have fixed the following additional (medium)
client side vulnerabilities:
* CVE-2026-23530
* CVE-2026-23531
* CVE-2026-23532
* CVE-2026-23533
* CVE-2026-23534
* CVE-2026-23732
* CVE-2026-23883
* CVE-2026-23884

## What's Changed
* [client,sdl] fix monitor resolution (#12142)
* [codec,progressive] fix progressive_rfx_upgrade_block (#12143)
* Krb cache fix (#12145)
* Rdpdr improved checks (#12141)
* Codec advanced length checks (#12146)
* Glyph fix length checks (#12151)
* Wlog printf format string checks (#12150)
* [warnings,format] fix format string warnings (#12152)
* Double free fixes (#12153)
* [clang-tidy] clean up code warnings (#12154)

For a complete and detailed change log since the last release run:
git log 3.21.0...3.20.2

# 2026-01-14 Version 3.20.2

Patch release fixing a regression with gateway connections introduced with 3.20.1

## What's Changed
* Warnings and missing enumeration types (#12137)

For a complete and detailed change log since the last release run:
git log 3.20.2...3.20.1

# 2026-01-14 Version 3.20.1

New years cleanup release. Fixes some issues reported and does a cleaning sweep
to bring down warnings.
Thanks to @ehdgks0627 doing some code review/testing we've uncovered the following
(medium) vulnerabilities:
* CVE-2026-22851
* CVE-2026-22852
* CVE-2026-22853
* CVE-2026-22854
* CVE-2026-22855
* CVE-2026-22856
* CVE-2026-22857
* CVE-2026-22858
* CVE-2026-22859

These affect FreeRDP based clients only, with the exception of CVE-2026-22858
also affecting FreeRDP proxy. FreeRDP based servers are not affected.

## What's Changed
* [ci,abi] use abigail-tools from repo (#12079)
* [ci,abi] fix missing ABI suppressions (#12080)
* [ci,abi] add missing functions to suppression list (#12081)
* [core,gateway] fix http response (#12095)
* [ci,mac] build openh264 from master branch (#12104)
* [client,sdl] lock primary while used (#12103)
* [client,sdl] show file selection dialog (#12083)
* Proxy fixes (#12106)
* [core,freerdp] fix race in freerdp_abort_connect_context (#12107)
* [server,proxy] make peer_list access thread-safe and fix leaks (#12108)
* Clang warning fixes (#12109)
* Tidy nsc (#12110)
* Clang warn fixes (#12105)
* Tcp refactor (#12113)
* [enum,cast] fix implicit enum casts (#12111)
* [client,common] fix /remoteGuard (#12115)
* Coverity warning fixes (#12116)
* [channels,rdpei] properly clean up server channel (#12119)
* [core,gateway] ignore unknown http headers (#12120)
* Asan fixes (#12121, #12124, #12124)
* [crypto,base64] do proper length checks (#12122)
* [core,gcc] fix integer promotion issue (#12126)
* [core,orders] fix brush update decoding (#12130)
* [client,sdl] fix +workarea (#12131)
* [channels,rdpear] add checks for itemSize (#12127)
* Fix dead lock in smartcard when using smartcard logon with emulated smartcard (#12132)

For a complete and detailed change log since the last release run:
git log 3.20.1...3.20.0

# 2025-12-17 Version 3.20.0

## What's Changed
* Mingw fixes (#12070)
* [crypto,certificate_data] add some hostname sanitation (#12072)
* [client,common]: Fix loading of rdpsnd channel (#12074)
* [client,sdl] set touch and pen hints (#12076)

For a complete and detailed change log since the last release run:
git log 3.20.0...3.19.1

# 2025-12-12 Version 3.19.1

## What's Changed
* [core,transport] improve SSL error logging (#12045)
* [utils,helpers] fix freerdp_settings_get_legacy_config_path (#12052)
* From stdin and sdl-creds improve (#12050)
* [crypto,certificate] sanitize hostnames (#12055)
* [channels,drdynvc] propagate error in dynamic channel (#12057)
* [CMake] make Mbed-TLS and LibreSSL experimental (#12058)
* Json fix (#12060)
* rdpecam: send sample only if it's available (#12061)
* [channels,rdpecam] allow MJPEG frame skip and direct passthrough (#12059)
* [winpr,utils] explicit NULL checks in jansson WINPR_JSON_ParseWithLength (#12064)
* [packaging,flatpak] remove xprop (#12065)

For a complete and detailed change log since the last release run:
git log 3.19.1...3.19.0

# 2025-12-05 Version 3.19.0

Release addressing a regression (gateway transport failing) and some bugfixes

## What's Changed
* [ci] add git-archive ignore list (#11994)
* [client,common] fix retry counter (#11996)
* [cmake] fix aarch64 neon detection (#11998)
* Fix response body existence check when using RDP Gateway (#12002)
* fix line clipping issue (#12005)
* Clip coord fix (#12006)
* [core,input] Add debug log to keyboard state sync (#12008)
* Update command line usage for gateway option (#12011)
* [codec,ffmpeg] 8.0 dropped AV_PROFILE_AAC_MAIN (#12012)
* [channels,audin] fix pulse memory leak (#12013)
* [channels,drive] Small performance improvements in drive channel (#12014)
* [winpr,utils] fix command line error logging (#12021)
* [common,test] Adjust AVC and H264 expectations. (#12020)
* drdynvc: implement compressed packet (#12028)
* [channels,rdpecam] improve log messages (#12029)
* Fix remote credential guard channel loading (#12031)
* Fix inverted ifdef (#12032)
* [core,nego] disable all enabled modes except the one requested (#12035)
* rdpear: handle basic NTLM commands and fix server-side (#12039)
* [smartcardlogon] Fix off-by-one error in `smartcard_hw_enumerateCerts` (#12042)
* rdpecam: fix camera sample grabbing (#12041)

## New Contributors
* @kov-serg made their first contribution in (#12005)
* @alexiri made their first contribution in (#12011)
* @nteodosio made their first contribution in (#12020)

For a complete and detailed change log since the last release run:
git log 3.19.0...3.18.0

# 2025-11-12 Version 3.18.0

Minor improvements and bugfix release.
Some user visible changes:
* Fix a regression reading passwords from stdin
* Fix a timer regression (µs instead of ms)
* Improved multitouch support
* Fix a bug with PLANAR codec (used with /bpp:32 or sometimes with /gfx)
* Better error handling for ARM transport (Entra)
* Fix audio encoder lag (microphone/AAC) with FFMPEG
* Support for janssen JSON library

## What's Changed
* [core,arm] extract redirected username (#11873)
* [winpr,path] fix endianness issues (#11875)
* [cmake,pkg-config] properly set requires fields (#11876)
* [codec,planar] make test output verbose (#11877)
* [codec,planar] more test output (#11878)
* Planar fix sign (#11880)
* Entra fixes (#11881, #11882)
* Warn fixes cast (#11884)
* wst error handling (#11885)
* [winpr,json] add jansson support (#11886)
* [client,sdl] set metadata after command line parsing (#11890)
* [core,arm] add TARGET_BOOTING error code (#11889)
* [core] fix const correctness (#11891)
* [c,standard] use C99 inline (#11879)
* [winpr,pool] limit minimum threadpool size (#11897)
* Azure domain (#11892)
* [core,arm] fix TargetNetAddress size and checks (#11899)
* [winpr,json] fix a memory leak with jansson (#11901)
* Jansson fix (#11902)
* Bitmap fixes and unit tests (#11903)
* [channels,rdpecam] fix a memory leak (#11907)
* [common,settings] fix resize of TargetNetAddressess (#11905)
* Jansson ref count (#11908)
* [winpr,json] fix WINPR_JSON_AddItemToArray (#11909)
* [client,common] improve retry handling (#11910)
* Janssen version limit (#11911)
* Rdstls error code mapping (#11913)
* dsp_ffmpeg: fix latency buildup during resampling (#11912)
* [core,rdstls] improve logging (#11914)
* [client,common] fix parsing of enablerdsaadauth (#11915)
* Codec stringify (#11918)
* [core,tcp] fix a regression (#11919)
* [core,timer] fix reschedule interval (#11921)
* [winpr,timezone] update dotnet version for tzextract (#11927)
* [timezones] Update definitions by @github-actions[bot] in (#11928)
* [winpr,synch] Yield after a poll timeout in emscripten (#11929)
* [channels,audin] fix a leak in pulse backend (#11933)
* [crypto,x509] add missing OpenSSL include for d2i_RSA_PSS_PARAMS (#11942)
* [client,android] fix wrong type of variable (#11945)
* Revert smart sizing (#11946)
* Align width and height for AVC444 decoding to 32 (#11930)
* [crypto,tls] make cert warning more accurate (#11947)
* [core,timer] ensure all scheduled timers are handled (#11948)
* Fix build and run with optional channels (#11941)
* [channels,rdpei] fix not sending essential touch events (#11955)
* [CMake] mark WITH_VAAPI experimental (#11956)
* Config extension (#11961)
* [winpr,synch] Fix starvation in pollset_poll caused by emscripten_sleep (#11962)
* [utils] fix from-stdin (#11965)
* [client,x11] log mouse event types and call stack (#11966)
* libfreerdp: remove SIGUSR1 and SIGUSR2 from fatal signals (#11968)
* [input, virtualkey] Add Korean keys in XKB_KEYNAME_TABLE (#11977)
* [cache,glyph] overallocate to compensate for off by one (#11980)
* [client,common] improve multitouch mouse emulation (#11970)
* [core,gateway] improve response cookie handling (#11971)
* Revert "[core,gateway] improve arm transport" (#11983)
* Http request improvements (#11984)
* Log improve (#11985)
* [client,sdl] sdl2 dialog auth: remove std::move (#11986)

## New Contributors
* @FriederHannenheim made their first contribution in (#11912)
* @ploosin made their first contribution in (#11955)

For a complete and detailed change log since the last release run:
git log 3.18.0...3.17.2

# 2025-09-19 Version 3.17.2

Minor improvements and bugfix release.
Most notably resource usage (file handles) has been greatly reduced and
static build pkg-config have been fixed.
For users of xfreerdp RAILS/RemoteApp mode the switch to DesktopSession
mode has been fixed (working UAC screen)

## What's Changed
* Findfirst fix (#11833)
* [channels,drive] tolerate drive_file_set_disposition_information (#11834)
* endianness fixes (#11835)
* fix(winpr): ncrypt_pkcs11: set correct PIV certificate labels (#11837)
* [cmake] fix versioning regression (#11832)
* Limit threadpool (#11840)
* [winpr,path] fix missing length check (#11841)
* [proxy,channels] better NULL checks (#11842)
* [codec,yuv] wrap step calculation (#11843)
* [winpr,sspi] log mechanisms not valid (#11844)
* settings: remove duplicate setting of GatewayAvdScope (#11845)
* [client,sdl] improve clipboard logging (#11849)
* rdpecam: add some new callbacks to the HAL (#11851)
* [proxy,modules] generate pkg-config files for modules (#11848)
* [cmake] static build: populate private (#11852)
* [proxy,modules] extend dynamic module loader (#11854)
* [winpr,threadpool] default minimum thread count (#11855)
* [core,tcp] unify setting of TCP_NODELAY (#11856)
* Planar fix (#11857)
* Fix quote parsing (#11858)
* Sdl mod: disable hotkeys (#11862)
* Aad auth fail (#11863)
* [clients] add checks from #11804 to all clients (#11865)
* [client,x11] fix rails/desktop switch (#11866)
* [client,x11] disable output during rail/desktop switch (#11867)
* [core,gateway] automatically accept ARM redirection (#11870)
* Update android deps (#11871)

## New Contributors
* @TheBestTvarynka made their first contribution in #11837)

For a complete and detailed change log since the last release run:
git log 3.17.2...3.17.1

# 2025-09-01 Version 3.17.1

Minor improvements and bugfix release.

* most notably a memory leak was addressed
* fixed header files missing C++ guards
* xfreerdp as well as the SDL clients now support a system wide configuration file
* Heimdal kerberos support was improved
* builds with [MS-RDPEAR] now properly abort at configure if Heimdal is used
  (this configuration was never supported, so ensure nobody compiles it that way)

## What's Changed
* [client,sdl] always set sdl->windows_created (#11807)
* [winpr,synch] increase timeout for TestSynchCritical (#11808)
* Enable RDPECAM client in flatpak release (#11809)
* [proxy,channels] refactor dynamic channel (#11812)
* [core,settings] fix ReceivedCapabilities reset (#11814)
* Freebsd build fixes (#11815)
* [client,sdl] disable connection dialog (#11820)
* audin_oss: do not reset mic volume on capture start (#11822)
* add-x11-config-file (#11823)
* [client,sdl] fix global config evaluation (#11825)
* [sspi,negotiate] improve /auth-pkg-list parsing (#11826)
* Geometry channel fixes (#)11828)
* core/redirection: Ensure stream has enough space for all parameters (#11830)

## New Contributors
* @omatasas made their first contribution in #11787
* @sharkcz made their first contribution in #11808
* @cvpcs made their first contribution in #11809
* @Defenso-QTH made their first contribution in #11822

For a complete and detailed change log since the last release run:
git log 3.17.1...3.17.0

# 2025-08-22 Version 3.17.0

Bugfix release with (lots) of format string issues along with a few minor parser
issues fixed. Most notable (user visible) change is full X509 chain support for
client/server.

## What's Changed
* [client,sdl2] fix build with webview (#11685)
* [core,nla] use wcslen for password length (#11687)
* Clear channel error prior to call channel init event proc (#11688)
* Warn args (#11689)
* [client,common] fix -mouse-motion (#11690)
* [core,proxy] fix IPv4 and IPv6 length (#11692)
* Regression fix2 (#11696)
* Log fixes (#11693)
* [common,settings] fix int casts (#11699)
* [core,connection] fix log level of several messages (#11697)
* [client,sdl] print current video driver (#11701)
* [crypto,tls] print big warning for /cert:ignore (#11704)
* [client,desktop] fix StartupWMClass setting (#11708)
* [cmake] unify version creation (#11711)
* [common,settings] force reallocation on caps copy (#11715)
* [manpages] Add example of keyboard remapping (#11718)
* Some fixes in Negotiate and NLA (#11722)
* [client,x11] fix clipboard issues (#11724)
* kerberos: do various tries for TGT retrieval in u2u (#11723)
* Cmdline escape strings (#11735)
* [winpr,utils] do not log command line arguments (#11736)
* [api,doc] Add stylesheed for doxygen (#11738)
* [core,proxy] fix BIO read methods (#11739)
* [client,common] fix sso_mib_get_access_token return value in error case (#11741)
* [crypto,tls] do not use context->settings->instance (#11749)
* winpr: re-introduce the credentials module (#11734)
* [winpr,timezone] ensure thread-safe initialization (#11754)
* core/redirection: Ensure stream has enough space for the certificate (#11762)
* [client,common] do not log success (#11766)
* Clean up bugs exposed on systems with high core counts (#11761)
* [cmake] add installWithRPATH (#11747)
* [clang-tidy] fix various warnings (#11769)
* Wlog improve type checks (#11774)
* [client,common] fix tenantid command line parsing (#11779)
* Proxy module static and shared linking support (#11768)
* LoadLibrary Null fix (#11786)
* [client,common] add freerdp_client_populate_settings_from_rdp_file_un… (#11780)
* Fullchain support (#11787)
* [client,x11] ignore floatbar events (#11771)
* [winpr,credentials] prefer utf-8 over utf-16-LE #11790
* [proxy,modules] ignore bitmap-filter skip remaining #11789

## New Contributors
* @steelman made their first contribution in #11718
* @pvachon made their first contribution in #11761

For a complete and detailed change log since the last release run:
git log 3.17.0...3.16.0

# 2025-06-16 Version 3.16.0

Bugfix release with (again) much improved SDL3 and X11 client

## What's Changed
* Lots of improvements for the SDL3 client (#11502,#11504,#11516,#11546,#11552,
  #11553,#11556,#11560,#11568,#11587,#11613,#11643,#11635,#11648,#11653,#11654,
  #11661)
* Various X11 client improvements (#11619,#11612,#11620,#11624,#11625,#11660)
* Various Ci build fixes (#11543,#11554,#11570,#11571,#11575,#11577,#11579,
  #11580,#11581,#11582,#11583,#11584,#11585,#11586)
* [utils,smartcard] Better logging and handling of output buffer too small
  (#11503,#11565,#11636)
* Add a timer implementation (#11578,#11592,#11615)
* Various bugfixed for drive channel (#11569,#11601,#11637,#11647,#11659)
* add login through MS identity broker via sso-mib interface (#11600,#11608)
* Update flatpak build script in repo (#11609,#11610,#11621,#11670)
* Various AAD/Azure/Entra improvements (#11606,#11607,#11371,#11518)
* YUV420 primitives fixes (#11673,#11539)
* GCC Fixes (#11538)
* [core,settings] fix freerdp_device_collection_add (#11533)
* [core,proxy] detect address type (#11534)
* [core,test] refactor TestSettings (#11558)
* [core,test] improve settings test log (#11559)
* [core,activation] skip sending PDU_TYPE_DEACTIVATE_ALL (#11603)
* [core,transport] only free userContext if userContextSize > 0 (#11642)
* [core,info] Allow INFO_HIDEF_RAIL_SUPPORTED with RDP version RDP_VERS… (#11652)
* [core,gcc] use dynamic logger from rdpMcs (#11669)
* [core,settings] default MonitorIds size to MonitorDefArray size (#11671)
* Rdp security fixes (#11506)
* rdpei/server: Fix incorrect PDU length read (#11510)
* [winpr] Put '\0' when converting empty string to wstr (#11511)
* [common,settings] new settings (de)serialization API (#11508)
* [cache,glyph] fix GLYPH_FRAGMENT_USE (#11517)
* [winpr,sysinfo] use a single clock to provide System and Local time (#11520)
* [common,settings] fix add_string_or_null (#11522)
* Compiler warning fixes (#11523)
* fix [resources]: remove MimeType from desktop file (#11525)
* gcc: fix server-side connection with multiple monitor (#11527)
* [rdpsnd/client] add parameters to pulse snd device plugin (#11530)
* [crypto,key] do not deprecate new_from* (#11535)
* [winpr,file] Fix assert fail always when removing flags (#11540)
* FF_PROFILE Depreciation (#11542)
* [cmake] Fix finding ffmpeg under nonstandard prefixes (#11548)
* [client,android] update (#11555)
* Support 'Restrict Credential Delegation' mode (#11547)
* Support NLA in shadow server when running behind a Hyper-V proxy (#11549)
* [winpr,file] Add implementation of FileFlushFileBuffers (#11566)
* [winpr,file] add TestFileWriteFile testcase (#11567)
* [channels,rdpdr] expose device add/remove for clients (#11564)
* Deb & RPM update (#11572)
* Transport fix (#11573)
* [winpr,sspi] add kerberos string len checks (#11590)
* [winpr,sspi] assert kerberos principal (#11591)
* [channels,video] fix NULL dereference (#11597)
* Reconnect strict (#11599)
* [rdpdr,hotplug] fix passing of device::Id back to caller (#11617)
* [client,common] lock clipboard on update (#11618)
* [client,cliprdr] refactor file clipboard (#11627)
* [winpr,wtypes] align BOOL typedef with objc.h header (#11632)
* [stream] reset pool array size after clearing (#11631)
* fix compile errors: xfc not defined even if with WITH_XCURSOR=ON (#11629)
* [utils,helpers] add missing WINPR_ATTR_MALLOC (#11633)
* JSON configuration helpers (#11634)
* [client,common] (re)initialize fuse root in cliprdr_file_context_init (#11646)
* [WaitForXXObject] use infinite timeout where possible (#11651)
* [channels,printer] fix missing include (#11663)
* [winpr,file] fix definition of winpr_CreateFile (#11664)

## New Contributors
* @lazy5f made their first contribution in #11511
* @EndlessEden made their first contribution in #11542
* @thestr4ng3r made their first contribution in #11548
* @ljaeh0121 made their first contribution in #11566
* @rupran made their first contribution in #11600
* @asterwyx made their first contribution in #11631
* @ligangcc made their first contribution in #11629
* @motor-dev made their first contribution in #11635

For a complete and detailed change log since the last release run:
git log 3.16.0...3.15.0

# 2025-04-14 Version 3.15.0

Bugfix release with much improved SDL3 client and relative mouse input support

## What's Changed
* [client,sdl] fix crash on suppress output (#11421)
* Refactor checks (#11425)
* Clean warn, sdl dynamic sizes (#11426)
* [channels,remdesk] fix possible memory leak (#11428)
* [client,x11] map exit code success (#11432)
* nla: send user and domain hints with smartcard logon (#11435)
* [client,windows] ignore clipboard failures (#11436)
* Hidef rail checks and deprecation fixes (#11439)
* Fix child session hanging issue. (#11442)
* [channels,rdpdr] relax state checks for PAKID_CORE_CLIENTID_CONFIRM (#11433)
* Standard rdp security network issues (#11446)
* Various fixes related to smartcard logon server-side (#11443)
* [core,rdp] fix check for SEC_FLAGSHI_VALID (#11449)
* [scripts,mac] limit make -j to number of processors (#11450)
* [readme] deprecate xmpp bridge (#11451)
* [readme] explicitly link FAQ (#11452)
* [readme] put links on one line each (#11453)
* [core,tls] enable SNI when building with libreSSL (#11454)
* [channels,client] log server format list (#11455)
* [client,mac] prefer unicode from clipboard (#11456)
* [cmake] drop legacy and unused cmake_policy (#11457)
* Sdl suppress output fix (#11458)
* [client,sdl] unify all gdi_suppress_output calls (#11460)
* [client,sdl] fix multimonitor fullscreen (#11462)
* [client,sdl] fix unused result warning (#11463)
* [client,sdl] quit on window close (#11464)
* [core,gateway] log tsg timeout (#11465)
* [core,settings] enforce OrderSupportFlags (#11468)
* [core,caps] fix rdp_apply_order_capability_set (#11469)
* Sdl elminiate sdl and rdp thread dependency (#11473)
* [client,sdl] wrap connection dialog (#11475)
* [core,proxy] align no_proxy to curl (#11479)
* [winpr,smartcard] fix SCARD_ATTR_VENDOR_NAME length (#11481)
* [core,gateway] fix string reading for TSG (#11485)
* [rdpei/server] fix build and channel init (#11484)
* [client,sdl] refactor display update (#11472)
* [client,sdl] fix clipboard updates (#11486)
* [client,sdl] fix orientation update (#11487)
* Sample fix (#11488)
* [timezones] Update definitions (#)11489)
* Rel mouse change (#11384)
* [winpr,utils] ignore _Unwind_Backtrace return (#11491)
* Warn log (#11493)
* [cmake] simplify v4l detection (#11495)
* [client,sdl] use a GUID to identify the clipboard (#11496)
* [utils,smartcard] assert and improve log (#11498)
* rdpei/server: Add optional threaded handling of messages (#11499)

## New Contributors
* @poasungoh made their first contribution in https://github.com/FreeRDP/FreeRDP/pull/11442
* @TolchiIsland made their first contribution in https://github.com/FreeRDP/FreeRDP/pull/11446
* @mnauw made their first contribution in https://github.com/FreeRDP/FreeRDP/pull/11484

For a complete and detailed change log since the last release run:
git log 3.15.0...3.14.1


# 2025-03-24 Version 3.14.1

Bugfix and papercut release.
Some small improvements in RDP file parsing, logging,
clipboard support, gateway detection and many more.

## What's Changed
* [core,gateway] add rts parser checks (#11340)
* [core,gateway] additional RTS checks (#11341)
* [ci,workflow] use mk-build-deps to install deps (#11343)
* [ci,workflow] add equivs dependency (#11344)
* [clipboard] improve logging, fix image conversions (#11342)
* core: Set instance pointer after channel reload (#11346)
* [ci,alt-arch] request sudo for package installation (#11345, #11347, #11348,
  #11349, #11350, #11351, #11352, #11353, #11355)
* [channels,printer] Ignore printer settings (#11354)
* [ci,alt-arch] fix gsm, simplify config (#11356)
* [primitives] fix detection and refactor yuv420 to RGB (#11358)
* [client,sdl3] fix clipboard format detection (#11366)
* [cmake] add explicit instructions to turn off unmaintained modules (#11362)
* client: Fix population of string settings in rdp file (#11370)
* [client,common] fix rdp parser (#11372)
* [core] use dynamic logger where possible (#11360)
* [client,x11] add <ctrl>+<alt>+d shortcut, log detected shortcuts (#11363)
* [client] add image as HTML clipboard format, fix bitmap conversions (#11369)
* [core,gateway] improve RPC fallback detection and logging (#11375)
* [core,transport] fix transport statistics (#11377)
* code cleanups and abi-checker improvements (#11378, #11381)
* refactor GetStdHandle (use global destructor), fix possible rdp2tcp leaks (#11383, #11386)
* fix a few missing checks in xfreerdp and keyboard remapping for sdl-freerdp (#11406)
* fix deprecation warnings on macos (#11390)
* fix capslock and hotkey keyboard state sync (#11410, #11415)

For a complete and detailed change log since the last release run:
git log 3.14.1...3.14.0


# 2025-03-13 Version 3.14.0

Bugfix and cleanup release.
Due to some new API functions the minor version has been increased.

So, what has been changed:
* Fix spelling of 'dont' (#11297)
* missing ConnectFlags variable in license_read_platform_challenge_packet breaks in WITH_DEBUG_LICENSE builds (#11301)
* [locale] add freerdp_detect_keyboard_layout_from_locale (#11298)
* Invert 3x deprecated (#11296)
* [primitives,copy] remove alignment check (#11302)
* sdl-common (#11303)
* [client,sdl3] fix bitmap clipboard copy (#11304)
* [channels,ubdrc] add some more failure logging (#11306)
* [client] Fix writing incorrect type for integer values in RDP file (#11307)
* Urbdrc cleanups (#11308)
* [winpr,nt] Fix incorrect name in FILE_INFORMATION_CLASS (#11311)
* [core,gateway] improve rts_read_auth_verifier_with_stub (#11314)
* [cmake] Fix DLL install directory (#11316)
* Enable dynamic resolution setting (#11317)
* [client,x11] add apple keyboard fallback (#11315)
* [client,sdl] #include <SDL3/SDL_main.h> (#11318)
* [windows] fix deprecation and int warnings (#11319)
* Mingw build improvements (#11321)
* Urbdrc leak fix (#11322)
* [warnings] fixed integer casts (#11325)
* [core,gateway] unify TSG_PACKET_MSG_RESPONSE (#11327)
* [channels,drive] Prefer using handle from IRP_CREATE when possible (#11338)

New Contributors
* @eduar-hte made their first contribution in (#11301)

For a complete and detailed change log since the last release run:
git log 3.14.0...3.13.0

# 2025-03-06 Version 3.13.0

Another bugfix and cleanup release.
Due to some new functions and fields being introduced the minor version
has been increased.

New for application developers:
A new CMake Variable WITH_FREERDP_3x_DEPRECATED (ON by default) allows
disabling all symbols that have been marked deprecated during the 3.x
release cycle. Such a build can be used to test compatibility with future
versions that might drop these symbols entirely.

So, what has been done:
* Friends of old hardware rejoice, serial port redirection got an update
  (not kidding you)
* Android builds have been updated to be usable again
* Mingw builds now periodically do a shared and static build
* Fixed some bugs and regressions along the way and improved test coverage as
  well

Noteworthy Changes:
* Cmake fix symbol visibility (#11185)
* Sanity checks (#11186)
* [locale,keyboard] fix loading from file (#11188)
* [client,x11] only filter input on floatbar lock (#11190)
* [core,gcc] improve consistency checks (#11191)
* [channel,urbdrc] fix urbdrc_udevman_register_devices (#11194)
* [client,sdl] fix keyboard grab (#11195)
* Nightly deb sdl3 optional (#11197)
* Alt arch update (#11199)
* [ci,alt-arch] split config (#11200)
* [core,freerdp] send MCS Disconnect Provider Ultimatum PDU (#11202)
* [macro] fix use of WINPR_DEPRECATED (#11203)
* [channel,rdpecam] UVC H.264 fix for c922 camera (#11207)
* [channel,rdpdr] support general caps V1 (#11209)
* [cmake] fix missing include (#11213)
* [client,sdl] mark SDL2 as deprecated. (#11223)
* Cursor test and fixes (#11220)
* [build,android] add workaround for OpenSSL tag naming (#11224)
* [core,credssp_auth] Fix faulty string length check in `credssp_auth_client_init_cred_attributes` (#11226)
* [codec,test] fix type mismatch (#11229)
* [codec,dsp] ignore encoder errors (#11225)
* Android fixes (#11230)
* [channels,rdpsnd] fix android build warnings (#11232)
* [client,common] improve parsing of TLS options (#11235)
* [client,x11] reduce verbosity of actionscript log (#11238)
* CMake: generate a .gitignore file for the build directory (#11241)
* [winpr,wlog] simplify WLog_* macros (#11237)
* [client,cmdline] fix port parsing for gateway (#11243)
* Mingw update (#11242, #11244, #11245)
* [ci,abi] suppress gdi_graphics_pipeline_init_ex (#11246)
* [cmake] Enable CMAKE_EXPORT_COMPILE_COMMANDS (#11252)
* [packaging,flatpak] remove .orig file (#11254)
* [utils,smartcard] check output buffer length (#11255)
* [client,x11] improve action script logging (#11257)
* [warnings] fix -Wunused-macro (#11258)
* [warnings] fix -Wunused-function (#11260)
* Redirection && StreamPool usage fixes (#11262)
* Serial term fixes (#11253)
* [server,shadow] multi rect BitmapUpdate support (#11268)
* Redirection && StreamPool usage fixes (#11262)
* [warnings] eliminate dead code (#11275)
* Implement stuff (#11277)
* [dead code] remove some unused code (#11280)
* [channels,rdpecam] fix libusb include path (#11282)
* Rdpear test fix (#11284)
* client: Move buffer pointer after writing RDP settings (#11287)
* [warnings] eliminate dead code (#11283)
* [client,x11] implement keyboard mapping (#11273)
* Serial term fixes (#11253)
* [core,gateway] add tsg checks (#11288)

New Contributors:
* @yegorich made their first contribution in (#11241)
* @THS-on made their first contribution in (#11243)

For a complete and detailed change log since the last release run:
git log 3.13.0...3.12.0

# 2025-02-14 Version 3.12.0

A bugfix and cleanup release.
Due to a new function and a new macro the minor version was incremented.
* Multimonitor backward compatibility fixes
* Smartcard compatibility
* Improve the [MS-RDPECAM] support
* Improve smartcard redirection support
* Refactor SSE optimizations: Split headers, unify load/store, require SSE3 for
  all optimized functions
* Refactors the CMake build to better support configuration based builders
* Fix a few regressions from last release (USB redirection and graphical glitches)

Noteworthy Changes:
* Fix all unused warnings (#11167)
* [common,settings] fix backward compatibility for LocalMonitorOffset (#11175)
* Warning cleanups (#11172, #11173, #11167)
* CMake configurable C/C++ standard, WINPR_ATTR_UNUSED (#11171)
* [utils,smartcard] fix return checks for SCardListReaders (#11170)
* [primitives,sse] split headers (#11163)
* X11 keymap reload fix (#11162)
* [core,freerdp] New API freerdp_presist_credentials (#/11160)
* [client,common] Avoid use of reserved types by @fossdd (#11144)
* [core,orders] fix update_read_delta by @akallabeth (#11145)
* [build,android] only enable required codecs for ffmpeg by @akallabeth (#11147)
* [iOS] Update OpenSSL library location and build script by @beersheba (#11148)
* Warn fixes, code cleanups by @akallabeth (#11140)
* [server] fix compilation errors after adding NONAMELESSUNION. by @llyzs (#11149)
* [channel,rdpecam] support Logitech UVC H.264 stream mux payload by @oleg0421 (#11132)
* [winpr,sysinfo] limit GetComputerNameA to 31 chars by @akallabeth (#11150)
* Warn fixes42 by @akallabeth (#11151)
* [utils,smartcard] return proper list for smartcard listing by @akallabeth (#11152)
* [channel,rdpecam] uvc_h264 xu_descriptor pointer fix by @oleg0421 (#11154)
* [channel,urbdrc] fix libusb return code checks by @akallabeth (#11156)
* Function size refactor by @akallabeth (#11157)
* Cmake multiconfig2 by @akallabeth (#10853)

New Contributors:
* @fossdd made their first contribution in https://github.com/FreeRDP/FreeRDP/pull/11144

For a complete and detailed change log since the last release run:
git log 3.12.0...3.11.1

# 2025-02-07 Version 3.11.1

A bugfix release addressing two regressions reported against 3.11.0

Noteworthy changes:
 * Fix a segfault when passing /pth (#11138)
 * Fix a regression in planar codec (#11136)

For a complete and detailed change log since the last release run:
git log 3.11.1...3.11.0

# 2025-02-06 Version 3.11.0

A new release with bugfixes and code cleanups as well as a few nifty little
features that will improve your meetings.

Noteworthy changes:
 * Updated android client to more recent gradle (#11105, #11110)
 * Fix cmake clean target (#109
 * SDL3 bugfixes and API updates (#11092, #11093, #11128)
 * Fix keyboard mapping, add working japanese and korean types, deprecate
   obsolete functions (#10989, #11035, #11011, #11074, #11037)
 * Fix timezone mapping and iteration (#11077, #11079, #11080, #11083)
 * Fix YUV reverse filter for AVC444 modes (#11045, #11063, #11066, #11081, #11086,
   #11087)
 * Fix H.264 encoder wrapper issues (#11117, #11121, #11078)
 * MS-RDPECAM: Support for H.264 encoding with VA-API (#10887)
 * Fix various CMake, build script and github workflow issues (#10992, #10996,
   #11020, #11031, #11030, #11062, #11064, #11069, #11073, #11123, #11109,
   #11120, #11053, #11089)
 * [codec,planar] fix decoder regression (#11033)
 * [client,cmdline] fix vmconnect checks (#11051)
 * Fix multi-monitor related checks (#11095)
 * Fix various compiler and clang-tidy warnings (#10953, #11003, #11004,
   #11007, #11016, #11018, #11019, #11021, #11017, #11000, #11023, #11024,
   #11026, #11002, #11028, #11001, #11029, #10999, #11006, #11034, #10998,
   #11044, #11050, #11052, #11057, #11059, #11065, #11067, #11068, #11060,
   #11071, #11085, #11088, #11099, #11102, #11108, #11124, #11126, #11129,
   #11130)

New Contributors
 * @chewi made their first contribution in https://github.com/FreeRDP/FreeRDP/pull/11004
 * @gpotter2 made their first contribution in https://github.com/FreeRDP/FreeRDP/pull/11016
 * @vmpn made their first contribution in https://github.com/FreeRDP/FreeRDP/pull/11092

For a complete and detailed change log since the last release run:
git log 3.11.0...3.10.3


# 2024-12-17 Version 3.10.3

Follow up release to 3.10.2, as we've discovered a few bugs after release.

Noteworthy changes:
 * Fix usage of GetComputerNameExA (#10988)
 * Fix cmake clean target (#10990)

For a complete and detailed change log since the last release run:
git log 3.10.3...3.10.2

# 2024-12-16 Version 3.10.2

Follow up release to 3.10.1, as we've discovered a few bugs during release
tests.

Noteworthy changes:
 * Fix initializing ComputerName setting (#10985)
 * Fix some warnings and possible leaks (#10985)

For a complete and detailed change log since the last release run:
git log 3.10.2...3.10.1

# 2024-12-16 Version 3.10.1

We're happy to present a new release of FreeRDP.
This release contains a few fixes for bugs revealed by checks introduced
with 3.10.0

Noteworthy Changes:
 * Add FreeBSD as architecture build to our ci (#10980 and others)
 * Fix empty include directory creation (#10981)
 * fix SIMD detection (#10968)
 * improve settings unit test coverage (#10966)
 * fix sending server redirection PDU (#10963)
 * fix return and use of GetComputerNameA (#10962)

For a complete and detailed change log since the last release run:
git log 3.10.1...3.10.0

# 2024-12-12 Version 3.10.0

We're happy to present a new release of FreeRDP.
This one contains some more code cleanups (we've addressed lots of clang-tidy
warnings) as well as some highly anticipated new features and bugfixes.

So, what is new:
* Enforce use of a supported build type (#10777)
* Enable FDK-AAC support for nightly packages (#10875, #10781)
* Better AAD/AVD support (#10796)
* Build system updates (#10844)
* Enforce spell checking (#10881)
* Split unit tests so a subset can be run during package build (#10776)
* We're shipping a .desktop file now (#10465)
* Build scripts for nightly packages (#10835, #10783)

Noteworthy changes:
* Fix wStream API bugs (#10885)
* Autoreconnect fixes (#10915)
* Fix monitor layout checks (#10905)
* Enforce code formatting for CMake files (#10895)
* Enable SIMD optimizations by default (#10894)
* WinPR types not based on stdint.h et al (#10754)
* Improve code assertions (#10768)
* Code cleanups (#10763, #10914)

For a complete and detailed change log since the last release run:
git log 3.10.0...3.9.0


# 2024-10-21 Version 3.9.0

We're proud to present the newest release of FreeRDP.
This one brings some major code cleanup (we've addressed lots of clang-tidy
warnings) as well as some highly anticipated new features.
We also did update the API documentation quite a bit (still incomplete though,
help always welcome ;))

So, what is new:
* Support for RDPEAR (remote credential guard) /remoteGuard option for non windows clients
* Global configuration file support, allowing to configure certificate
  accept/ignore/... default settings for all users
* Simplified manpage generation, eliminates docbook and xmlto dependencies
  speeding up builds
* New API for client channels to run tasks on RDP thread
* New extended transport layer API
* RDPECAM MJPEG support	
* the first updates of timezone definitions from our automated ci

Noteworthy changes:
* Fix bugs in SSE4.1/AVX2 image copy (#10720)
* Add warnings for invalid monitor settings during connect (#10672)
* Fix ALSA microphone support (#10664)
* Fix modal windows in RAILS mode (#10629)
* Update experimental SDL3 client (SDL3 API should now have been stabilized,
  various pull requests)
* Fix keyboard layouts, the external JSON did miss a few (#10639)

For a complete and detailed change log since the last release run:
git log 3.9.0...3.8.0

# 2024-08-30 Version 3.8.0

This is a bugfix release. Due to additional exports required by a bugfix the minor version was incremented

Noteworthy changes:
* Reduce number of warnings on CI build (make dependency includes SYSTEM) (#10509)
* Fix possible crashes with P11 certificate parsing (#10462, #10463)
* Various clipboard related fixes (#10472, #10476, #10477, #10480, #10484)
* Fix a race condition on DesktopResize (xfreerdp) (#10488)
* Improve certificate warnings (#10489)
* Try all possible resolved IP addresses for a DNS name on connect (#10491)
* Fix an issue with GFX SolidFill alpha data (#10498)
* Various fixes for SDL clients (#10504, #10492, #10471)
* Fix serial and parallel redirection crashes (#10510)
* Fix android build issues with NDK 27 (#10529)
* Improve performance of some WinPR primitives (#10528)
* Fix an issue with autoreconnect (#10523)
* Support ssh-askpass like password reading (#10516)
* Lots of code cleanups to reduce clang-tidy warnings (#10531, #10525, #10521, #10520, #10519, #10518)

For a complete and detailed change log since the last release run:
git log 3.8.0...3.7.0

# 2024-08-08 Version 3.7.0

This release has accumulated quite a number of changes. Along bugfixes for 3.6.3 it also
contains a number of improvements for distributors:

* Support for FDK-AAC for sound and microphone redirection (activate with -DWITH_FDK_AAC=ON build option)
  This allows enabling the AAC compression that do not ship faad2 and/or faac
* Support keyboard layouts as JSON resources (activate with -DWITH_KEYBOARD_LAYOUT_FROM_FILE=ON build option,
  also requires JSON support)
  This allows editing keyboard layouts for existing releases should the need arise
* Support timezones as JSON resources (activate with -DWITH_TIMEZONE_FROM_FILE=ON -DWITH_TIMEZONE_COMPILED=OFF build options,
  also requires JSON support)
  Allows reading the mapping between IANA and windows timezones from a JSON file, allowing easier updates without recompile
* Improve shadow server compatibility with windows 11 24H2 RDP client
  Windows 7 RFX and bitmap updates with multiple rectangles have been deactivated, so adjust shadow to not send such.

Noteworthy changes:
* Fix ActionScript parameter (#10423)
* Support keyboard layouts as JSON resource (#10394)
* Support timezones as JSON resource and command line argument (#10428 #10393 #10391)
* Deactivate AsyncUpdate (#10402)
* Compatibility fixes for shadow with windows 11 24H2 (#10455 #10422 #10420 #10416)
* Fix SDL client autoreconnect (#10390)
* Fix xfreerdp clipboard locking (#10385)
* Improve logging (#10426 #10441)
* Improve warnings and code checks (#10381 #10401 #10403 #10405 #10406 #10410 #10421 #10454)
* Support FDK-AAC (#10372)
* Fix drive redirection state transitions (#10367 #10374)
* Support mth:// routing token (#10366)
* Ignore unsupported SetThreadPriority (#10363)
* Fix reported documentation and code typos (#10365 #10368 #10370 #10369 #10431 #10446)

For a complete and detailed change log since the last release run:
git log 3.7.0...3.6.3

# 2024-07-08 Version 3.6.3

Bugfix release for 3.6.2 issues reported

Noteworthy changes:
* fix a graphics regression (#10352)
* workaround for a protocol bug of older FreeRDP based servers (#10358)
* fix possible NULL dereference in command line parser (#10348)
* fix intrinsics detection (#10346, #10350)

For a complete and detailed change log since the last release run:
git log 3.6.3...3.6.2


# 2024-07-04 Version 3.6.2

Bugfix release for 3.6.1 issues detected during release tests

Noteworthy changes:
* Fix xfreerdp and sdl-freerdp manpage names (accidentally changed name)
* Fix crash of wfreerdp

For a complete and detailed change log since the last release run:
git log 3.6.2...3.6.1


# 2024-07-04 Version 3.6.1

Bugfix release for 3.6.0

Noteworthy changes:
* Fix missing dependency for ci abi-checker
* Fix build WITH_SSE2/WITH_NEON: only enable support if the compiler
  also defines symbols that suggest support.
* Fix incomplete changelog for 3.6.0:
 * Improved image copy (#10208)
 * Experimental [MS-RDPECAM] support by @oleg0421 (#10258)
 * Improved primitives (#10304)
 * Connection timeout for HTTP gateway transport (#10288)

For a complete and detailed change log since the last release run:
git log 3.6.1...3.6.0


# 2024-07-03 Version 3.6.0

With this release we did improve decoder speed so you should notice a significant
speed improvement with progressive and other gfx codecs.
We've also eliminated a couple of issues along the way, so an update
is highly recommended.

Noteworthy changes:
* Improved command line failure logging (#10333)
* p11-kit support (#10081)
* json-c support (#10183)
* (experimental) SDL3 port SDL client (#10195)
* New option '/gfx:frame-ack:off' for connection delay testing (#10214)
* improved decoder speed (#10222, #10235)
* xfreerdp floatbar hide bug (#10237)
* winpr-makecert month bug (#10236)
* kerberos kdcUrl check fixes (#10238)
* timezone updates (#10120, #10144, #10170)
* fixed a capability protocol violation bug (#10132)
* fix SDL client dialog bug terminating on credential dialog (#10134)
* some more oss-fuzz issues (#10126, #10141, #10148, #10161, #10239)
* rails popup window fixes (#10160)


For a complete and detailed change log since the last release run:
git log 3.6.0...3.5.1


# 2024-04-22 Version 3.5.1

This release eliminates a bunch of issues detected during oss-fuzz runs.
The test coverage was increased and detected issues eliminates, so an update
is highly recommended.

Noteworthy changes:
* Lots of fixes for oss-fuzz reports
* Timezone detection fixes (#10106)
* SDL key remapping support (#10103)
* Improved help (#10099)
* FreeBSD epoll detection fix (#10097)

For a complete and detailed change log since the last release run:
git log 3.5.1...3.5.0

# 2024-04-16 Version 3.5.0

This release focus is on squashing bugs.
The improved test coverage and ci builds revealed a number of previously
unnoticed issues we have addressed and we also got a report from
Evgeny Legerov of Kaspersky Lab identifying a number of out of bound reads
in decoder components and one very nasty out of bound write.

CVE:
CVE-2024-32041 [Low[ OutOfBound Read in zgfx_decompress_segment
CVE-2024-32039 [Moderate] Integer overflow & OutOfBound Write in clear_decompress_residual_data
CVE-2024-32040 [Low] integer underflow in nsc_rle_decode
CVE-2024-32458 [Low] OutOfBound Read in planar_skip_plane_rle
CVE-2024-32459 [Low] OutOfBound Read in ncrush_decompress
CVE-2024-32460 [Low] OutOfBound Read in interleaved_decompress

Noteworthy changes:
* location channel support #9981, #9984, #10065
* bugfixes for report from Evgeny Legerov of Kaspersky Lab #10077
* fuzzer tests from Evgeny Legerov of Kaspersky Lab #10078
* bugfixes for coverty scanner #10066, #10068,  #10069, #10070, #10075
* clipboard and generic locking fixes #10076
* split autoreconnect support from enabling it #10063
* various nightly and workflow fixes #10064, #10058, #10062
* always set wm-class to app_id #10051
* refactored and simplified CMake #10046, #10047
* fix relative mouse event sending #10010
* improve and unify check for APIs used (POSIX, win32, mac, ...) #9995
* fix termination for gateway connections #9985
* fix drivestoredirect RDP file setting, ignore invalid #9989
* drop IPP support #10038

For a complete and detailed change log since the last release run:
git log 3.5.0...3.4.0

# 2024-03-14 Version 3.4.0

This release concentrates on improving test coverage and ci builds.
Some usability issues and inconvenient API functions were fixed on the way.

New features have been introduced (stub for location channel)

Noteworthy changes:
* fix a bug in RAIL mode not activating window focus (#9973)
* improve logging (#9969, #9943)
* OpenSSL <= 1.1.1 build fixes (#9897)
* improved help (#9899, #9905)
* improved MINGW support (#9914, #9915, #9919, #9964, #9965, #9920)
* fix right control ungrab for xfreerdp (#9960)
* fix RPATH option settings (#9963)
* fix SDL client screen updates (#9962, #9954)
* fix issues with childSession under windows (#9961, #9956, #9922)
* fix xfreerdp crash with +auth-only (#9947)
* fix windows printer channel (#9934)
* add support to enforce gateway policy (#9942)
* improve big endian support (#9927)
* ignore empty proxy environment variables (#9929)
* improve quoting support for command line (#9912)

For a complete and detailed change log since the last release run:
git log 3.4.0...3.3.0


# 2024-02-22 Version 3.3.0

This release concentrates on code cleanup and overall quality improvements.
Some usability issues and inconvenient API functions were fixed on the way.

New features have been introduced (better image clipboard) but that stays
deactivated by default as we´re in a stable series.

Check the new CMake options:
* PLUGIN_ABS_PATHS_DEFAULT disables loading of external channels from all
  but a specified absolute plugin directory defined by FREERDP_PLUGIN_PATH
* WINPR_UTILS_IMAGE_PNG enables PNG support with libpng in winpr image/clipboard
* WITH_LODEPNG enables PNG support with lodepng library in winpr image/clipboard
* WINPR_UTILS_IMAGE_WEBP enables WEBP support in winpr image/clipboard
* WINPR_UTILS_IMAGE_JPEG enables JPEG support in winpr image/clipboard
* USE_EXECINFO enables or disables backtrace support with execinfo
* WITH_WEBVIEW now defaults to OFF on windows, apple and android (not implemented)

Noteworthy changes:
* Improved image clipboard (xfreerdp, wlfreerdp) (#9873, #9826)
* Improved SDL client (#9875, #9887, #9883, #9878, #9792)
* Allow plugin loader to only use absolute paths (#9809)
* Improved TLS channel binding (#9838)
* Add GCC/clang attribute malloc wrapper WINPR_ATTR_MALLOC (#9863)
* Major clang-tidy code cleanups and bugfixes (#9799, #9834)
* Provide some defaults for wObject functions (#9799)
* Fix a bug in shadow with GFX breaking mstsc (#9818)
* Improved manpages and help (#9813, #9804)
* Blocking mode via transport IO interface (#9793)

For a complete and detailed change log since the last release run:
git log 3.3.0...3.2.0

# 2024-01-19 Version 3.2.0

This release mostly addresses issues reported since the last release.
Fixing some usablity and build issues as well as adding API functions
that are needed from external projects

Noteworthy changes:
* Fix proxy module load check (#9777)
* Improve kerberos error logging (#9771)
* Improve mac client keyboard handling (#9767)
* Add option to run client dynamic channel synchronous (#9764)
* Move huge struct to heap (#9763)
* Improved failure logging of license module (#9759)
* Improve server side gfx logging (#9757)
* Print shadow server help with printf instead of WLog (#9756)
* Fix SDL client timer initialization (#9754)
* Fix server peer message parsing (#9751)
* Enable NEON instructions if __ARM_NEON is defined (#9748)
* Add new proxy config file option TlsSecLevel (#9741)
* Improve android and mac os build scripts (#9735)
* Do not disable wayland support on BSD (#9730)
* Fix issues with assistance file parsing (#9727, #9728)
* Keyboard handling fixes for wayland client (#9725)
* Fix relative pkg-config file paths (#9720)
* Add new transport IO callback GetPublicKey (#9719)
* Fix wayland client scaling (#9715)

For a complete and detailed change log since the last release run:
git log 3.2.0...3.1.0

# 2023-12-22 Version 3.1.0

A new 3.1.0 minor release for the new 3.0.0 series.
This contains bugfixes, adds (better) support for libressl and mbedtls and
brings a bunch of improvements for the SDL client.

This comes with a price though, we now (optionally) require SDL_image if you
want to build the sdl-client

Since there are multiple new features, some new files (man pages) and new
optional dependencies we´ve directly incremented the minor version.

New CMake options:
* SDL_USE_COMPILED_RESOURCES (default ON) builds fonts and images into SDL
  client. Set to OFF to install these resources as files. (was already part of
  3.0.0, but worth mentioning here)
* WITH_SDL_IMAGE_DIALOGS (default OFF) Show some nice icons for SDL client
  connection dialogs. Requires SDL_image for build.
* WITH_BINARY_VERSIONING (default OFF) Similar as for libraries the binaries,
  manpages and resource locations created by FreeRDP project are postfixed
  with the API version. Recommended if packagers want to install the package
  alongside FreeRDP 2 without conflicts.
* RDTK_FORCE_STATIC_BUILD (default OFF) Build and link RDTK statically into
  shadow server. Recommended for packagers as this library is not really used
  outside of FreeRDP-shadow.
* UWAC_FORCE_STATIC_BUILD (default OFF) Build and link UWAC statically into
  wlfreerdp. Recommended for packagers as this library is not really used
  outside of wlfreerdp.

Noteworthy changes:
* Fix a nasty bug with relative mouse movement (#9677)
* LibreSSL support enhancements (#9691, #9670)
* mbedTLS support enhancements (#9662)
* Improve building on mac OS (#9641)
* New and improved manpages (#9690, #9650)
* Unify CMake common options, add (optional) binary versioning and allow
  building rdtk and uwac as static dependencies  (#9695)
* SDL client improvements (#9693, #9657, #9659, #9683, #9680, #9657, #9664,
  #9656)

For a complete and detailed change log since the last release run:
git log 3.1.0...3.0.0

# 2023-12-12 Version 3.0.0

Final 3.0.0 release just a little over two weeks after the last 3.0.0-rc0.
This contains bugfixes, drops some legacy code, implements a small feature
request and adds some improvements to the build system.

Most notably is the new PreventInSourceBuilds.cmake which does exactly what
the name implies, it aborts builds where source equals build directory.
If you can not use out of source tree builds for some reason, you can
circumvent this measure with the CMake setting -DALLOW_IN_SOURCE_BUILD=ON

Noteworthy changes:
* add support for AF_VSOCK #9561
* xfreerdp drop X11 GDI implementation #9492
* fixed connection freeze with childSession #9594
* fixed relative mouse input issues #9608
* fixed issues with drive redirection #9610
* simplified mac build #9601
* fixed TSMF to build again #9603
* fixed command line /gfx parsing bug #9598
* prevent in source tree build #9550
* fixed various issues with settings #9595, #9596
* add E2K cpu support in WinPR #9599
* fixed wfreerdp DPI settings when used as embedded window #9593
* android add mouse hover support #9495

For a complete and detailed change log since the last release run:
git log 3.0.0..3.0.0-rc0

# 2023-11-27 Version 3.0.0-rc0

Nearly 2 months of testing, bugfixing and API refinements later we´re
happy to announce the first release candidate for FreeRDP 3.0
The API should now be considered stable and only minor changes (if at all)
will happen from this point on, so every project using FreeRDP can check
compatibility with upcoming 3.0

Noteworthy changes:
* Updated rdpSettings API #9465:
  * getter/setter now use enum types for keys (generates compiler warnings for mismatch)
  * Refined functions (added missing, dropped problematic ones)
  * prepared opaque settings (direct struct access now deprecated)
* Server side [MS-RDPEL] channel #9471
* Relative mouse movement support #9459
* relocatable pkg-config files (enable with -DPKG_CONFIG_RELOCATABLE=ON, #9453)
* cliprdr dropped support for fuse2 (#9453)
* added support for uriparser for clipboard file:// parsing (#9455)
* aFreeRDP translation for traditional chinese (zh-rTW) added (#9450)
* fixed sdl-freerdp crash on credential dialog (#9455)
* fixed sdl-freerdp alt+tab in fullscreen (#9442)
* added /connect-child-session option (WIN32 only, #9427)
* fix rfx-image codec setup (#9425)
* added missing cmake configuration for winpr-tools (#9453)
* cleaned up cmake configuration files, dropped no longer required ones (#9455)
* fixed x11 keyboard layout detection (#9433)
* add missing API calls for server implementation (tested against ogon, #9453)
* keep dynamic channels in a hash table instead of a list (#9448)
* keep TSCredentials in server peer instance (#9430)
* fix FFMPEG/AAC encoding (#9576)
* support remote credential guard (#9574)
* fix printing on mac os 14 (#9569)
* improve RPC gateway support (#9508)
* add opus audio support for gnome-remote-desktop (#9575)
* server side handling of mouse cursor channel [MS-RDPEMSC] (#9513)

For a complete and detailed change log since the last release run:
git log 3.0.0-rc0..3.0.0-beta4

# 2023-09-31 Version 3.0.0-beta4

Noteworthy changes:
* Improved and fixed AVD authentication, now allows retries for
  machines just starting up
* Improve RDP file parser, prepare new fields used by AVD
* Fixed and improved pen support in multitouch implementation (xfreerdp)
* Lots of smaller code and leak cleanups

For a complete and detailed change log since the last release run:
git log 3.0.0-beta4..3.0.0-beta3

# 2023-08-31 Version 3.0.0-beta3

Noteworthy changes:
* fix xfreerdp keyboard on mac os
* Various crashes and input check fixes
* Improved logging of autodetect, redirection and fastpath failures
* Smartcard emulation now selectable at runtime
* Allow certificates without a subject to pass client checks
* Fix FindFirstFile issues on android
* Add FREERDP_ENTRY_POINT to silence -Wmissing-prototypes warnings for
  library entry points
* Add WINPR_RESTRICT to enable restrict (C99) or __restring (MSVC)
  keywords for compiler
* Fix support for older OpenSSL versions

For a complete and detailed change log since the last release run:
git log 3.0.0-beta3..3.0.0-beta2

# 2023-08-03 Version 3.0.0-beta2

Noteworthy changes:
* Update CMake defaults, now all features are enabled by default with a platform
  independent option if multiple are available.
* SDL client: (basic) multimonitor support
* SDL client: fix dialog cleanup order (crash fix)
* clipboard: fix FUSE shutdown crash
* fixed drive redirection: FindNextFile did miss some files/directories
* improved AAD support: honor rdp file options
* improved (gateway) http failure logging
* improved shadow server error handling
* improved CMake configuration (using find_dependency)
* updated timezone definitions
* mbedTLS build fixed
* improved MINGW build support

For a complete and detailed change log since the last release run:
git log 3.0.0-beta2..3.0.0-beta1

# 2023-07-21 Version 3.0.0-beta1

We are pleased to announce the first beta release for the next stable 3.0
series of FreeRDP. It has been a huge endeavour to implement all the new
shiny bells and whistles as well as clean up the code base and we´re still
ironing out some smaller glitches.
This is the first API breaking change since the 2.0 series and there are
some adjustments to be made for existing applications.
See https://github.com/FreeRDP/FreeRDP/wiki/FreeRDP3-migration-notes for
help (still incomplete)

Noteworthy changes:
* Support for AAD/AVD authentication
* Support for websocket transport
* Support smartcard authentication (TLS and NLA)
* Full smartcard emulation support (login with certificate + key)
* Rewritten proxy, new module API
* New reference client based on SDL2 (work in progress)
* Rewritten logging, now parsing issues are all writing to the log so
  that issues with protocol incompatibilities can be easier analyzed
  by just turning on logging
* Full OpenSSL 3 support
* Internal implementations for RC4, MD4 and MD5 (required for non critical
  parts in RDP but not part of more recent SSL libraries)
* Updated RDP protocol support
* Improved xfreerdp remote app support
* Reworked internal state machine for both client and server implementations
* Server implementations can now make use of connect-time network autodetection
* Improved clipboard handling, now also support server-to-client file transfer
  (currently xfreerdp only)
* EnhancedRemoteApp support: Utilizing the more modern standard allows remote
  apps with less glitches and window shadows
* Added client- and server-side handling for RDSTLS
* Support for the graphics redirection channel

For a complete and detailed change log since the last release run:
git log 3.0.0-beta1..2.10.0