akallabeth
07acfed668
[codec,color] add freerdp_image_copy test case
2024-05-27 10:00:12 +02:00
akallabeth
e9b5555652
[codec,color] inline functions used internally
...
for freerdp_image_copy inline all functions that are used to speed up
copying.
2024-05-27 09:52:09 +02:00
akallabeth
5fe0c5f9fc
[codec,color] check for image_copy widht or height 0
2024-05-25 09:17:13 +02:00
akallabeth
53d8e0f203
[crypto,tls] fix missing return
2024-05-25 09:17:06 +02:00
akallabeth
ef4e6ee2c9
[common,settings] add GfxSuspendFrameAck
2024-05-24 11:51:56 +02:00
akallabeth
e253d78053
Merge pull request #10208 from akallabeth/image_copy_improve
...
Image copy improve, bugfixes
2024-05-24 09:01:00 +02:00
akallabeth
776a7b727f
[core,gcc] clear multitransport
...
if the client does not send a multitransport capability clear the flags.
2024-05-23 14:48:41 +02:00
akallabeth
ef86df9a26
[crypto,tls] log BIO_do_handshake errors
...
add proper logging to make details of failures auditable
2024-05-23 14:48:39 +02:00
akallabeth
1b3f3a0408
[codec,color] expose freerdp_image_copy (no)overlap
...
expose functions for overlapping and non overlapping images to use
directly
2024-05-23 14:48:36 +02:00
akallabeth
1a58e74c17
[codec,color] freerdp_image_copy_no_overlap
...
use single memcopy if possible to speed up copy
2024-05-23 14:48:33 +02:00
akallabeth
afde527120
[gdi,gfx] unify updatesurfaces calls
2024-05-23 14:26:17 +02:00
David Fort
3147df8486
[core] fix clientInfo with both dynamicTimeZone and reconnect cookie
...
The ClientInfo packet was wrongly forged when we had dynamic timezone and a
reconnect cookie (reserved fields written twice).
2024-05-23 12:32:10 +02:00
akallabeth
5ca17aa8f3
[core,streamdump] use dynamic logger
...
* Decrease logging verbosity of streamdump
* Fix namespace of logger
* Use dynamic preallocated logger
2024-05-21 11:41:59 +02:00
akallabeth
8d5c5dc2ef
[core,caps] Allow invalid TS_GENERAL_CAPABILITYSET::protocolVersion
...
some FreeRDP versions did send an invalid value of 0x0000 instead of the
required 0x200. Log this kind of violation but continue.
2024-05-20 15:13:12 +02:00
akallabeth
470ef43da2
[core,streamdump] implement nodelay
...
allow records to be played without delay making them faster than
originally recorded
2024-05-17 10:36:22 +02:00
akallabeth
d545509f72
[settings] add TransportDumpReplayNodelay
2024-05-17 10:10:02 +02:00
akallabeth
3ced20ec5b
[core,streamdump] reset stream if packet discarded
...
* in stream_dump_replay_transport_read function discard previously
read data if it was discarded.
* stream_dump_register_read_handlers needs to set
freerdp_io_callback_set_event as otherwise we would block indefinitely
waiting for the first data read to occur.
2024-05-17 10:04:07 +02:00
Ondrej Holy
9aca06e0b7
[core,gateway] always return in case of error
...
Currently, the `arm_handle_bad_request` function returns `FALSE` when the
`cJSON_ParseWithLength` function fails to parse the message, but only when
the `cJSON_GetErrorPtr` returns a valid pointer. It would be better to
return regardless of the `cJSON_GetErrorPtr` return value.
2024-05-16 11:56:03 +02:00
akallabeth
8bdf92ca52
[utils] link m library if required
2024-05-14 20:45:38 +02:00
akallabeth
aaded541d9
[core,client] replace cJSON with WinPR wrapper
...
use the new WinPR JSON wrapper API
2024-05-14 20:45:31 +02:00
akallabeth
1efefceb5c
[core,settings] refactor /network
...
* add CONNECTION_TYPE_INVALID
* default to CONNECTION_TYPE_AUTODETECT
* allow /network:invalid and /network:0 to disable
2024-05-14 11:18:29 +02:00
akallabeth
a1d8754f1f
[core,autodetect] abort on unexpected message.
2024-05-14 11:07:50 +02:00
Armin Novak
e272eb3966
[warnings] fix Wshadow warnings
2024-05-08 15:30:01 +02:00
Armin Novak
47ac961cb9
[core,settings] initialize DynamicDSTTimeZoneKeyName
2024-05-08 10:08:08 +02:00
akallabeth
ef83633c01
[codec,nsc] length checks in nsc_rle_decompress_data
2024-04-26 09:26:07 +02:00
akallabeth
d5f8b337c4
[codec,nsc] add restrict keyword
2024-04-26 09:26:07 +02:00
Armin Novak
e9bfd585ae
[core,capabilities] ensure ImeFileName is '\0' terminated
2024-04-25 10:27:58 +02:00
Armin Novak
e37acf08b5
[core,redirection] free redirection::TargetNetAddresses
...
during some testcases the packet can be received on already allocated
TargetNetAddresses. So clean up the field before reusing it.
2024-04-25 10:27:58 +02:00
Armin Novak
c909253b11
[core,info] check '\0' termination after length check
2024-04-25 10:27:58 +02:00
Armin Novak
c2e899b6df
[core,fuzzer] fix testcases
...
rdp_recv_save_session_info is a client side only function, remove from
server side tests
2024-04-24 15:55:30 +02:00
Armin Novak
b757276034
[core,redirection] fix reading of TargetNetAddressesCount
...
read to local variable first, check for validity and only after
allocation update the settings value.
2024-04-24 15:55:30 +02:00
Armin Novak
4ce4a6d3fb
[codec,clear] check destination offsets
...
clear_decompress_subcodecs_data might have inavlid offsets, check if
they fit the destination buffers
2024-04-24 15:55:30 +02:00
akallabeth
3fe9363592
[core,capabilities] abort on invalid protocolVersion
...
* TS_GENERAL_CAPABILITYSET::protocolVersion must be
TS_CAPS_PROTOCOLVERSION(0x200) see [MS-RDPBCGR] 2.2.7.1.1
General Capability Set (TS_GENERAL_CAPABILITYSET)
* Default value of FreeRDP_CapsProtocolVersion must be
TS_CAPS_PROTOCOLVERSION(0x200)
2024-04-23 17:13:13 +02:00
Мартынов Максим Сергеевич
890d87f81a
Fix protocolVersion capability reset
2024-04-23 16:03:30 +02:00
akallabeth
fc21b82880
[core,timezone] initialize ClientTimeZone early
...
Initialize ClientTimeZone in freerdp_settings_new to allow replacing the
default later on in command line parser or client connection callbacks
2024-04-23 09:54:52 +02:00
akallabeth
1d6460c5f7
[core,redirection] add sanity check for TargetNetAddress
...
Abort on implausible TargetNetAddressLength values. (check remaining
data length to determine that)
2024-04-23 09:40:36 +02:00
akallabeth
449e8b82f1
[core,capabilities] check TS_BITMAPCACHE_CAPABILITYSET_REV2
...
Check value of TS_BITMAPCACHE_CAPABILITYSET_REV2::numCellCaches for out
of range.
2024-04-23 09:40:36 +02:00
Ondrej Holy
73991c48ce
[winpr,ncrypt] obtain module path from provider
...
Currently, the module path is hardcoded in the build_pkinit_args function.
Let's obtain the module path from provider as a preparation for the
follow-up changes.
2024-04-22 17:42:52 +02:00
akallabeth
8b616f4fad
[core,capabilities] ensure destination array exists
...
ensure the destination array in rdpSettings is large enough to hold the
copy.
2024-04-22 17:41:46 +02:00
akallabeth
703808591e
[ci,fuzzer] split fastpath tests
...
use dedicated server and client context to test the functions
2024-04-22 11:02:04 +02:00
akallabeth
5b4e39fd7e
[core,orders] shift unsigned value
...
The delta value read is signed, but the operations are done on an
unsigned.
2024-04-22 11:02:04 +02:00
akallabeth
cb15c1c78a
[core,update] fix missing plausibility check
...
abort parsing of cache brush if not enough data is available.
2024-04-22 11:02:04 +02:00
akallabeth
626d10a94a
[core,redirection] fix length of redirection strings
...
length field is in bytes, when converting from UCS-2 use size in WCHAR
2024-04-22 11:02:04 +02:00
akallabeth
a6320dc6b7
[ci,fuzzer] run read functions as client and server
2024-04-22 09:30:36 +02:00
akallabeth
71e463e31b
[core,info] fix missing check in rdp_write_logon_info_v1
2024-04-21 14:28:24 +02:00
akallabeth
48013d75fc
[core,test] add fuzzer for receive functions
2024-04-21 14:28:24 +02:00
akallabeth
a95426e7c4
[core,update] return if gdi is NULL
2024-04-21 14:28:24 +02:00
akallabeth
db09d1d7f8
[core,update] fix leak on error termination
2024-04-21 14:28:24 +02:00
akallabeth
7f9c5d84ad
[core,peer] assert size of peer context
2024-04-21 14:28:24 +02:00
akallabeth
6430945ce0
[codec,color] fix out of bound read
2024-04-21 11:00:47 +02:00