Commit Graph

91 Commits

Author SHA1 Message Date
akallabeth 17f547ae11 Fixed CVE-2020-11521: Out of bounds write in planar codec.
Thanks to Sunglin and HuanGMz from Knownsec 404
2020-04-09 18:00:51 +02:00
Armin Novak 436b68e416 Fixed #5895: cast warnings. 2020-02-19 10:21:43 +01:00
Armin Novak 1c19de5a76 Fixed remaining issues with chroma subsampling. 2020-01-14 17:46:13 +01:00
Armin Novak b3a642164a Fixed planar size checks. 2020-01-14 15:14:40 +01:00
Armin Novak c1679d0f2c Added planar RLE chroma subsampling. 2020-01-14 14:06:43 +01:00
Armin Novak 6fd9525823 Implemented chroma subsampling for planar non RLE
Planar frames that are not RLE encoded can now be decoded if
chroma subsampling is enabled. Partly fixes #5822
2020-01-14 12:43:40 +01:00
Martin Fleisz 1112e2fffb codec: Set alpha channel to FF if not used (#5431)
* Formatting

* codec: Set alpha channel to FF if not used

This PR initializes the alpha channel to FF. Before the alpha channel
contained uninitialized memory potentially causing problems when the
image data was used by an alpha channel aware frontend.
2019-06-13 09:19:42 +02:00
Armin Novak 9610faddaa Fixed sign-compare warnings 2019-04-05 09:13:24 +02:00
Armin Novak c97d4eec67 Fixed uninitialized value. 2018-11-29 11:25:27 +01:00
Armin Novak 91107beb67 Separate alpha handling for planar codec
If the destination does not support an alpha channel ignore it
when decoding and prevent data to be copied unnecessarily
2018-10-16 12:17:25 +02:00
Armin Novak a29bc16af4 Siplified planar alpha / non alpha paths 2018-10-16 10:05:33 +02:00
Ondrej Holy 79d0725a80 codec/planar: Fix leak found by covscan
The patch changes API of functions instead of fixing unused and broken code.

leaked_storage: Returning without freeing "outPlane" leaks the storage that it points to.
2018-08-22 14:34:02 +02:00
Eric Brown 0c24ade668 Misc fixes for Windows clients 2018-03-02 12:42:04 -06:00
Armin Novak 57958cb178 Fixed #3810: Renamed color functions 2017-11-24 13:21:43 +01:00
Armin Novak dbe418062f Fixed missing parameter checks. 2017-11-15 15:56:25 +01:00
Armin Novak 0490aeb018 Fixed clang malloc integer overflow warnings. 2017-07-20 09:29:48 +02:00
Armin Novak b2c29158be Scanbuild warning, argument checks and leak fixes.
* Added Stream_GetRemainingCapacity to check remaining stream size
  before writes.
* Fixed shadow server memory leak.
* Fixed lots of scanbuild warnings
* Added missing argument checks in many functions
* Added missing static function declarations
2017-03-02 18:13:43 +01:00
Armin Novak e9b5d78673 Fixed scanbuild warnings. 2017-02-20 14:28:33 +01:00
Armin Novak 844919defe Fixed scanbuild issues. 2017-02-20 14:15:25 +01:00
Armin Novak b233afc076 Fixed uninitialized variable warning. 2017-01-23 13:27:30 +01:00
Armin Novak 00c32f62d3 Fixed alpha channel for color formats without. 2017-01-23 11:32:26 +01:00
Armin Novak 6188a12b37 Fixed planar with if local framebuffer is 16bpp 2017-01-23 11:32:25 +01:00
Armin Novak 4d40b3c58e Inlined heavy used functions. 2017-01-18 15:28:53 +01:00
Armin Novak 0bae21e619 Initialize alpha channel in planar decode. 2017-01-11 13:41:47 +01:00
Norbert Federa f71b6b46e8 fix string format specifiers
- fixed invalid, missing or additional arguments
- removed all type casts from arguments
- added missing (void*) typecasts for %p arguments
- use inttypes defines where appropriate
2016-12-16 13:48:43 +01:00
Armin Novak 9c50e1a635 Replaced _VF formats with copy flags. 2016-10-14 10:36:52 +02:00
Armin Novak 99ade05330 Fixed uninitialized variable. 2016-10-13 16:57:51 +02:00
Armin Novak 4fa2bd2e07 Fixed memory leak and argument checks. 2016-10-06 13:43:14 +02:00
Armin Novak ded84b1528 Fixed error message. 2016-10-06 13:43:14 +02:00
Armin Novak 64c5d78b3f Fixed clang warnings. 2016-10-06 13:43:09 +02:00
Armin Novak 9fcfc38bd2 Fixed planar decoding. 2016-10-06 13:43:08 +02:00
Armin Novak e4d89067b2 Fixed splitting of color planes. 2016-10-06 13:43:04 +02:00
Armin Novak 35f1347d53 Fixed warnings and mac build. 2016-10-06 13:43:04 +02:00
Armin Novak 3f90966da6 Bug fixes. 2016-10-06 13:43:03 +02:00
Armin Novak 85bbe2a908 API refactoring. 2016-10-06 13:43:03 +02:00
Armin Novak e32ed83bf7 Updated interleaved and planar API. 2016-10-06 13:43:02 +02:00
Armin Novak 7d01fe14ce Fixed planar tests, deactivated them for clear 2016-10-06 13:43:00 +02:00
Armin Novak e1c3adf61f freerdp_image_copy fixes, 8bit color improvements. 2016-10-06 13:42:59 +02:00
Armin Novak 48d1b4ee13 Fixed color ordering for GDI. 2016-10-06 13:42:59 +02:00
Armin Novak b668b0d75e Api update. 2016-10-06 13:42:59 +02:00
Armin Novak 24599af991 More color fixes. 2016-10-06 13:42:58 +02:00
Armin Novak df35c135d1 Fixed color conversion, unified GFX and updated API. 2016-10-06 13:42:58 +02:00
Armin Novak 2e110c7f35 Fixed codec reset, now resetting resolution too.
H264 and others require the surface resolution to work properly.
This initializes the codecs and the resolution on reset.
2016-03-02 14:46:33 +01:00
David FORT 7c3f8f33ab Fixes for malloc / calloc + other fixes
This patch contains:

* checks for malloc return value + treat callers;
* modified malloc() + ZeroMemory() to calloc();
* misc fixes of micro errors seen during the code audit:
** some invalid checks in gcc.c, also there were some possible
integer overflow. This is interesting because at the end the data are parsed
and freed directly, so it's a vulnerability in some kind of dead code (at least
useless);
** fixed usage of GetComputerNameExA with just one call, when 2 were used
in misc places. According to MSDN GetComputerNameA() is supposed to return
an error when called with NULL;
** there were a bug in the command line parsing of shadow;
** in freerdp_dynamic_channel_collection_add() the size of array was multiplied
by 4 instead of 2 on resize
2015-06-22 19:21:47 +02:00
Armin Novak a295a42664 Prettiefied WLog messages. 2015-01-20 11:10:03 +01:00
Armin Novak 528c5841d5 Fixed memory leak. 2014-12-07 00:50:20 +01:00
Armin Novak 83477e5344 Fixed memory leak. 2014-11-17 01:10:45 +01:00
Marc-André Moreau 45b9a5454e libfreerdp-codec: improve compressor interfaces 2014-09-20 15:25:33 -04:00
Marc-André Moreau 2a5192b027 Merge branch 'master' of github.com:awakecoding/FreeRDP into egfx
Conflicts:
	client/Windows/wf_cliprdr.h
	client/Windows/wf_event.h
	client/X11/xf_client.c
	client/X11/xf_gdi.c
	libfreerdp/gdi/gdi.c
	server/Mac/mf_input.c
2014-09-17 19:09:56 -04:00
Marc-André Moreau 73471eb1f0 libfreerdp-gdi: fix 8bpp mode 2014-09-17 18:30:09 -04:00