Commit Graph

18741 Commits

Author SHA1 Message Date
akallabeth 3bba61bdf4 [utils,encoded_types] fix read/write, add limits
* fix read and write limits of four byte signed integers
* add definitions for value range MIN and MAX
2024-03-18 08:41:17 +01:00
akallabeth d919a9e8e7 [utils,test] add TestEncodedTypes 2024-03-18 08:41:17 +01:00
akallabeth 473fbcf51d [channels,location] fix send pdu size 2024-03-18 08:41:17 +01:00
akallabeth 8fb421dd3a [channels,rdpecam] add client channel stub 2024-03-18 08:41:17 +01:00
Armin Novak 35430cf191 [channel,client] update channel pointer
in generic_on_new_channel_connection set the channel pointer to the
current value.
2024-03-14 16:05:51 +01:00
Armin Novak 98aeb54e83 [channel,location] fix broken length check 2024-03-14 16:05:51 +01:00
akallabeth 8df13033d5 start 3.4.1-dev0 cycle 2024-03-14 11:28:33 +01:00
akallabeth 708f376489 release-3.4.0 2024-03-14 11:28:33 +01:00
akallabeth 140bc949d9 changelog 3.4.0 2024-03-14 11:28:33 +01:00
akallabeth c591c2cd26 [pkg-config] add private optional link libraries 2024-03-14 10:35:03 +01:00
Kai Pastor 9a00f1ed4d Add Requires.private for libcjson and zlib 2024-03-14 10:13:14 +01:00
Kai Pastor d6fcacd47a Add find_dependency for link lib targets 2024-03-14 10:13:14 +01:00
Armin Novak 56a3955af4 [client,x11] send TS_RAIL_ORDER_ACTIVATE
when a rail window has gained focus or lost it send
TS_RAIL_ORDER_ACTIVATE to inform the server about the change.
2024-03-14 10:11:47 +01:00
akallabeth 70a8b185be [core,gateway] log http response status & reason
only log headers with debug level and body with trace level.
normal operation does not require this information and will flood the
console.
2024-03-12 17:07:37 +01:00
akallabeth e31acc048e [core,client] prevent double channel close
reset clientDataCount on close.
2024-03-12 14:24:36 +01:00
akallabeth 95cae82af6 [freerdp,api] check __clang__ at ALIGN64
while __GNUC__ is usually defined explicitely check for __clang__ too
2024-03-12 14:24:36 +01:00
akallabeth d87d598305 [winpr] add WINPR_ALIGN64 defines
Add defines to aling struct members to 8 bytes
2024-03-12 14:24:36 +01:00
akallabeth 6b5f262660 [client,x11] document keyboard shortcuts 2024-03-12 10:13:25 +01:00
akallabeth c87368310a [client,x11] fix right control ungrab
ungrab keybaord/mouse on first right control press. Fixes #9959
2024-03-12 10:13:25 +01:00
Kai Pastor 552428ca53 Fix wfreerdp-server-cli output and pdb name 2024-03-12 10:12:51 +01:00
Kai Pastor f2f9c59b01 Disable WINPR_THREAD_POOL for mingw 7 2024-03-12 09:39:45 +01:00
akallabeth 44c86c8049 [cmake] fix RPATH configuration
* ConfigureRPATH must use option or cache variables (visibility scope)
* include CommonConfigOptions (and with it ConfigureRPATH) only after
  all required variables have been defined
2024-03-12 08:53:51 +01:00
Kai Pastor 47354c4519 Fix MSVC arm64 2024-03-12 08:40:42 +01:00
akallabeth f764b0a854 [channels,location] implement client channel
* provide client side callbacks to implement platform specific location
  backend glue code
2024-03-11 13:22:12 +01:00
akallabeth 2dd80b1e80 [utils] implement write 4byte types
* freerdp_write_four_byte_signed_integer
* freerdp_write_four_byte_float
2024-03-11 13:22:12 +01:00
akallabeth 1f22a4f954 [client,sdl] ignore blit that does not intersect
SdlWindow::blit might be called for areas that do not intersect the
surface. Return success in such cases to avoid terminating a session.
2024-03-11 12:32:35 +01:00
akallabeth fd46a43934 [core,update] reset invalid regions after BeginPaint
Do not touch invalid regions before BeginPaint was called. This fixes
issue #9953 as the sdl client is waiting in BeginPaint for the screen
updates of EndPaint to be actually drawn.
2024-03-11 12:15:52 +01:00
David Fort a4cc020b75 [win32,childsession] Fix invalid pipe path with 32 bits builds
When compiled as x86 (32 bits) the path returned by WinStationCreateChildSessionTransport
is sometime missing the beginning of the pipe path.
2024-03-11 11:24:24 +01:00
akallabeth 4732f379d4 [winpr,sysinfo] unify time function use
* Add new function winpr_GetTickCount64NS for high resolution tick
  count with (up to) nanosecond resolution
* Add new function winpr_GetUnixTimeNS for high resolution system time
  as nanoseconds since 1.1.1970
* Replace use of clock_gettime and gettimeofday in whole project with
  these new functions
