[channels,rail] refactor server side functions

* proper error handling
* use [[nodiscard]]
This commit is contained in:
Armin Novak
2026-03-03 08:35:15 +01:00
parent 98eb11b253
commit eba2bf463c
3 changed files with 198 additions and 236 deletions

View File

@@ -149,6 +149,9 @@ UINT rail_read_handshake_order(wStream* s, RAIL_HANDSHAKE_ORDER* handshake)
void rail_write_handshake_order(wStream* s, const RAIL_HANDSHAKE_ORDER* handshake)
{
WINPR_ASSERT(s);
WINPR_ASSERT(handshake);
WINPR_ASSERT(Stream_EnsureRemainingCapacity(s, 4));
Stream_Write_UINT32(s, handshake->buildNumber); /* buildNumber (4 bytes) */
}
@@ -169,6 +172,10 @@ UINT rail_read_handshake_ex_order(wStream* s, RAIL_HANDSHAKE_EX_ORDER* handshake
void rail_write_handshake_ex_order(wStream* s, const RAIL_HANDSHAKE_EX_ORDER* handshakeEx)
{
WINPR_ASSERT(s);
WINPR_ASSERT(handshakeEx);
WINPR_ASSERT(Stream_EnsureRemainingCapacity(s, 8));
Stream_Write_UINT32(s, handshakeEx->buildNumber); /* buildNumber (4 bytes) */
Stream_Write_UINT32(s, handshakeEx->railHandshakeFlags); /* railHandshakeFlags (4 bytes) */
}
@@ -471,11 +478,6 @@ UINT rail_read_sysparam_order(wStream* s, RAIL_SYSPARAM_ORDER* sysparam, BOOL ex
return error;
}
/**
* Function description
*
* @return 0 on success, otherwise a Win32 err2or code
*/
UINT rail_write_sysparam_order(wStream* s, const RAIL_SYSPARAM_ORDER* sysparam,
BOOL extendedSpiSupported)
{

File diff suppressed because it is too large Load Diff

View File

@@ -145,7 +145,6 @@ extern "C"
FREERDP_API void rail_server_context_free(RailServerContext* context);
WINPR_ATTR_MALLOC(rail_server_context_free, 1)
WINPR_ATTR_NODISCARD
FREERDP_API RailServerContext* rail_server_context_new(HANDLE vcm);
WINPR_ATTR_NODISCARD