Commit Graph

204 Commits

Author SHA1 Message Date
akallabeth bb242b9a89
[return checks] fix use of WaitForSingleObject 2024-09-16 08:22:37 +02:00
akallabeth 965d231e49
[return checks] fix use of CloseHandle 2024-09-16 08:22:31 +02:00
akallabeth c0d06c782b
[return checks] fix missing checks
* Stream_EnsureRemainingCapacity
* rdp_client_transition_to_state
2024-09-16 06:48:19 +02:00
akallabeth 7d67b8e204
[return checks] fix use of SetEvent 2024-09-16 06:47:58 +02:00
akallabeth 8b6091a007
[winpr,wtsapi] improve API usage
* Mark WTSVirtualChannelOpen and WTSVirtualChannelOpenEx with
  WINPR_ATTR_MALLOC to enforce compiler checks for resource cleanup
* Fix unused result warnings, use the result or cast to (void) where not
  requierd
2024-09-14 21:29:31 +02:00
akallabeth cc6850bf21
[warnings] fix format nonliteral
add pragma to suppress format nonliteral warnings where appropriate
2024-09-12 09:08:53 +02:00
akallabeth 9c9d74e920
[warnings] fix redundant casts 2024-08-29 12:03:09 +02:00
akallabeth 15456e1ee1
[warnings] fix implicit widening conversion 2024-08-29 10:47:20 +02:00
akallabeth 1d33095500
[warnings] fix cert-err33-c
Fix unused return values, cast to void if on purpose
2024-08-29 10:19:27 +02:00
Armin Novak 9b6e39a880
[server,sample] fix NSCodec and SurfaceBitsCommand 2024-07-24 21:54:49 +02:00
Armin Novak 557844277f
[server,sample] use RFX RLGR from settings 2024-07-24 21:54:33 +02:00
akallabeth b4fb4161d9 [coverity] 1088726 Resource leak 2024-04-11 12:04:07 +02:00
akallabeth 678ff144ab [cmake] unify windows resource file generation
* use a macro to add resource files for executables and shared libraries
* use that macro to declare targets
* use that macro to set library/binary versioning
* use that macro to set target output name
* use a macro to create manpages and names
2024-03-20 11:17:18 +01:00
akallabeth 05e555feb7 fixed unused-variable warnings 2024-02-22 12:31:50 +01:00
akallabeth d7ebec5a65 [tidy] move loop variable declaration to loop 2024-02-22 12:31:50 +01:00
akallabeth 0ba995655d [clang-tidy] cppcoreguidelines-init-variables 2024-02-15 11:49:16 +01:00
akallabeth 207def5c56 [clang-tidy] readability-isolate-declaration 2024-02-15 11:49:16 +01:00
akallabeth bf72c307b0 [server,sample] add bounds checks
* test_peer_draw_icon should ignore requests if the resulting image is
  out of bounds of desktop size.
2024-02-12 17:01:16 +01:00
akallabeth 53d88c1c96 [server,sample] delay WTSVirtualChannelManagerCheckFileDescriptor
Only call WTSVirtualChannelManagerCheckFileDescriptor if there was a
event pending on WTSVirtualChannelManagerGetEventHandle
This ensures that the drdynvc channel is not opened before it is
initialized.
2024-02-12 14:06:51 +01:00
akallabeth e8d1bc5f4b [server,sample] fix resource location
if binary versioning is enabled the installation path was wrong.
2024-02-08 09:47:56 +01:00
akallabeth 0cea2461c1 [server,sample] use wImage to load cursor icon
replace the custom PPM loader with the winpr_image* family of functions.
2024-02-07 13:14:02 +01:00
akallabeth eb8b2828dc [server,sample] provide sample-icons formats
provide the cursor icon in different formats.
2024-02-07 13:14:02 +01:00
Armin Novak 175a3ca09a [cmake] do not append EXECUTABLE_SUFFIX to OUTPUT_NAME 2023-12-22 15:37:56 +01:00
Armin Novak b04271ae2d [cmake] add executable versioning
optionally append API version to generated binaries
2023-12-21 18:56:51 +01:00
akallabeth 6b9245849c [warnings] type casts 2023-11-24 18:19:03 +01:00
akallabeth 1f236ade7a [server] make settings opaque 2023-11-24 14:54:56 +01:00
Armin Novak c91a250623 [warnings] add WINPR_FORMAT_ARG
with WINPR_FORMAT_ARG format strings are marked for MSVC to avoid
warnings
2023-10-16 15:10:13 +02:00
akallabeth 4e824b243f [winpr] add WINPR_ATTR_FORMAT_ARG
this macro declares the function argument (pos,arg) to be a printf
style format string and enables compiler checks for that.
2023-08-25 12:56:36 +02:00
akallabeth 41bd8bd3fb [various] fix integer conversions 2023-08-04 15:07:56 +02:00
Armin Novak 5b27ada80a [server,sample] fix unused result warnings 2023-07-31 08:32:43 +02:00
Armin Novak a4c6b36a19 [build] fix memory sanitizer stack frame warnings 2023-06-07 09:14:45 +02:00
akallabeth 105f0d2366 [channel,audin] move common code to server channel
* manage channel related callbacks with default implementations
* use dynamic logger for server audin channel
2023-05-17 13:33:35 +02:00
Pascal Nowack c5278c874f channels/audin: Rework API to be closer to documentation
The current server side channel handling of AUDIO_INPUT is currently
very constrained:

- Server implementations cannot measure the clients uplink, since the
  Incoming Data PDU is currently unhandled and FreeRDPs DSP handling
  delays the callback call of ReceiveSamples
- Servers currently cannot prefer a different protocol version
- Servers currently cannot change the used format

To solve these issues without running into the risk that some
simplifications constraint certain API usage, rework the current channel
handling to be very close to the documentation.
This means, that all documented API calls can be made by server
implementations and all documented PDUs, that the server side is
expected to receive are just parsed inside FreeRDP and then forwarded to
the API implementation.
2023-05-17 13:33:35 +02:00
Armin Novak 16a78e07dd [server,sample] move assert in SuppressOutput
if allowDisplayUpdates == 0 no area rectangle is available.
2023-05-15 22:42:05 +02:00
akallabeth 516668d02b [fclose] ensure no invalid pointers are passed.
fclose has undefined behaviour for NULL pointers, so check for these.
2023-04-28 07:39:35 +02:00
Armin Novak f66110c611 [codec,rfx] refactor API
* Hide implementation details
* Add missing getter/setter
2023-04-05 20:41:42 +02:00
akallabeth a5b42f0f84 [includes] untangled circular includes 2023-03-15 08:22:23 +01:00
Armin Novak 1bf0bb1a26 [server] fixed build without CHANNEL_AUDIN_SERVER 2023-03-06 21:46:51 +01:00
akallabeth ad1af95438 Removed duplicate rdp security checks 2023-02-16 10:06:17 +01:00
akallabeth 4d4be4d892 [server,sample] only use rdpRsaKey and rdpCertificate 2023-02-16 10:06:17 +01:00
Armin Novak 641022b795 [logging] remove __FUNCTION__ from actual message
prefer the log formatter to provide that information.
2023-01-25 16:26:39 +01:00
Armin Novak 7fd6278bc6 [server] fixed key press checks
Do not test KBD_FLAGS_DOWN, this only indicates key repeat. Check for
the absence of KBD_FLAGS_RELEASE
2022-12-13 14:37:05 +01:00
Armin Novak 0cd823e991 [server,sample] handle peer when key file missing
When a certificate or private key file can not be opened handle the peer
disconnect properly.
2022-12-09 12:30:14 +01:00
Armin Novak b25234da66 [channels] Abort event wain on abortEvent 2022-12-09 12:30:14 +01:00
akallabeth 92b40a1c1d Added fix for TestConnect
* copy test_icon.ppm to build directory
* Add client pre|post_connect and disconnect callbacks
2022-11-04 14:46:58 +01:00
akallabeth 43c5289928 Replaced memset/ZeroMemory with initializer
* Addes WINPR_ASSERT on many occations
* Replaced memset with array initializer
* Replaced ZeroMemory with array initializer
2022-10-14 12:11:01 +02:00
akallabeth 60720e7706 Improved streamdump file format 2022-10-07 10:38:03 +02:00
Armin Novak b672bda85e Removed RdpKeyFile and RdpKeyContent settings
They are a duplicate of PrivateKeyFile and PrivateKeyContent
2022-07-06 12:01:23 +02:00
akallabeth 90ce22283d Replaced direct settings access with getter/setter 2022-06-23 07:45:55 +02:00
akallabeth 03e20cb541 Clean up pcap capture module 2022-06-23 07:45:55 +02:00