Commit Graph

18580 Commits

Author SHA1 Message Date
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
akallabeth cdd1be7e1d [ci,mingw] deactivate server builds
the shadow and platform server modules are not finished and use APIs
that mingw does not properly support
2024-02-27 17:05:52 +01:00
akallabeth f2d7d38973 [ci,mingw] simplify openh264 build 2024-02-27 16:33:39 +01:00
akallabeth 573fdf0608 [ci,mingw] use posix toolchain
we require std::thread, std::mutex, ... which mingw does not provide
unless the -posix toolchain are used.
2024-02-27 16:14:33 +01:00
akallabeth 9e0c0fd5e1 [ci,abi] expose rdtk and uwac
we did not have them statically compilable with 3.0.0, so keep them
shared to make check-abi happy
2024-02-27 16:14:33 +01:00
akallabeth 6483ca29d2 [ci,mingw] add git, meson and cmake deps 2024-02-27 15:30:53 +01:00
akallabeth 7c320056b3 [ci,abi] add suppressions 2024-02-27 15:30:53 +01:00
akallabeth 721c1b9fcd add mingw badge 2024-02-27 14:46:35 +01:00
akallabeth 3086869bf2 [ci,mingw] add ninja to deps 2024-02-27 14:46:35 +01:00
akallabeth d8c0e7546e [winpr,utils] allow quoted sub arguments
fixes #9890.
2024-02-27 14:15:56 +01:00
akallabeth 9a7d30d174 [clang,tidy] fix a few warnings 2024-02-27 14:15:43 +01:00
akallabeth 43a70ccb90 [client,sdl] use std::filesystem u8string() 2024-02-27 14:10:14 +01:00