Armin Novak
fd027d1bf0
Removed BUILTIN_CHANNELS
...
Building client channels out of tree does not work reliable as the
dependencies can not be easily split. (exceptions may be simple ones
as echo channel)
It does complicate the build system and code though, so remove this
for maintainability reasons.
2022-02-23 10:43:46 +01:00
Armin Novak
3bb36f4caa
Fixed clang-scanbuild warnings
2022-02-22 16:15:05 +01:00
Armin Novak
f03059e718
Extended AINPUT API:
...
* Each event now has a timestamp
* Relative and absolute events are sent simultaneously
* Added a flag indicating relative events are available
2022-02-22 09:44:13 +01:00
akallabeth
7641710f60
Use a client/common context component
...
* Allows moving common client code from specific client to a
generic client/common implementation
2022-02-22 09:44:13 +01:00
akallabeth
c4e14f7fd6
Added Advanced Input Channel support to sample server
2022-02-22 09:44:13 +01:00
Armin Novak
80a352366f
Fixed windows shadow warnings
2022-02-18 08:38:28 +01:00
Armin Novak
21d8bab08d
Fixed mingw build
2022-02-18 08:38:28 +01:00
Armin Novak
3a609fb920
Fixed mingw build warnings
2022-02-18 08:38:28 +01:00
akallabeth
8cc6582044
Unify struct definitions ( #7633 )
...
* Unified enum/struct definitions, fixed include issues
* Fixed mac compilation issues
* Added missing include
* Fixed windows server build warnings
* Fixed VS2010 build issue
* Removed unnecessary library linking
* Fixed ThreadPool WinXP compatibility
* Fixed pr review remarks
2022-02-14 14:59:22 +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
a40467b3b0
Added Stream_ConstBuffer function
2022-02-01 10:25:37 +00:00
Armin Novak
a403848e61
Fixed const/type warnings
2022-02-01 08:48:21 +01:00
akallabeth
8560803211
Removed BITMAP_UPDATE::count use
2022-01-27 10:52:02 +01:00
Armin Novak
9c7ec3888a
Added deprecation to *get_fds functions
2022-01-21 08:59:09 +01:00
akallabeth
724c6f8192
Proxy cleanups ( #7568 )
...
* Fixed C++ issues with proxy context
* Added freerdp_settings_get_string_writable
* Define WITH_PROXY_EMULATE_SMARTCARD in config.h
2022-01-20 11:12:36 +01:00
akallabeth
e6e6ed5dbd
Cleaned up PubSub
...
* Callback arguments now const
* Fixed missing includes
2022-01-19 09:24:57 +01:00
Armin Novak
5b2cb753bb
Fix access to wrong variable in sample server
2022-01-18 11:24:23 +01:00
Armin Novak
1fedd36f65
Fixed proxy compilation issues after rdpUpdate refactoring
2022-01-18 11:24:23 +01:00
Armin Novak
f1adfb0e5c
Added client redirect to proxy demo module
2022-01-11 12:34:43 +01: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
Armin Novak
fd5ac4eed0
Cleaned up wnd.h includes
2021-12-23 14:27:12 +01:00
akallabeth
88f4e72853
Added WITH_RDTK to disable rdtk build
2021-12-15 13:36:15 +01:00
Armin Novak
41d03143b8
Always call HOOK_TYPE_CLIENT_LOGIN_FAILURE if NLA failed
2021-11-03 11:12:00 +01:00
Armin Novak
149b9bf2cc
Fixed StreamStaticInit warnings.
2021-10-18 10:53:05 +02:00
Armin Novak
73fbbcf0fb
Fixed const warnings
2021-10-14 13:04:59 +02:00
akallabeth
a4be45dd5d
Fixed proxy to string functions ( #7333 )
2021-10-07 10:25:59 +02:00
Armin Novak
18a3fcf2fc
Updated wStream API and added torough checks
...
* Do length/capacity checks in every read/write/seek function
if WINPR_ASSERT is defined.
* Ensure s->pointer is valid, e.g. within s->buffer + s->capacity
(Stream_Rewind, Stream_Seek, ...)
* Add return values to Stream_Set* functions so inalid arguments
can be reported to the caller
* Deprecated problematic stream manipulation functions
(Stream_SetBuffer, Stream_SetPointer, Stream_SetCapacity)
* Ensure length/capacity functions never return a value larger
than the actual length/capacity
2021-10-06 09:49:07 +02: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
Alexandru Bagu
7f7bf2d731
Remove passthrough channel name limit
2021-10-05 09:40:53 +02:00
Alexandru Bagu
1f4ae26a6f
add missing filter type strings
...
* fixes crash that happens while debugging the proxy
2021-10-05 09:32:21 +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
akallabeth
e4cd8674d7
Win proxy fix ( #7311 )
...
* Do not change warning level for MSVC builds
* Fixed windows PDB paths.
2021-09-22 16:00:00 +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
akallabeth
4d23bc9372
Added proxy input state sync ( #7282 )
...
The proxy server component might receive input related events
before the proxy client has established the connection to the
target machine.
With this change, the current keyboard state is cached and sent
to the target when it is ready. All input events received before
the target is ready are discarded.
2021-09-10 10:39:07 +02:00
Armin Novak
673fb46836
Fixed uninitialized warnings
2021-09-10 08:16:25 +02:00
Armin Novak
0fe1e2359e
Fixed all reserved-id-macro warnings
2021-09-10 08:16:25 +02:00
Armin Novak
210c56d0fb
Options to specify sfreerdp-server cert and private key
2021-09-10 08:16:25 +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
680dc81bad
Added dump option for proxy config.
2021-09-09 08:53:20 +02:00
Armin Novak
3afd147bc0
Use wStream in pf_client_receive_channel_data_hook
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
0f8c52b9ca
Fixed const warnings with argument parser
2021-09-09 08:53:20 +02:00
Armin Novak
f7c7211aad
Fixed compilation warnings
2021-09-09 08:53:20 +02:00
Armin Novak
4cc0fbca33
Proxy client cleanups
...
* Use proper maximum handle defines
* Gracefully handle out of memory instead of assert
2021-09-09 08:53:20 +02:00
Armin Novak
4e44003832
Expose dynamic channel PDU types
2021-09-09 08:53:20 +02:00
Armin Novak
5a2231172c
Updated copyright for proxy
2021-09-09 08:53:20 +02:00
Armin Novak
976c3c2ab9
Refactored proxy and proxy-modules:
...
* Split out proxy headers and moved to public API to allow external
modules to be built.
* Split proxy into proxy library and proxy binary. The library
can be used by other applications and provides a simple API
* Improved channel passthrough, now all channels including dynamic
channels work.
* Extended module API to hook more events, improved module samples
* Cleaned up proxy code, removed global static variables used,
added WINPR_ASSERT
2021-09-09 08:53:20 +02:00