Kobi Mizrachi
de0802a352
server: proxy: Register signal handler after modules finished loading.
...
This prevents a race where the signal handler free's structs that
modules use while initializing.
2020-05-11 09:11:29 +02:00
Kobi Mizrachi
00c25eada0
server: proxy: print version and buildconfig on startup
2020-05-11 09:11:29 +02:00
Kentaro Hayashi
148f3c675d
Fixed typos (Otherweise)
...
Otherweise ->
Otherw ise
^
2020-05-10 16:35:20 +09:00
akallabeth
cbee45aace
Fixed clipboard 'called with invalid type' warning
2020-05-06 13:31:57 +02:00
Linus Heckemann
5ce0ab909f
shadow_server: allow specifying IP addresses to listen on ( #6050 )
...
* shadow_server: allow specifying IP addresses to listen on
This allows using IPv6 as well as listening only on specific
interfaces. Additionally, it enables listening on local and TCP
sockets simultaneously.
* listener: log address with square brackets
This disambiguates IPv6 addresses.
* shadow_server: check error on each socket binding
* Refactored shadow /bind-address for 2.0 compiatibility.
* Made /ipc-socket and /bind-address incompatible arguments.
* Fixed shadow /bind-address handling and description
* Allow multiple bind addresses for shadow server.
Co-authored-by: akallabeth <akallabeth@posteo.net>
2020-05-05 08:35:19 +02:00
Armin Novak
24bd601f8d
Fixed data type warnings
2020-04-11 09:43:14 +02:00
Norbert Federa
e3b3b52f6a
server: fix surface command types
...
- Legacy RemoteFX is encapsulated in a "Stream Surface Bits Command" (CMDTYPE_STREAM_SURFACE_BITS)
- NSCodec is encapsulated in a "Set Surface Bits Command" (CMDTYPE_SET_SURFACE_BITS)
References:
- MS-RDPRFX 3.1.8.3.1 RemoteFX Stream / Encode Message Sequencing
- MS-RDPNSC 2.2.2 NSCodec Compressed Bitmap Stream
2020-04-03 14:35:58 +02:00
akallabeth
88ad9ca56b
Fix sending/receiving surface bits command.
...
* Pass on proper command type to application
* On send let the server implementation decide to send
2.2.9.2.1 Set Surface Bits Command (TS_SURFCMD_SET_SURF_BITS) or
2.2.9.2.2 Stream Surface Bits Command (TS_SURFCMD_STREAM_SURF_BITS)
Thanks to @viniciusjarina for tracing the issue down.
2020-04-03 12:00:53 +02:00
Kobi Mizrachi
3b673be378
server: proxy: fix wrong log level used in pf_modules_run_filter
2020-03-12 08:36:05 +01:00
Kobi Mizrachi
1484d0ac48
server: proxy: removed unnecessary cast after #5955
2020-03-12 08:36:05 +01:00
Kobi Mizrachi
73445e1462
server: proxy: use config path from argv if provided
2020-03-12 08:36:05 +01:00
Armin Novak
eca32456bb
Removed unused function
2020-03-10 14:04:53 +01:00
Armin Novak
3ba66db99d
Unify pReceiveChannelData and psPeerReceiveChannelData
...
Fix definitions of the two function pointers.
Use and definition did not match, fix that.
Will create warnings in external projects
2020-03-10 12:21:14 +01:00
Armin Novak
d5b5088eac
Fixed misinterpretation of SendChannelData
...
SendChannelData was defined with a return value of type int, but
used as BOOL everywhere. Fix the definition to match use.
2020-03-10 12:21:14 +01:00
Armin Novak
cffbbacccd
Default proxy modules to OFF
...
The proxy module sample is c++ 11 which some older build targets
do not like. Deactivate this by default.
2020-03-09 09:16:41 +01:00
Armin Novak
a6d0b67ca6
Set C++ standard for proxy demo target
2020-03-09 09:03:19 +01:00
Armin Novak
83348ef98f
CMake options to compile without proxy or shadow
...
* Added WITH_SHADOW (default ON) to compile without shadow server
* Added WITH_PROXY (default ON) to compile without proxy server
2020-03-09 08:50:40 +01:00
Armin Novak
d7ba252cd7
Fixed arguments for peer->ReceiveChannelData
2020-03-04 14:52:19 +01:00
Armin Novak
0f729d2b2c
Fixed conversion and return checks.
...
* Fix some missing argument checks for function pointer implementations
* Fix broken return value check for client->SendChannelData
* Updated const correctness for function pointer implementations
2020-03-04 14:44:03 +01:00
Armin Novak
d7da4b7e00
Removed function pointer casts for shadow.
2020-03-03 13:02:22 +01:00
Armin Novak
829497b313
Made CHANNEL_TSMF optional and deprecated.
2020-02-26 13:56:43 +01:00
Kobi Mizrachi
b574876986
server: proxy: client: change ClientFree->ContextFree
2020-02-26 11:47:01 +01:00
Kobi Mizrachi
079871ac65
server: proxy: support static vc passthrough
2020-02-26 11:47:01 +01:00
Armin Novak
436b68e416
Fixed #5895 : cast warnings.
2020-02-19 10:21:43 +01:00
Martin Fleisz
e304428a5f
Merge pull request #5857 from akallabeth/scanbuild_fixes
...
Scanbuild fixes
2020-02-12 10:16:54 +01:00
Kobi Mizrachi
4823f41274
server: proxy: improve logs
2020-02-10 09:37:54 +01:00
Kobi Mizrachi
8c8e5e4239
server: proxy: show indicative log on bind failure.
2020-01-27 07:57:45 +01:00
Armin Novak
5ba7061a18
Fixed type of index variables.
2020-01-23 10:12:12 +01:00
Armin Novak
d67cea9b1a
Fixed NULL dereference.
2020-01-23 10:09:23 +01:00
Kobi Mizrachi
18be45eca1
server: proxy: specify which modules to load in config
2020-01-22 14:18:21 +01:00
Kobi Mizrachi
6d3f658983
server: proxy: add an indicative log listener->Open fails. fixes #5850
2020-01-21 12:08:39 +01:00
Kobi Mizrachi
c0cc676a4e
server: proxy: pf_client.c: remove unused includes
2020-01-21 12:08:39 +01:00
Kobi Mizrachi
92c3f76809
server: proxy: disconnect all active sessions on shutdown
2020-01-21 12:08:39 +01:00
Kobi Mizrachi
424e73a895
server: proxy: modules_init: create modules dir if not exists
2020-01-21 11:43:13 +01:00
Kobi Mizrachi
9d82f5305a
server: proxy: update config.ini
2020-01-21 11:43:13 +01:00
Kobi Mizrachi
ab3a096353
server: proxy: fix race condition when between client thread and server update thread
2020-01-15 11:23:14 +02:00
Kobi Mizrachi
15909af766
server: proxy: fix pf_modules_init
2020-01-14 10:40:49 +01:00
David Fort
0cc3af2282
Merge pull request #5796 from akallabeth/rdp_10_7_large_pointers
...
Added RDP 10.7 large pointer support
2020-01-14 10:17:13 +01:00
Kobi Mizrachi
e3728c1822
server: proxy: do not compile modules by default
2020-01-14 07:58:47 +01:00
Kobi Mizrachi
706e13c312
server: proxy: shutdown gracefully
2020-01-14 07:58:47 +01:00
Kobi Mizrachi
b2fad50cd3
server: proxy: rewrite modules API
...
* Add support for C++ plugins.
* Seperate between a "module" and a "plugin": a module is a shared
library that exposes a function called "proxy_module_entry_point". This
function gets a parameter to `proxyPluginsManager*`, which can be used to
register plugins.
* Refine the API of the modules infrastructure:
* use proxyData* instead of rdpContext* when firing a hook or calling a filter.
* use clearer names.
* Instead of having to specify a path for each module to be loaded in
the configuration, the proxy now loads modules from specificed
directory, using the CMAKE variable PROXY_PLUGINDIR.
* Add an option to specify required plugins: plugins that the proxy
wouldn't start without having them fully loaded.
2020-01-14 07:58:47 +01:00
Kobi Mizrachi
29dee84a2b
rail/server: rename rdpContext to rdpcontext
...
Fixes a compilation error when mixing c++ and c code.
2020-01-14 07:58:47 +01:00
Kobi Mizrachi
47ca28b5c3
server: proxy: fix leak in pf_context_copy_settings
2020-01-13 13:41:44 +01:00
Kobi Mizrachi
ca2e578acc
server: proxy: add a unique id to each session and improve logs
2020-01-08 11:59:34 +01:00
Kobi Mizrachi
ab3a72f825
server: proxy: move peer initialization to seperate function
2020-01-08 11:59:34 +01:00
Kobi Mizrachi
77ca7ac2ad
server: proxy: make fallback to tls configurable
2020-01-08 07:58:03 +01:00
David Fort
31a4e2ad8b
Merge pull request #5745 from akallabeth/urbdrc_rewrite
...
Urbdrc rewrite
2020-01-06 09:23:45 +01:00
Armin Novak
182d0ce548
Added RDP 10.7 large pointer support
...
* Implements [MS-RDPBCGR] version 51 large pointer support.
* Logs unknown large pointer capability flags as warning.
Signed-off-by: Armin Novak <armin.novak@thincast.com>
2019-12-19 09:53:40 +01:00
Kobi Mizrachi
2e1d719ab1
server: proxy: proxy keyboard leds and imei
2019-12-17 15:33:11 +01:00
Bernhard Miklautz
814771eed5
Merge pull request #5778 from akallabeth/shadow_warnings
...
Added warning to win shadow server
2019-12-16 09:57:16 +01:00