mirror of
https://github.com/morgan9e/FreeRDP
synced 2026-04-15 00:44:19 +09:00
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.
This commit is contained in:
committed by
akallabeth
parent
1543664343
commit
b2fad50cd3
@@ -982,6 +982,14 @@ set(FREERDP_ADDIN_PATH "${FREERDP_PLUGIN_PATH}")
|
||||
# Path to put extensions
|
||||
set(FREERDP_EXTENSION_PATH "${CMAKE_INSTALL_FULL_LIBDIR}/freerdp${FREERDP_VERSION_MAJOR}/extensions")
|
||||
|
||||
# Proxy plugins path
|
||||
if(NOT DEFINED PROXY_PLUGINDIR)
|
||||
message("using default plugins location")
|
||||
set(FREERDP_PROXY_PLUGINDIR "${CMAKE_BINARY_DIR}/server/proxy/plugins")
|
||||
else()
|
||||
set(FREERDP_PROXY_PLUGINDIR "${PROXY_PLUGINDIR}")
|
||||
endif()
|
||||
|
||||
# Include directories
|
||||
include_directories(${CMAKE_CURRENT_BINARY_DIR})
|
||||
include_directories(${CMAKE_CURRENT_BINARY_DIR}/include)
|
||||
|
||||
Reference in New Issue
Block a user