Commit Graph

3511 Commits

Author SHA1 Message Date
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
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
71e78bedd7 [warnings] fixed sign and const
* fix various char/BYTE sign warnings
* fix various const warnings
* fix format string size_t
* remove unused CMake variables
2024-04-18 11:05:58 +02:00
Armin Novak
28e9094f08 [gcc] fix missing malloc warning macros
* Add missing WINPR_ATTR_MALLOC
* Add missing WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
2024-04-17 18:47:16 +02:00
akallabeth
f3b2aea781 [cmake] add fuzzer tests
tests imported from https://github.com/ergnoorr/fuzzrdp

reported by Evgeny Legerov of Kaspersky Lab.
2024-04-16 13:06:22 +02:00
Armin Novak
09f679da61 [coverity] 1543075 Explicit null dereferenced 2024-04-15 11:30:31 +02:00
akallabeth
0c9fb50170 [coverity] fix unchecked return 2024-04-12 13:30:35 +02:00
akallabeth
f264cc729c [coverity] 1543240 Dereference before null check 2024-04-12 12:41:42 +02:00
akallabeth
be4fb7f6dd [coverity] 1543187 Dereference before null check 2024-04-12 12:41:42 +02:00
akallabeth
600c7a8999 [coverity] 1543080 Dereference before null check 2024-04-12 12:41:42 +02:00
akallabeth
d18585b8cc [coverity] 1543058 Dereference before null check 2024-04-12 12:41:42 +02:00
akallabeth
f81ff8c495 [coverity] 1543141 Dereference null return value 2024-04-12 12:41:42 +02:00
akallabeth
7bf76ab67f [coverity] 1543039 Use of 32-bit time_t 2024-04-12 12:41:42 +02:00
akallabeth
f0cc78fe1a [coverity] 1047683 Unchecked return value from library 2024-04-12 12:41:42 +02:00
akallabeth
1466d70dbc [coverity] null checks 2024-04-12 09:45:09 +02:00
akallabeth
2477b37128 [warnings,types] fix BOOL assingments 2024-04-12 09:45:09 +02:00
akallabeth
5862537471 [coverity] 1543139 Resource leak 2024-04-12 09:45:09 +02:00
akallabeth
dc488c5e23 [coverity] 1543148 Resource leak 2024-04-12 09:45:09 +02:00
akallabeth
285bea320d [coverity] 1543217 Resource leak 2024-04-12 09:45:09 +02:00
akallabeth
8d9244cb3d [coverity] 1543259 Resource leak 2024-04-12 09:45:09 +02:00
akallabeth
d3eb93f2ec [coverity] 1543248 Resource leak 2024-04-12 09:45:09 +02:00
akallabeth
cf5df96c14 [coverity] 1543228 Out-of-bounds read 2024-04-12 09:45:09 +02:00
akallabeth
da85ec371c [coverity] 1543065 Resource leak 2024-04-12 09:45:09 +02:00
akallabeth
18b4c59d17 [coverity] 1543107 Resource leak 2024-04-11 12:04:07 +02:00
akallabeth
2fefc29249 [coverity] 1543164 Free of address-of expression 2024-04-11 12:04:07 +02:00
akallabeth
1affbd0655 [coverity] 1543285 Resource leak 2024-04-11 12:04:07 +02:00
akallabeth
1e325dc2de [core,settings] add missing autoreconnect option
Split settings, there was a double use for AutoReconnectEnabled.
AutoReconnectEnabled is a setting responsible for client side
autoreconnection.
AutoReconnectPacketSupported is a flag set by the server to announce
support for AutoReconnectPacket allowing fast reconnect.
2024-04-11 11:19:18 +02:00
akallabeth
0905796cd7 [core,gateway[ fix use after free 2024-04-06 09:17:17 +02:00
Ilya Shipitsin
309509808c libfreerdp/core/gateway/rdg.c: handle malloc failure 2024-04-05 09:59:12 +02:00
Armin Novak
1b7e0ffb97 [core,smartcard] allow userhint to match UPN
the username might match the UPN of the smartcard certificate. If not
fall back to compare to userHint
2024-04-04 14:05:39 +02:00
akallabeth
82dc655979 [core,gateway] improve warning for bad request
In case of E_PROXY_ORCHESTRATION_LB_SESSIONHOST_DEALLOCATED print a
warning with the message body or a generic fallback should that not be
provided.
2024-03-26 09:19:45 +01:00