Armin Novak
602fb7d788
Added missing bounds check.
...
(cherry picked from commit 2e6069d95b
)
2021-03-12 11:22:12 +01:00
Armin Novak
bd3f9cfd9f
Added fuzzying test for planar decoder
...
(cherry picked from commit 9bbc2cd094
)
2021-03-12 11:22:12 +01:00
Armin Novak
048aca5cce
Compatibility changes
...
Renamed symbols and added wrappers to keep API compatible with
2.0 branch.
2021-02-25 09:51:41 +01:00
Vic Lee
f2d09e6eb0
progressive: fix multiple regions in one gfx frame.
...
(cherry picked from commit 7f94095a06
)
2021-02-25 09:51:41 +01:00
Nathan Loewen
d2b684ff40
let freerdp_image_scale() determine step size
...
(cherry picked from commit cba6181154
)
2021-02-25 09:51:41 +01:00
akallabeth
0195aac2ea
Respect invalidRegion in progressive_compress
...
(cherry picked from commit 4a7ec674e6
)
2021-02-25 09:51:41 +01:00
akallabeth
1a4c1de6a8
Fixed progressive decoding without subbanddiff
...
(cherry picked from commit e3445eefab
)
2021-02-25 09:51:41 +01:00
akallabeth
84693e93b6
Cleaned up rfx API
...
(cherry picked from commit 25a8abc4eb
)
2021-02-25 09:51:41 +01:00
Armin Novak
cbf2a59dd9
Fixed unit tests run under memory sanitizer
...
(cherry picked from commit 816e792e3f
)
2021-02-25 09:51:41 +01:00
Armin Novak
8d62ec233d
Fixed const correctness of RECTANGLE_16 variable
...
(cherry picked from commit 9549d090ab
)
2021-02-25 09:51:41 +01:00
Armin Novak
847de7f4ae
Fix ColorFidelity use
...
(cherry picked from commit 8187ab7732
)
2021-02-25 09:51:41 +01:00
akallabeth
db20214c1f
Backported #6670 : Progressive decoding of subbanddiff
...
Properly decode tiles without subbanddiff so connections with
xfreerdp /gfx /v:<foo> work with ogon and the required progressive
codec is correct.
2020-12-15 17:00:22 +01:00
Fabio Fantoni
99ebaacda6
remove unwanted log level set to debug in rfx
...
I saw on debian packages (that have -DWITH_DEBUG_ALL=ON) remotefx logs always to
debug without respect log-level and log-filters settings making diffult
debugging of issue on other parts.
After a search I found this that set loglevel to debug that akallabeth confirmed
is unwanted, this patch remove it.
Closes #6606
(cherry picked from commit f3e5ebe315
)
2020-12-01 15:10:23 +01:00
Armin Novak
6004eefec5
Fixed missing input length check for color pointer.
...
(cherry picked from commit 47d02a76ce
)
2020-12-01 15:10:23 +01:00
Armin Novak
e805752c4e
Fixed compilation warnings.
...
(cherry picked from commit 57b405ca26
)
2020-12-01 15:10:23 +01:00
akallabeth
cb03d8701d
Filter GSM codec for microphone redirection
...
(cherry picked from commit c5984ff811
)
2020-07-06 11:13:26 +02:00
Pascal Nowack
b898786263
nsc: Fix memory leak
...
Fixes the following memory leak:
==115716== 16,662,960 bytes in 459 blocks are definitely lost in loss record 3,504 of 3,504
==115716== at 0x48396AF: malloc (vg_replace_malloc.c:306)
==115716== by 0x4C6A4E2: nsc_context_initialize_encode (nsc_encode.c:77)
==115716== by 0x4C6A4E2: nsc_compose_message (nsc_encode.c:497)
(cherry picked from commit 9bd4574050
)
2020-06-29 08:13:05 +02:00
akallabeth
6780420343
Fixed out of bound read in RLEDECOMPRESS
...
CVE-2020-4033 thanks to @antonio-morales for finding this.
(cherry picked from commit 0a98c450c5
)
2020-06-22 12:13:13 +02:00
akallabeth
072b3d9a00
Fixed #6267 : adjust write_pixel_16 endian handling
...
(cherry picked from commit 51d3e07c8a
)
2020-06-16 09:09:11 +02:00
Kobi Mizrachi
6e87805869
codec: fix typo in progressive codec log
...
(cherry picked from commit 8d72051ab1
)
2020-05-20 15:41:24 +02:00
akallabeth
cf4f6dbf3f
Fixed multiple sanitizer errors in codecs
...
(cherry picked from commit 2278d92a5d902692a7d1088629b2345c9b4e229c)
2020-05-20 15:41:24 +02:00
akallabeth
2e28385fbb
Fixed history buffer reset.
...
(cherry picked from commit ccc9cbef2d5d0d9f5cf5ec7621f71bed33f41aba)
2020-05-18 17:10:01 +02:00
akallabeth
11c6ed0fb7
Fixed undefined behaviour in ncrush
...
(cherry picked from commit 83137d2a1bb732fbea2f20778924a50a79f63fef)
2020-05-18 17:10:01 +02:00
akallabeth
f25c2f265e
Fixed undefined behaviour in rfx decoder
...
(cherry picked from commit ef611d34d61c6590429c17db5c97f0a9a33147e8)
2020-05-18 17:10:01 +02:00
akallabeth
37158cd17f
Fixed UndefinedBehaviour in planar left shift
...
(cherry picked from commit 328691c46597c194f01a77a9d33d58b2faa88c9d)
2020-05-18 17:10:01 +02:00
akallabeth
96621d4f45
Always require aligned memory for interleaved codec.
...
(cherry picked from commit 20c11fb7178462a8ba36b4fdbfb3e2a03197356f)
2020-05-18 17:10:00 +02:00
Vladyslav Hordiienko
11eb374ef4
improve RFX DWT algorithm
...
merge multiple loops into the one loop for vertical DWT inverse
(cherry picked from commit fff9eba34a
)
2020-05-18 16:56:03 +02:00
akallabeth
e35d06f6e1
Fixed oob read in rfx_process_message_tileset
...
Check input data length
Thanks to hac425 CVE-2020-11043
2020-05-05 07:46:10 +02:00
akallabeth
32f705e597
Fixed oob read in clear_decompress_subcode_rlex
...
Fixed length checks before stream read.
Thanks to hac425 CVE-2020-11040
2020-05-05 07:46:10 +02:00
akallabeth
13dac0ee2a
Fixed possible int overflow.
2020-05-05 07:46:10 +02:00
akallabeth
5d56937e20
Workaround #6072 : FFMPEG AAC encoding graded experimental
...
Due to many reporing issues with different AAC encoder configurations
deactivate support by default. Can be enabled by compiling with
experimental codec support.
2020-05-05 07:46:09 +02:00
Raul Fernandes
54c902b3b5
Optimize function xcrush_copy_bytes()
...
Use memcpy to copy the bytes when we can assure that the memory areas does not overlap.
When the areas overlap, copy the area that doesn't overlap repeatly.
With this change, the copy is ~30x faster.
2020-05-05 07:46:09 +02:00
akallabeth
cfc0d060c6
Refactored freerdp_image_copy_from_pointer_data
...
Split monochrome and color pointer handling to separate functions.
2020-04-28 14:03:19 +02:00
Raul Fernandes
4df7200836
Cache the calculated color
...
In desktop area, the next color has high odds to be the same of previous color.
If we cache the value, it can be reused by the next pixel avoiding recalculation.
This optimization can halve the function's processing.
2020-04-28 14:03:19 +02:00
akallabeth
cc6831ae31
Moved PROGRESSIVE_BLOCK_REGION to heap.
2020-04-28 14:03:19 +02:00
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
akallabeth
7b1d4b4939
Fix CVE-2020-11524: out of bounds access in interleaved
...
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
c0bf6c0768
working progressive Original Method DWT
...
Implemented decoding utilizing Original Method DWT
(See [MS-RDPEGFX] 3.2.8.1.2.2 Reduce-Extrapolate Method)
2020-02-18 11:13:52 +01:00
Armin Novak
1fa00c4318
Refactored progressive codec.
2020-02-18 11:13:52 +01:00
Armin Novak
c92bbb37f5
Fixed NULL dereference.
2020-01-23 10:12:12 +01:00
Armin Novak
b0b81af8b8
Fixed #5839 : Use correct pointer to cast.
2020-01-16 09:53:57 +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
71feb974ac
Merge pull request #5739 from akallabeth/improve_function_hiding
...
Improve function hiding
2019-12-02 11:31:35 +01:00
Armin Novak
7c243da6e1
Remove symbols exported by accident.
2019-12-02 10:57:31 +01:00
David Fort
5f0943f0fe
primitives: add openCL support
...
This patch adds the basic infrastructure to have openCL acceleration.
For now only YUV2RGB is implemented but other operations could be
implemented.
The primitives have been massively reworked so that we have an autodetect
mode that will pick the best implementation automatically by performing a
benchmark.
Sponsored-by: Rangee Gmbh(http://www.rangee.com )
2019-11-22 13:21:39 +01:00
Armin Novak
68ed1276c2
MPPC_CONTEXT now opaque
2019-11-14 15:16:36 +01:00