Commit Graph

7016 Commits

Author SHA1 Message Date
Armin Novak
e05252cdea [codec,dsp] fix duplicate NULL checks 2026-02-18 13:24:50 +01:00
Armin Novak
72c4c14918 [gdi,shape] fix gdi_FillRect checks 2026-02-18 13:23:47 +01:00
Armin Novak
ab1675f2cb [gdi,graphics] fix gdi_Glyph_BeginDraw return checks 2026-02-18 13:15:56 +01:00
Armin Novak
cf86ec9ed0 [gdi] fix handling of empty regions
Do not abort if an empty update region is found, ignore it.
2026-02-17 16:38:36 +01:00
akallabeth
1b744c15fe Merge pull request #12319 from akallabeth/grow-reasonable
[allocations] fix growth of preallocated buffers
2026-02-17 15:23:17 +01:00
Armin Novak
118afc0b95 [allocations] fix growth of preallocated buffers
* Replace * 2 with * sizeof(WCHAR) for string usages
* Grow streams and other buffers reasonably, e.g. add 128 elements per
  try and check for possible overflows
* Add constant postfix to force them to 64bit
2026-02-17 13:54:34 +01:00
Armin Novak
df64d00a97 [warnings,api] fix -Wunused-result
With marking publid API [[nodiscard]] some problematic error checks in
the core library were uncovered. This commit addresses these
shortcomings.
2026-02-17 11:07:08 +01:00
Armin Novak
f3d23da0ae [codec,nsc] update function docs
* add doxygen for functions
* add support for scanline value 0
2026-02-17 09:15:33 +01:00
Armin Novak
169971607c [codec,nsc] fix use of nsc_process_message
the second width/height argument should reflect the destination buffer
pixel size
2026-02-17 08:38:04 +01:00
Armin Novak
24a23e3028 [codec,nsc] deprecate nsc_decompose_message
this function is just a wrapper around nsc_process_message with some
wStream handling around it. Since proper length checks are missing
deprecate it completely.
2026-02-17 08:32:39 +01:00
Armin Novak
caf6e7f2ec [codec,nsc] log decoder function parameter issues 2026-02-17 08:24:20 +01:00
Armin Novak
7d8fdce2d0 [codec,clear] fix destination checks
check against the correct nDstWidth/nDstHeight
2026-02-16 19:56:55 +01:00
Armin Novak
a0be5cb87d [codec,planar] fix missing destination bounds checks 2026-02-16 10:00:23 +01:00
akallabeth
a25b90adc2 Merge pull request #12311 from akallabeth/winpr-attr-nodiscard-fkt-ptr
Winpr attr nodiscard fkt ptr
2026-02-16 09:32:52 +01:00
Armin Novak
e0e6a7f800 [freerdp,warnings] properly handle function return 2026-02-16 09:18:37 +01:00
Armin Novak
13616cc67e [freerdp,codec] mark function pointers [[nodiscard]] 2026-02-16 09:18:35 +01:00
Armin Novak
f4d74c33fd [codec,nsc] bounds checks and doxygen
* Improve doxygen for nsc_process_message
* Improve bounds checks for nsc_process_message
2026-02-15 19:32:38 +01:00
Armin Novak
0746639629 [codec,clear] fix missing destination boundary checks 2026-02-15 19:19:07 +01:00
Armin Novak
361d73bc0e [core,settings] use WINPR_KBD_TYPE constants
To initialize FreeRDP_KeyboardType use WINPR_KBD_TYPE_IBM_ENHANCED
enum constant.
2026-02-15 19:18:54 +01:00
Armin Novak
65d59d3b3c [utils,smartcard] check stream length on padding
When reading optional padding in smartcard channel check if padding is
actually there.
2026-02-15 11:34:59 +01:00
Armin Novak
f5e20403d6 [codec,color] fix input length checks
* check cbBitsMask meets expected length
* Add logging for length failures
2026-02-13 19:39:21 +01:00
Armin Novak
9903e234e4 [core,gateway] fix sign warnings from tsg 2026-02-13 12:16:17 +01:00
Armin Novak
f0ee9d7b6f [core,test] fix use after free 2026-02-13 09:25:55 +01:00
Armin Novak
ccb79eb4d0 [core,test] make TestUtils verbose
* Add logging to TestUtils
2026-02-11 17:02:37 +01:00
Armin Novak
4542715e37 [core,test] Add definitions for TestUtils
The unit test needs some variables defined, ensure they are.
2026-02-11 16:46:48 +01:00
Armin Novak
1defc14055 [core,test] fix missing WITH_RESOURCE_VERSIONING 2026-02-11 09:56:55 +01:00
Armin Novak
f805a57b9d [utils,heplers] fix freerdp_getApplicationDetailsVersion 2026-02-10 19:27:44 +01:00
Armin Novak
e3981d8f02 [channels,rdpecam] fix integer types and warnings 2026-02-10 17:02:15 +01:00
Armin Novak
8d395b942b [primitives,test] replace sscanf 2026-02-10 16:56:49 +01:00
Armin Novak
af6e0e6241 [codec,test] replace fscanf in unit test 2026-02-10 16:38:19 +01:00
Armin Novak
e6252d191d [utils,http] replace sscanf 2026-02-10 16:38:15 +01:00
Armin Novak
79498a0d15 [common,assistance] remove extra braces 2026-02-10 15:53:04 +01:00
Armin Novak
82dbf58296 [core,settings] initialize settings with application details 2026-02-10 11:20:14 +01:00
Armin Novak
d9e81aed22 [core,smartcardlogon] use freerdp_getApplicationDetailsString 2026-02-10 11:20:13 +01:00
Armin Novak
baf31336a8 [utils,helpers] add freerdp_getApplicationDetailsString 2026-02-09 19:55:48 +01:00
Martin Fleisz
e4794883d1 Merge pull request #12283 from akallabeth/gw-relax
[core,gateway] relax TSG parsing
2026-02-09 10:40:30 +01:00
Armin Novak
5f958d5edf [core,gateway] relax TSG parsing
* Relax 2.2.9.2.1.5 TSG_PACKET_RESPONSE::responseDataLen checks, ignore
  padding data.
