Use CMake to detect availability of getlogin_r
[platform/upstream/freerdp.git] / ChangeLog
1 # 2020-06-22  Version 2.1.2
2
3 Important notes:
4 * CVE-2020-4033 Out of bound read in RLEDECOMPRESS
5 * CVE-2020-4031 Use-After-Free in gdi_SelectObject
6 * CVE-2020-4032 Integer casting vulnerability in `update_recv_secondary_order`
7 * CVE-2020-4030 OOB read in `TrioParse`
8 * CVE-2020-11099 OOB Read in license_read_new_or_upgrade_license_packet
9 * CVE-2020-11098 Out-of-bound read in glyph_cache_put
10 * CVE-2020-11097 OOB read in ntlm_av_pair_get
11 * CVE-2020-11095 Global OOB read in update_recv_primary_order
12 * CVE-2020-11096 Global OOB read in update_read_cache_bitmap_v3_order
13 * Gateway RPC fixes for windows
14 * Fixed resource fee race resulting in double free in USB redirection
15 * Fixed wayland client crashes
16 * Fixed X11 client mouse mapping issues (X11 mapping on/off)
17 * Some proxy related improvements (capture module)
18 * Code cleanup (use getlogin_r, ...)
19
20 For a complete and detailed change log since the last release candidate run:
21 git log 2.1.1..2.1.2
22
23
24 # 2020-05-20  Version 2.1.1
25
26 Important notes:
27 * CVE: GHSL-2020-100 OOB Read in ntlm_read_ChallengeMessage
28 * CVE: GHSL-2020-101 OOB Read in security_fips_decrypt due to uninitialized value
29 * CVE: GHSL-2020-102 OOB Write in crypto_rsa_common
30 * Enforce synchronous legacy RDP encryption count (#6156)
31 * Fixed some leaks and crashes missed in 2.1.0
32 * Removed dynamic channel listener limits
33 * Lots of resource cleanup fixes (clang sanitizers)
34 * A couple of performance improvements
35 * Various small annoyances eliminated (typos, prefilled username for windows client, ...)
36
37
38 For a complete and detailed change log since the last release candidate run:
39 git log 2.1.0..2.1.1
40
41
42 # 2020-05-05  Version 2.1.0
43
44 Important notes:
45
46 * fix multiple CVEs: CVE-2020-11039, CVE-2020-11038, CVE-2020-11043, CVE-2020-11040, CVE-2020-11041,
47   CVE-2020-11019, CVE-2020-11017, CVE-2020-11018
48 * fix multiple leak and crash issues (#6129, #6128, #6127, #6110, #6081, #6077)
49
50 Noteworthy features and improvements:
51 * Fixed sound issues (#6043)
52 * New expert command line options /tune and /tune-list to modify all client
53   settings in a generic way.
54 * Fixes for smartcard cache, this improves compatibility of smartcard devices
55   with newer smartcard channel.
56 * Shadow server can now be instructed to listen to multiple interfaces.
57 * Improved server certificate support (#6052)
58 * Various fixes for wayland client (fullscreen, mouse wheel, ...)
59 * Fixed large mouse pointer support, now mouse pointers > 96x96 pixel are visible.
60 * USB redirection command line improvements (filter options)
61 * Various translation improvements for android and ios clients
62
63 For a complete and detailed change log since the last release candidate run:
64 git log 2.0.0..2.1.0
65
66
67 # 2020-04-09  Version 2.0.0
68
69 Important notes:
70
71 * fix multiple CVEs: CVE-2020-11521 CVE-2020-11522 CVE-2020-11523 CVE-2020-11524 CVE-2020-11525 CVE-2020-11526
72 * fix multiple other security related issues (#6005, #6006, #6007, #6008, #6009, #6010, #6011, #6012, #6013)
73 * sha256 is now used instead of sha1 to fingerprint certificates. This will
74   invalidate all hosts in FreeRDP known_hosts2 file and causes a prompt if a
75   new connection is established after the update
76
77 Noteworthy features and improvements:
78
79 * First version of the RDP proxy was added (#5372) - thanks to @kubistika
80 * Smartcard received some refactoring. Missing functions were added and input
81   validation was improved (#5884)
82 * A new option /cert that unifies all certificate related options (#5880)  
83   The old options (cert-ignore, cert-deny, cert-name, cert-tofu) are still
84   available but marked as deprecated
85 * Support for Remote Assistance Protocol Version 2 [MS-RA]
86 * The DirectFB client was removed because it was unmaintained
87 * Unified initialization of OrderSupport
88 * Fix for licensing against Windows Server 2003
89 * Font smoothing is now enabled per default
90 * Flatpack support was added
91 * Smart scaling for Wayland using libcairo was added (#5215)
92 * Unified update->BeginPaint and update->EndPaint
93 * An image scaling API for software drawing was added
94 * Rail was updated to the latest spec version 28.0
95 * Support for H.264 in the shadow server is now detected at runtime
96 * Add mask=<value> option for /gfx and /gfx-h264  (#5771)
97 * Code reformatting (#5667)
98 * A new option /timeout was added to adjust the TCP ACK timeout (#5987)
99
100 For a complete and detailed change log since the last release candidate run:
101 git log 2.0.0-rc4..2.0.0
102
103
104 # 2018-11-19    Version 2.0.0-rc4
105
106 FreeRDP 2.0.0-rc4 is the fifth release candidate for 2.0.0. Although it mainly
107 addresses security and stability there are some new features as well.
108
109 Noteworthy features and improvements:
110
111 * fix multiple reported CVEs (#5031)
112 * gateway: multiple fixes and improvements (#3600, #4787, #4902, #4964, #4947,
113   #4952, #4938)
114 * client/X11: support for rail (remote app) icons was added (#5012)
115 * licensing: the licensing code was re-worked. Per-device licenses
116   are now saved on the client and used on re-connect.
117         WARNING: this is a change in FreeRDP behavior regarding licensing. If the old
118         behavior is required, or no licenses should be saved use the
119         new command line option +old-license (#4979)
120 * improve order handling - only orders that were enabled
121   during capability exchange are accepted (#4926).
122         WARNING and NOTE: some servers do improperly send orders that weren't negotiated,
123         for such cases the new command line option /relax-order-checks was added to
124         disable the strict order checking. If connecting to xrdp the options
125         /relax-order-checks *and* +glyph-cache are required.
126 * /smartcard has now support for substring filters (#4840)
127   for details see https://github.com/FreeRDP/FreeRDP/wiki/smartcard-logon
128 * add support to set tls security level (for openssl >= 1.1.0)
129   - default level is set to 1
130   - the new command line option /tls-seclevel:[LEVEL] allows to set
131           a different level if required
132 * add new command line option /smartcard-logon to allow
133   smartcard login (currently only with RDP security) (#4842)
134 * new command line option: /window-position to allow positioning
135   the window on startup (#5018)
136 * client/X11: set window title before mapping (#5023)
137 * rdpsnd/audin (mostly server side) add support for audio re-sampling using soxr or ffmpeg
138 * client/Android: add Japanese translation (#4906)
139 * client/Android: add Korean translation (#5029)
140
141 For a complete and detailed change log since the last release candidate run:
142 git log 2.0.0-rc3..2.0.0-rc4
143
144
145 # 2018-08-01    Version 2.0.0-rc3
146
147 FreeRDP 2.0.0-rc3 is the fourth release candidate for 2.0.0.
148 For a complete and detailed change log since the last release candidate run:
149 git log 2.0.0-rc2..2.0.0-rc3
150
151 Noteworthy features and improvements:
152
153 * Updated and improved sound and microphone redirection format support (AAC)
154 * Improved reliability of reconnect and redirection support
155 * Fixed memory leaks with +async-update
156 * Improved connection error reporting
157 * Improved gateway support (various fixes for HTTP and RDG)
158 * SOCKS proxy support (all clients)
159 * More reliable resolution switching with /dynamic-resolution (MS-RDPEVOR) (xfreerdp)
160
161 Fixed github issues (excerpt):
162
163 * #1924, #4132, #4511 Fixed redirection
164 * #4165 AAC and MP3 codec support for sound and microphone redirection
165 * #4222 Gateway connections prefer IP to hostname
166 * #4550 Fixed issues with +async-update
167 * #4634 Comment support in known_hosts file
168 * #4684 /drive and +drives don't work togehter
169 * #4735 Automatically reconnect if connection timed out waiting for user interaction
170
171 See https://github.com/FreeRDP/FreeRDP/milestone/9 for a complete list.
172
173
174 # 2017-11-28    Version 2.0.0-rc2
175
176 FreeRDP 2.0.0-rc2 is the third release candidate for 2.0.0.
177 For a complete and detailed change log since the last release candidate run:
178 git log 2.0.0-rc1..2.0.0-rc2
179
180 Noteworthy features and improvements:
181
182 * IMPORTANT: add support CredSSP v6 - this fixes KB4088776 see #4449, #4488
183 * basic support for the "Video Optimized Remoting Virtual Channel Extension" (MS-RDPEVOR) was added
184 * many smart card related fixes and cleanups #4312
185 * fix ccache support
186 * fix OpenSSL 1.1.0 detection on Windows
187 * fix IPv6 handling on Windows
188 * add support for memory and thread sanitizer
189 * support for dynamic resloution changes was added in xfreerdp #4313
190 * support for gateway access token (command line option /gat) was added
191 * initial support for travis-ci.org was added
192 * SSE optimization version of RGB to AVC444 frame split was added
193 * build: -msse2/-msse3 are not enabled globally anymore
194
195 Fixed github issues (excerpt):
196
197 * #4227 Convert settings->Password to binary blob
198 * #4231 freerdp-2.0.0_rc0: 5 tests failed out of 184 on ppc
199 * #4276 Big endian fixes
200 * #4291 xfreerdp “Segmentation fault” when connecting to freerdp-shadow-cli
201 * #4293 [X11] shadow server memory corruption with /monitors:2 #4293
202 * #4296 drive redirection - raise an error if the directory can't be founde
203 * #4306 Cannot connect to shadow server with NLA auth: SEC_E_OUT_OF_SEQUENCE
204 * #4447 Apple rpath namespace fixes
205 * #4457 Fix /size: /w: /h: with /monitors: (Fix custom sizes)
206 * #4527 pre-connection blob (pcb) support in .rdp files
207 * #4552 Fix Windows 10 cursors drawing as black
208 * smartcard related: #3521, #3431, #3474, #3488, #775, #1424
209
210 See https://github.com/FreeRDP/FreeRDP/milestone/8 for a complete list.
211
212
213 # 2017-11-28    Version 2.0.0-rc1
214
215 FreeRDP 2.0.0-rc1 is the second release candidate for 2.0.0.
216 For a complete and detailed change log since the last release candidate run:
217 git log 2.0.0-rc0..master
218
219 Noteworthy features and improvements:
220
221 * support for FIPS mode was added (option +fipsmode)
222 * initial client side kerberos support (run cmake with WITH_GSSAPI)
223 * support for ssh-agent redirection (as rdp channel)
224 * the man page(s) and /help were updated an improved
225 * build: support for GNU/kFreeBSD
226 * add support for ICU for unicode conversion (-DWITH_ICU=ON)
227 * client add option to force password prompt before connection (/from-stdin[:force])
228 * add Samsung DeX support
229 * extend /size to allow width or height percentages (#4146)
230 * add support for "password is pin"
231 * clipboard is now enabled per default (use -clipboard to disable)
232
233 Fixed github issues (excerpt):
234
235 * #4281: Added option to prefer IPv6 over IPv4
236 * #3890: Point to OpenSSL doc for private CA
237 * #3378: support 31 static channels as described in the spec
238 * #1536: fix clipboard on mac
239 * #4253: Rfx decode tile width.
240 * #3267: fix parsing of drivestoredirect
241 * #4257: Proper error checks for /kbd argument
242 * #4249: Corruption due to recursive parser
243 * #4111: 15bpp color handling for brush.
244 * #3509: Added Ctrl+Alt+Enter description
245 * #3211: Return freerdp error from main.
246 * #3513: add better description for drive redirection
247 * #4199: ConvertFindDataAToW string length
248 * #4135: client/x11: fix colors on big endian
249 * #4089: fix h264 context leak when DeleteSurface
250 * #4117: possible segfault
251 * #4091: fix a regression with remote program
252
253 See https://github.com/FreeRDP/FreeRDP/milestone/7 for a complete list.
254
255
256 2012-02-07      Version 1.0.1
257
258 FreeRDP 1.0.1 is a maintenance release to address a certain number of
259 issues found in 1.0.0. This release also brings corrective measures
260 to certificate validation which were required for inclusion in Ubuntu.
261
262 * Certificate Validation
263         * Improved validation logic and robustness
264         * Added validation of certificate name against hostname
265
266 * Token-based Server Redirection
267         * Fixed redirection logic
268         * HAProxy load-balancer support
269
270 * xfreerdp-server
271         * better event handling
272         * capture performance improvements
273
274 * wfreerdp
275         * Fix RemoteFX support
276         * Fix mingw64 compilation
277
278 * libfreerdp-core:
279         * Fix severe TCP sending bug
280         * Added server-side Standard RDP security
281
282 2012-01-16      Version 1.0.0
283
284 License:
285
286 FreeRDP 1.0 is the first release of FreeRDP under the Apache License 2.0.
287 The FreeRDP 1.x series is a rewrite, meaning there is no continuity with
288 the previous FreeRDP 0.x series which were released under GPLv2.
289
290 New Features:
291
292 * RemoteFX
293         * Both encoder and decoder
294         * SSE2 and NEON optimization
295 * NSCodec
296 * RemoteApp
297         * Working, minor glitches
298 * Multimedia Redirection
299         * ffmpeg support
300 * Network Level Authentication (NLA)
301         * NTLMv2
302 * Certificate validation
303 * FIPS-compliant RDP security
304 * new build system (cmake)
305 * added official logo and icon
306
307 New Architecture:
308
309 * libfreerdp-core
310         * core protocol
311         * highly portable
312         * both client and server
313 * libfreerdp-cache
314         * caching operations
315 * libfreerdp-codec
316         * bitmap decompression
317         * codec encoding/decoding
318 * libfreerdp-kbd
319         * keyboard mapping
320 * libfreerdp-channels
321         * virtual channel management
322         * client and server side support
323 * libfreerdp-gdi
324         * extensively unit tested
325         * portable software GDI implementation
326 * libfreerdp-rail
327         * RemoteApp library
328 * libfreerdp-utils
329         * shared utility library
330
331 FreeRDP Clients:
332
333 * client/X11 (xfreerdp)
334         * official client
335         * RemoteApp support
336         * X11 GDI implementation
337 * client/DirectFB (dfreerdp)
338         * DirectFB support
339         * software-based GDI (libfreerdp-gdi)
340 * client/Windows (wfreerdp)
341         * Native Win32 support
342
343 FreeRDP Servers (experimental):
344
345 * server/X11 (xfreerdp-server)
346         * RemoteFX-only
347         * no authentication
348         * highly experimental
349         * keyboard and mouse input supported
350
351 Virtual Channels:
352
353 * cliprdr (Clipboard Redirection)
354 * rail (RemoteApp)
355 * drdynvc (Dynamic Virtual Channels)
356         * audin (Audio Input Redirection)
357                 * alsa support
358                 * pulse support
359         * tsmf (Multimedia Redirection)
360                 * alsa support
361                 * pulse support
362                 * ffmpeg support
363 * rdpdr (Device Redirection)
364         * disk (Disk Redirection)
365         * parallel (Parallel Port Redirection)
366         * serial (Serial Port Redirection)
367         * printer (Printer Redirection)
368                 * CUPS support
369         * smartcard (Smartcard Redirection)
370 * rdpsnd (Sound Redirection)
371         * alsa support
372         * pulse support
373