* Add new macros WINPR_TIME_NS_TO_* and WINPR_TIME_NS_REM_* to convert
  the nano second count to less resolution or get the remainder in the
  desired resolution
2024-03-11 09:54:10 +01:00
David Fort b5713c46a7 [win32] various fix for childSession
WAIT_TIMEOUT was not correctly handled in non blocking mode. Also there was a
segfault when freeing the transport (double free).
2024-03-09 11:29:08 +01:00
akallabeth 378c9f8b98 [ci,tidy] allow integer bool conditions
We heavily rely on our custom BOOL type which is a typedef to int32_t.
Consider this a valid bool condition for
readability-implicit-bool-conversion
2024-03-09 09:47:17 +01:00
akallabeth 37792c0a37 [ci,primitives] enable NEON on iOS builds
* Enable WITH_NEON=ON for iOS builds
* Fix a undeclared variable issue with NEON builds
2024-03-08 14:10:53 +01:00
akallabeth e53dc3dabb [client,x11] fix X11 access during +auth-only
fixes #9946
2024-03-08 11:13:05 +01:00
akallabeth ef8c9e48e8 [core,utils] unify channel reloading
Add the wrapper function utils_reload_channels that unifies the channel
cleanup and channel initialization sequence required on connect,
redirect and gateway policy apply
2024-03-07 16:18:41 +01:00
akallabeth 93eb4df524 [core,gateway] implement RDG and TSG policy
* use dynamic logger in RDG
* honor [MS-TSGU] 2.2.9.2.1.5.2 TSG_REDIRECTION_FLAGS
* honor [MS-TSGU] 2.2.10.16 HTTP_TUNNEL_AUTH_RESPONSE
  HTTP_TUNNEL_AUTH_RESPONSE_FIELD_REDIR_FLAGS flag
* add setting GatewayIgnoreRedirectionPolicy to ignore the gateway
  policy if desired
2024-03-07 16:18:41 +01:00
akallabeth 6a7c375831 [crypto,cert] add better logging of certificate read
add missing log entries for possible failures due to invalid data
received. This allows better debugging if a server sends garbage or the
crypto routines have direct RSA routine access disabled.
2024-03-07 14:59:32 +01:00
Vic Lee 33416fd3ac [channels,printer] support printer channel in synchronous mode. 2024-03-07 11:40:44 +01:00
akallabeth 938e1ca2f1 [server,shadow] initialize subsystem->format before use 2024-03-05 10:03:23 +01:00
akallabeth 9268cee35e [server,shadow] shadow_subsystem_pointer_convert_alpha_pointer_data
the function uses implicit color formats. Replace this with the function
shadow_subsystem_pointer_convert_alpha_pointer_data_to_format with
explicit source color format.
Deprecate the old function.
2024-03-05 10:03:23 +01:00
akallabeth fe149f3f57 [server,shadow] deprecate shadow_capture_compare
the function uses implicit color format layout, so move to a version
with explicit format layout.
2024-03-05 10:03:23 +01:00
akallabeth 730d67c7e3 [server,shadow] add WINPR_RESTRICT to comparison
shadow_capture_compare_with_format and shadow_capture_compare always
operate on distinct memory areas. Allow better optimization of
operations with the WINPR_RESTRICT keyword
2024-03-05 10:03:23 +01:00
akallabeth e4a0746cdc [server,shadow] detect changes no alpha
add shadow_capture_compare_with_format no alpha comparison option. If
not both, source and destination have alpha, just ignore it.
2024-03-05 10:03:23 +01:00
nin dc4bd6609b [server,shadow] add image format support for capture
when capturing bitmap data take the source image format into account on
copy and compare.
2024-03-05 10:03:23 +01:00
akallabeth 4139e55a78 [build,mac] prefer self compiled dependencies
when building OpenSSL prefer dependencies from our self compiled
installation directory
2024-03-04 19:36:27 +01:00
ddoe d590b67ac4 Prevent printer closing when a job is closed
It prevents future job to print
2024-03-04 14:38:37 +01:00
akallabeth 3b108f1839 [core,proxy] ignore empty variable
fixes #9928: ignore a defined but empty proxy environment variable
2024-03-04 14:28:38 +01:00
akallabeth 4b2e192869 [ci] update workflows
* disable codeql schdeuled job
* fix abi-checker scheduled job base reference
2024-03-04 14:27:45 +01:00
David Fort aebe9742e0 [client,win32] Child session fixes
It seems like WaitFor[Single|Multiple]Object calls aren't reliable on pipes, especially
on the pipe opened for childSession access. The object can be marked as signaled even if
no data is available, making the connection laggy and unresponsive (nearly unusable in some
cases).
This patch works around that by using ReadFileEx() with overlapped instead of simple
ReadFile() and use asynchronous reads.
2024-03-01 09:46:53 +01:00
akallabeth 96c090f182 [ci,mingw] turn off shadow server 2024-02-27 17:39:49 +01:00
akallabeth 3474a21f99 [readme] use clang-tidy status badge from pull_request_target 2024-02-27 17:05:52 +01:00