* Add stringification for TSG version caps
* Add log messages for caps
2026-02-09 10:19:36 +01:00
akallabeth
043179f916 [core,test] add utils tests
Add unit tests for getter/setter of freerdp_setApplicationDetails
2026-01-29 22:47:47 +01:00
Armin Novak
39e33d9e9d [utils,helpers] add application details getter/setter
* Allow an application to set a vendor/product/version namespace to search
  for configuration files/settings/...
* Replace all FREERDP_VENDOR_STRING and similar macros with these
  getters.
2026-01-29 22:47:45 +01:00
akallabeth
fe7c5ab7e9 [core,settings] improve rdpMonitor log
stringify the orientation value in the log message.
2026-01-29 22:06:34 +01:00
Jonas Ådahl
4ea803134e peer: Disconnect if Logon() returned FALSE
Returning FALSE implies the client was not authorized, but it does not
have any real impact on the connection, other than setting the
authorized field.

Change this by disconnecting the client if a Logon() callback returned
that a client was not authorized.
2026-01-27 19:39:42 +01:00
Armin Novak
92fde0f6b3 [gdi] add additional checks for a valid rdpGdi
some client implementations do not properly set up the gdi, so abort
gracefully.
2026-01-27 15:07:10 +01:00
akallabeth
076a8386a6 Merge pull request #12186 from akallabeth/error-handling-fixes
Error handling fixes
2026-01-26 17:05:19 +01:00
akallabeth
7990eec166 [freerdp] mark all WINPR_ATTR_MALLOC also nodiscard 2026-01-26 13:39:39 +01:00
akallabeth
3f163cee9c [warnings] fix unused result warnings 2026-01-26 13:22:24 +01:00
akallabeth
ec4c4ee5a3 [channels,rdpei] refactor variable names 2026-01-26 11:09:53 +01:00
akallabeth
5013b28e8b Merge pull request #12171 from jadahl/wip/ntlm-kerberos-package-info
Add support for querying SECPKG_ATTR_PACKAGE_INFO to NTLM and Kerberos
2026-01-25 17:04:48 +01:00
akallabeth
eb83f339b4 [channels,rdpdr] flag definition and stringify
* Use a enum to define RDPDR_DTYP_* constants
* Add public API freerdp_device_type_string for stringify
* Add WINPR_ATTR_NODISCARD in rdpdr_utils.h
2026-01-25 09:15:05 +01:00
akallabeth
09ae30a0f9 [core,settings] define OrderSupport flags and stringify
* Define OrderSupportFlags as enum
* Add public API stringify function
2026-01-25 09:14:59 +01:00
akallabeth
6673e8a86f [core,utils] add freerdp_input_touch_state_string
* Add freerdp_input_touch_state_string
* Remove duplicate from xfreerdp
2026-01-25 09:00:03 +01:00