akallabeth
44d5461cd5
[warnings] fix -Wunused-but-set-variable
2025-03-06 07:15:20 +01:00
akallabeth
150b61d4c2
[proxy,warnings] fix -Wunused-parameter
2025-02-13 15:53:58 +01:00
akallabeth
83f2f21ad3
[warnigns] fix lots of bugprone warnings
...
* update-settings-tests: properly cast types in getter/setter
* wtypes: fix PHANDLE definition
* wStream: fix INT64 write function warnings
* Simplify HANDLE copy in channels, just assign after proper cast
2024-12-06 09:15:48 +01:00
stephanebill
4f2afa8c47
spell check with codespell
2024-11-20 16:53:40 -05:00
akallabeth
78acedb40e
[warnigns] fix Wshorten-64-to-32
2024-11-11 10:22:37 +01:00
akallabeth
dcf5a8e28c
[warnings] fix -Wswitch-default
2024-10-31 11:42:24 +01:00
akallabeth
328b7433a4
[server,proxy] fix unchecked return values
2024-09-17 12:57:34 +02:00
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
f655843260
[return checks] fix use of rdpSettings getter/setter
2024-09-16 06:48:23 +02:00
akallabeth
7d67b8e204
[return checks] fix use of SetEvent
2024-09-16 06:47:58 +02:00
akallabeth
784f9eab24
[server,proxy] only intercept drdynvc if requested
2024-07-25 11:19:17 +02:00
akallabeth
1197384315
[coverity] 1543218 Resource leak
2024-04-11 12:04:07 +02: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
ba8cf8cf21
[build] fix Wmismatched-deallocator warnings
...
With custom malloc function attributes the fail path in the _New
functions produces warnings due to allocator mismatches. Silence them.
2024-02-05 08:16:55 +01:00
akallabeth
59ed125eed
[server,proxy] add TlsSecLevel option to config
...
To support legacy targets add the TlsSecLevel configuration option that
is equivalent to the /tls:seclevel option of the client implementations.
This allows automatic configuration of OpenSSL legacy providers if they
are available.
2024-01-09 15:53:22 +01:00
Armin Novak
6e6559c41a
[settings] fix type mismatch warnings
2023-11-24 14:54:56 +01:00
akallabeth
1f236ade7a
[server] make settings opaque
2023-11-24 14:54:56 +01:00
Armin Novak
80058caa4d
[proxy,modules] check return of pf_modules_run_hook
2023-06-29 11:05:37 +02:00
Armin Novak
a4c6b36a19
[build] fix memory sanitizer stack frame warnings
2023-06-07 09:14:45 +02:00
akallabeth
87e90903ab
[server,proxy] use rdpPrivateKey and rdpCertificate
2023-02-16 10:06:17 +01:00
akallabeth
08a2d61d6d
[proxy] fix possible NULL crash on shutdown
2023-01-12 22:54:25 +01:00
akallabeth
76bd3ee8f8
[proxy] use proxy logging macros
...
use proxy logging macros so we know which session a message belongs to
2022-12-18 15:14:30 +01:00
David Fort
d59c0a49c3
proxy: fix channel shift between front and back
...
When some channels are filtered, some misalignement of channel ids could happen.
This patch keeps track of the back and front channel ids to correctly identify a
channel and send packets with the correct channel id.
2022-11-30 11:38:08 +01:00
akallabeth
60720e7706
Improved streamdump file format
2022-10-07 10:38:03 +02:00
akallabeth
1849632c43
Fixed format strings to match arguments ( #8254 )
...
* Fixed format strings to match arguments
Reviewed and replaced all %d specifiers to match proper type
* Added proxy dynamic channel command type to log messages.
2022-09-29 14:55:27 +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
Armin Novak
72fcbc59d8
Use settings setter
2022-07-06 12:01:23 +02:00
akallabeth
bc8b4ade1c
reformatted
2022-06-23 08:48:39 +02:00
akallabeth
90ce22283d
Replaced direct settings access with getter/setter
2022-06-23 07:45:55 +02:00
akallabeth
f44554e16d
Added proxy module callbacks for session init and started ( #7976 )
2022-06-20 13:02:25 +02:00
David Fort
aff8fdac26
proxy: correctly handle dynamic channel fragmentation
...
This big patch fixes fragmentation handling in the dynamic channel. We used to
have a single state to handle fragmentation at the main dynamic channel level, but
in fact packets can be fragmented per sub channel. So we have to maintain a fragmentation
state per sub channel, this involve treating dynamic and static channels differentely
(so the size of the patch that has to implement state tracking per dynamic channels).
2022-06-17 08:38:57 +02:00
David Fort
cfe80694da
proxy: add fixed user/domain/passwd
...
This adds a User, Domain and Password parameter in the Target section of the configuration
to specify and use a fixed backend user, domain or password (overriding the one
passed by the front user).
2022-06-15 14:05:45 +02:00
akallabeth
37d0a9e2b7
Assert function pointers in proxy
2022-04-15 12:13:03 +02:00
David Fort
63d0d3e4cf
proxy: rework proxy channel treatments for statefull drdynvc
...
The rework introduce a stateful dynamic channel treatment, so that we can take early decisions
for data packet (dropping all the current packet or pass it), but also reassemble important
packets like channel creation.
2022-04-15 09:06:09 +02:00
akallabeth
14568872a9
Instance cleanup ( #7738 )
...
* Cleaned up freerdp::autodetect
* Deprecate freerdp::input
* Deprecated freerdp::update
* Deprecated freerdp::settings
* Deprecated freerdp::autodetect
* Removed rdpTransport::settings
* Deprecated freerdp_per::update|settings|autodetect
* Fixed mac client and server compilation
* Fixed windows compilation
* Added deprecation warnings
* Fixed initialization of structs.
* Fixed android build
* Fixed freerdp_client_context_new const correctness
* Fixed checks for android implementation
Replaced checks with assertions where appropriate
* Fixed checks for windows client
Replaced checks with assertions where appropriate
* Fixed proxy client pointer dereference
2022-03-23 13:18:35 +01:00
Armin Novak
4d03d7c0bf
Freerdp remove #ifdef HAVE_CONFIG_H
2022-03-03 11:26:48 +01:00
Armin Novak
b2ad47a809
Reorganized FreeRDP headers
2022-03-03 11:26:48 +01:00
David Fort
46eb50df2c
proxy: improve channel treatment
...
This PR introduces per channel context so that we can speed up operations like
retrieving the channel name from its id, or knowing what shall be done for a
packet (no config ACL recomputation at each packet).
2022-02-04 08:44:22 +00:00
Armin Novak
cefb4e1237
Use freerdp_settings_set and _strdup
2022-02-02 13:43:31 +00:00
Armin Novak
4e6e5be654
Added proxy intercept channels
...
* New configuration to intercept certain channels
* Added rdpdr intercept implementation
2022-01-11 12:34:43 +01:00
akallabeth
32994b02f5
Fix pf_server_new: pass own copy of proxyConfig ( #7328 )
...
* Fix pf_server_new: pass own copy of proxyConfig
The lifecycle of proxyConfig passed to pf_server_new is unknown,
so pass proxyServer->config copy to modules.
* Early free parsed proxyConfig
2021-10-06 09:17:59 +02:00
akallabeth
03a9ca80c8
Refactor proxy ( #7312 )
...
* Added hidden transport dump and replay options
* Added settings to enable transport dump and replay
* Added check in freerdp_connect to skip authentication on
dump replay
* Fixed proxy issues
* Proper shutdown handling
* Uninitialized variables
* Skip proxy-client channels, initialize from peer channels and
config
* Filter static channels like dynamic ones
* Added proxy module filtering from config data (channels, input, ...)
* Removed oboslete proxy decoding related files
* Added defines for RDPECAM channel
* Added proxy config options:
* VideoRedirection
* CameraRedirection
* Fixed duplicate channel free
2021-09-23 14:52:03 +02:00
Armin Novak
fceb108fc5
Fixed comments and duplicate checks.
2021-09-20 10:59:59 +02:00
akallabeth
695e38398d
Refactored proxy
...
* Removed unnecessary global data lists
* Improved error handling
* Do not initialize channel code in passthrough mode
2021-09-20 10:59:59 +02:00
Armin Novak
ba0da04217
Fixed compilation warnings and duplicate defines
2021-09-09 08:53:20 +02:00
Armin Novak
5bd096cfc2
Fixed client context cleanup
2021-09-09 08:53:20 +02:00
Armin Novak
4463e5eda9
Added config dump function, improved resource cleanup
2021-09-09 08:53:20 +02:00
Armin Novak
5a2231172c
Updated copyright for proxy
2021-09-09 08:53:20 +02:00