Armin Novak
7485c01a8c
[freerdp,API] fix broken deprecation declarations
2026-03-03 17:15:10 +01:00
Armin Novak
eba2bf463c
[channels,rail] refactor server side functions
...
* proper error handling
* use [[nodiscard]]
2026-03-03 09:12:35 +01:00
Armin Novak
cc5f1bbb82
[server,proxy] check for nullptr before using scard_call_context
...
* Make smartcard_call_cancel_all_context return FALSE if a NULL context
is supplied.
* Do not call smartcard_call_context_signal_stop if the context is NULL
2026-03-02 09:45:27 +01:00
akallabeth
4ebe580c57
Merge pull request #12380 from mfleisz/new-logonerrinfo-define
...
[libfreerdp] Add new define for logon error info
2026-02-26 14:33:27 +01:00
Martin Fleisz
5146a13587
[libfreerdp] Add new defines for logon error info
2026-02-26 14:17:18 +01:00
Armin Novak
65399661c4
[c23,api] replace NULL with nullptr
2026-02-26 14:03:05 +01:00
Armin Novak
e58819830a
[c23] simplify boolean checks
2026-02-26 11:51:05 +01:00
Armin Novak
0531803808
[warnings] make function declaration names consistent
...
Use the same parameter names for declaration and implementation.
2026-02-26 10:35:25 +01:00
Armin Novak
e9723d1b61
[attributes] update attribute definitions
...
* support C++
* support C23
* replace __inline et al with C11 inline
2026-02-25 11:51:11 +01:00
Armin Novak
8016117eb7
[codec,dsp] fix warnings
2026-02-25 10:20:02 +01:00
Armin Novak
378265afcf
[freerdp,metrics] add missing includes
2026-02-25 07:43:40 +01:00
Armin Novak
8a24443ed6
[nodiscard] fix wrong attribute position
2026-02-24 16:10:11 +01:00
Armin Novak
20a24fe36e
[freerdp,api] mark API functions [[nodiscard]]
...
Mark (most) of the API functions returning a value [[nodiscard]]. This
will assist application developers spotting bad return checks.
2026-02-17 10:23:34 +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
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
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
6a1cc0f031
[freerdp,api] mark function pointers [[nodiscard]]
2026-02-16 09:18:30 +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
8c0b07ab78
[include] provide invalid 0 entry for enum values
...
Some enum values have no valid 0 entry producing warnings when
initializing a struct with { 0 }. Add an *_Invalid entry to these to
explicitly mark that value invalid and define it for use.
2026-02-10 15:53:06 +01:00
Armin Novak
baf31336a8
[utils,helpers] add freerdp_getApplicationDetailsString
2026-02-09 19:55:48 +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
Armin Novak
0a8ab5724d
[utils] fix typo in doxygen
2026-01-29 22:06:55 +01:00
akallabeth
067524438a
[channels,rdpecam] fix PROPERTY_DESCRIPTION parsing
...
* The Capabilities field is a mask, so allow combination of all valid
values.
* Adjust header to hold a mask
* Use enum to define constants for parsed values
2026-01-28 08:42:08 +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
akallabeth
08415bda4d
[settings] mark functions [[nodiscard]]
...
* All getters marked (obviously only required to get the value)
* Copy and parser functions marked (invalid state if they fail)
2026-01-26 13:39:42 +01:00
akallabeth
7990eec166
[freerdp] mark all WINPR_ATTR_MALLOC also nodiscard
2026-01-26 13:39:39 +01:00
akallabeth
7bbf3be7e6
[streamdump] mark WINPR_ATTR_NODISCARD
2026-01-26 13:22:25 +01:00
akallabeth
3170a21418
[utils] add WINPR_ATTR_NODISCARD
...
* Add WINPR_ATTR_NODISCARD to functions returning a value
* Add some missing WINPR_ATTR_MALLOC
2026-01-26 13:22:23 +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
7d943a9c21
[documentation] fix a few doxygen warnings
2026-01-25 09:38:33 +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
akallabeth
d4ae1a546f
[client,common] add FREERDP_TOUCH_CANCEL
...
* Add flag FREERDP_TOUCH_CANCEL
* Add function freerdp_handle_touch_cancel
2026-01-25 08:56:03 +01:00
akallabeth
a8ca59e290
[channels,disp] Unify definitions and add stringify
...
* Unify FreeRDP_DesktopRotationFlags definitions (needed in settings
and display channel)
* Add stringify function for the flags
2026-01-25 08:55:58 +01:00
akallabeth
089758f967
[crypto] adjust deprecation warning
...
due to new API functions next release will be 3.22.0
2026-01-25 07:35:08 +01:00
Jonas Ådahl
e6aa564bd7
Add freerdp_nla_FreeContextBuffer()
...
This function should be used to free certain buffers retrieved using
freerdp_nla_QueryContextAttributes(). It fetches the right vfunc table
to call into, which typically ends up in sspi_FreeContextBuffer() in
sspi_winpr.c.
This is needed to allow querying the PackageInfo attribute.
2026-01-22 12:50:24 +01:00
Armin Novak
01e1f1b595
[crypto] deprecate er and der modules
...
These are unused and not well tested, mark them deprecated to announce
removal once FreeRDP 4 is released.
2026-01-21 16:41:25 +01:00
akallabeth
3bc1eeb4f6
[codec,color] add freerdp_glyph_convert_ex
...
The function freerdp_glyph_convert does not check input buffer length,
deprecate it and provide a replacement that does properly check.
2026-01-16 12:09:26 +01:00
Armin Novak
684ddeb168
[utils,rdpdr] add RDPDR_CAPS_IRP_MJ stringify functions
2026-01-15 13:05:15 +01:00
akallabeth
9fc9181473
[core,codecs] fix freerdp_codec_id_to_str
...
Use UINT32 as argument instead of enum RDP_CODEC_ID as the value might
be an invalid value in the enum.
2026-01-09 09:24:31 +01:00
akallabeth
9e32181a54
[channels,rdpdr] FILE_DIRECTORY_INFORMATION::FileName as WCHAR
2025-12-12 19:26:52 +01:00
David Fort
65bb6c59fc
rdpear: handle basic NTLM commands and fix server-side
...
This patch adds the handling of basic NTLM commands. Because there's some mysterious
4 zero bytes after pickle header in Kerberos packets, not present in NTLM commands, the
patch also had to rework a bit the packet parsing / forging.
The patch also addresses a server-side bug when parsing supplemental creds, if the client
was sending an empty list, we were considering this as an error.
And finally we also implement the parsing of MSV1_0_REMOTE_SUPPLEMENTAL_CREDENTIAL.
This breaks the public API, anyway this was basically unused (as not parsed before) and
the previous API was wrong as what we receive is MSV1_0_REMOTE_SUPPLEMENTAL_CREDENTIAL
not MSV1_0_SUPPLEMENTAL_CREDENTIAL, so I guess the API breakage is ok.
2025-12-04 11:31:09 +01:00
David Fort
8df50f44b6
Fix remote credential guard channel loading
...
This patch fixes the loading of the RCG channel. It also adds a guard so the
/remoteGuard cmdline doesn't work if the channel is not built in.
2025-12-01 18:13:05 +01:00
akallabeth
c632a703df
[core,input] Add debug log to keyboard state sync
2025-11-18 14:26:45 +01:00
akallabeth
ce87165719
[c,attributes] mark functions with attirbute malloc
2025-11-07 11:20:39 +01:00
akallabeth
c8698a1b9c
[core,settings] add new keys for gateway
...
Add missing settings:
* FreeRDP_GatewayHttpReferer
* FreeRDP_GatewayHttpUserAgent
* FreeRDP_GatewayHttpMsUserAgent
2025-10-28 11:13:52 +01:00
akallabeth
fc2ae4cf41
[core,codecs] add stringify helper
...
add freerdp_codec_id_to_str to get a string representation of a given
codec id
2025-10-06 08:41:18 +02:00
Armin Novak
4aceae4666
[codec,color] Add from string method for PIXEL_FORMAT
...
* Add FreeRDPGetColorFromatFromName to get a PIXEL_FORMAT from a given
string.
* Add a unit test to ensure FreeRDPGetColorFromatFromName and
FreeRDPGetColorFormatName work as expected
2025-09-30 13:17:26 +02:00
Armin Novak
64b67c938c
[utils] fix doxygen for freerdp_passphrase_read
2025-09-30 10:15:43 +02:00