[server] add exerimental and unmaintained warnings
This commit is contained in:
parent
5b012fbc8a
commit
dd9757d686
@ -5134,26 +5134,74 @@ BOOL freerdp_client_load_addins(rdpChannels* channels, rdpSettings* settings)
|
|||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void freerdp_client_warn_unmaintained(int argc, char* argv[])
|
||||||
|
{
|
||||||
|
const char* app = (argc > 0) ? argv[0] : "INVALID_ARGV";
|
||||||
|
const DWORD log_level = WLOG_WARN;
|
||||||
|
wLog* log = WLog_Get(TAG);
|
||||||
|
WINPR_ASSERT(log);
|
||||||
|
|
||||||
|
if (!WLog_IsLevelActive(log, log_level))
|
||||||
|
return;
|
||||||
|
|
||||||
|
WLog_Print_unchecked(log, log_level, "[unmaintained] %s client is currently unmaintained!",
|
||||||
|
app);
|
||||||
|
WLog_Print_unchecked(
|
||||||
|
log, log_level,
|
||||||
|
" If problems occur please check https://github.com/FreeRDP/FreeRDP/issues for "
|
||||||
|
"know issues!");
|
||||||
|
WLog_Print_unchecked(
|
||||||
|
log, log_level,
|
||||||
|
"Be prepared to fix issues yourself though as nobody is actively working on this.");
|
||||||
|
WLog_Print_unchecked(
|
||||||
|
log, log_level,
|
||||||
|
" Developers hang out in https://matrix.to/#/#FreeRDP:matrix.org?via=matrix.org "
|
||||||
|
"- dont hesitate to ask some questions. (replies might take some time depending "
|
||||||
|
"on your timezone) - if you intend using this component write us a message");
|
||||||
|
}
|
||||||
|
|
||||||
void freerdp_client_warn_experimental(int argc, char* argv[])
|
void freerdp_client_warn_experimental(int argc, char* argv[])
|
||||||
{
|
{
|
||||||
const char* app = (argc > 0) ? argv[0] : "INVALID_ARGV";
|
const char* app = (argc > 0) ? argv[0] : "INVALID_ARGV";
|
||||||
WLog_WARN(TAG, "[experimental] %s client is currently experimental!", app);
|
const DWORD log_level = WLOG_WARN;
|
||||||
WLog_WARN(TAG, " If problems occur please check https://github.com/FreeRDP/FreeRDP/issues for "
|
wLog* log = WLog_Get(TAG);
|
||||||
"know issues or create a new one!");
|
WINPR_ASSERT(log);
|
||||||
WLog_WARN(TAG, " Developers hang out in https://matrix.to/#/#FreeRDP:matrix.org?via=matrix.org "
|
|
||||||
"- dont hesitate to ask some questions. (replies might take some time depending "
|
if (!WLog_IsLevelActive(log, log_level))
|
||||||
"on your timezone)");
|
return;
|
||||||
|
|
||||||
|
WLog_Print_unchecked(log, log_level, "[experimental] %s client is currently experimental!",
|
||||||
|
app);
|
||||||
|
WLog_Print_unchecked(
|
||||||
|
log, log_level,
|
||||||
|
" If problems occur please check https://github.com/FreeRDP/FreeRDP/issues for "
|
||||||
|
"know issues or create a new one!");
|
||||||
|
WLog_Print_unchecked(
|
||||||
|
log, log_level,
|
||||||
|
" Developers hang out in https://matrix.to/#/#FreeRDP:matrix.org?via=matrix.org "
|
||||||
|
"- dont hesitate to ask some questions. (replies might take some time depending "
|
||||||
|
"on your timezone)");
|
||||||
}
|
}
|
||||||
|
|
||||||
void freerdp_client_warn_deprecated(int argc, char* argv[])
|
void freerdp_client_warn_deprecated(int argc, char* argv[])
|
||||||
{
|
{
|
||||||
const char* app = (argc > 0) ? argv[0] : "INVALID_ARGV";
|
const char* app = (argc > 0) ? argv[0] : "INVALID_ARGV";
|
||||||
WLog_WARN(TAG, "[deprecated] %s client has been deprecated", app);
|
const DWORD log_level = WLOG_WARN;
|
||||||
WLog_WARN(TAG, "As replacement there is a SDL based client available.");
|
wLog* log = WLog_Get(TAG);
|
||||||
WLog_WARN(TAG, "If you are interested in keeping %s alive get in touch with the developers",
|
WINPR_ASSERT(log);
|
||||||
app);
|
|
||||||
WLog_WARN(TAG, "The project is hosted at https://github.com/freerdp/freerdp and "
|
if (!WLog_IsLevelActive(log, log_level))
|
||||||
" developers hang out in https://matrix.to/#/#FreeRDP:matrix.org?via=matrix.org "
|
return;
|
||||||
"- dont hesitate to ask some questions. (replies might take some time depending "
|
|
||||||
"on your timezone)");
|
WLog_Print_unchecked(log, log_level, "[deprecated] %s client has been deprecated", app);
|
||||||
|
WLog_Print_unchecked(log, log_level, "As replacement there is a SDL based client available.");
|
||||||
|
WLog_Print_unchecked(
|
||||||
|
log, log_level,
|
||||||
|
"If you are interested in keeping %s alive get in touch with the developers", app);
|
||||||
|
WLog_Print_unchecked(
|
||||||
|
log, log_level,
|
||||||
|
"The project is hosted at https://github.com/freerdp/freerdp and "
|
||||||
|
" developers hang out in https://matrix.to/#/#FreeRDP:matrix.org?via=matrix.org "
|
||||||
|
"- dont hesitate to ask some questions. (replies might take some time depending "
|
||||||
|
"on your timezone)");
|
||||||
}
|
}
|
||||||
|
9
cmake/WarnUnmaintained.cmake
Normal file
9
cmake/WarnUnmaintained.cmake
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
|
||||||
|
macro(warn_unmaintained name)
|
||||||
|
message(WARNING "[unmaintained] ${name} is unmaintained!")
|
||||||
|
message(WARNING "[unmaintained] use at your own risk!")
|
||||||
|
message(WARNING "[unmaintained] If problems occur please check https://github.com/FreeRDP/FreeRDP/issues for know issues, but be prepared to fix them on your own!")
|
||||||
|
message(WARNING "[unmaintained] Developers hang out in https://matrix.to/#/#FreeRDP:matrix.org?via=matrix.org")
|
||||||
|
message(WARNING "[unmaintained] - dont hesitate to ask some questions. (replies might take some time depending on your timezone)")
|
||||||
|
message(WARNING "[unmaintained] - if you intend using this component write us a message")
|
||||||
|
endmacro()
|
@ -43,6 +43,7 @@ extern "C"
|
|||||||
const COMMAND_LINE_ARGUMENT_A* custom);
|
const COMMAND_LINE_ARGUMENT_A* custom);
|
||||||
FREERDP_API BOOL freerdp_client_load_addins(rdpChannels* channels, rdpSettings* settings);
|
FREERDP_API BOOL freerdp_client_load_addins(rdpChannels* channels, rdpSettings* settings);
|
||||||
|
|
||||||
|
FREERDP_API void freerdp_client_warn_unmaintained(int argc, char* argv[]);
|
||||||
FREERDP_API void freerdp_client_warn_experimental(int argc, char* argv[]);
|
FREERDP_API void freerdp_client_warn_experimental(int argc, char* argv[]);
|
||||||
FREERDP_API void freerdp_client_warn_deprecated(int argc, char* argv[]);
|
FREERDP_API void freerdp_client_warn_deprecated(int argc, char* argv[]);
|
||||||
|
|
||||||
|
@ -33,6 +33,10 @@ extern "C"
|
|||||||
FREERDP_API size_t server_audin_get_formats(AUDIO_FORMAT** dst_formats);
|
FREERDP_API size_t server_audin_get_formats(AUDIO_FORMAT** dst_formats);
|
||||||
FREERDP_API size_t server_rdpsnd_get_formats(AUDIO_FORMAT** dst_formats);
|
FREERDP_API size_t server_rdpsnd_get_formats(AUDIO_FORMAT** dst_formats);
|
||||||
|
|
||||||
|
FREERDP_API void freerdp_server_warn_unmaintained(int argc, char* argv[]);
|
||||||
|
FREERDP_API void freerdp_server_warn_experimental(int argc, char* argv[]);
|
||||||
|
FREERDP_API void freerdp_server_warn_deprecated(int argc, char* argv[]);
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -38,6 +38,7 @@
|
|||||||
#include <freerdp/constants.h>
|
#include <freerdp/constants.h>
|
||||||
#include <freerdp/channels/wtsvc.h>
|
#include <freerdp/channels/wtsvc.h>
|
||||||
#include <freerdp/channels/channels.h>
|
#include <freerdp/channels/channels.h>
|
||||||
|
#include <freerdp/server/server-common.h>
|
||||||
|
|
||||||
#include "mfreerdp.h"
|
#include "mfreerdp.h"
|
||||||
#include "mf_peer.h"
|
#include "mf_peer.h"
|
||||||
@ -81,6 +82,7 @@ static void mf_server_main_loop(freerdp_listener* instance)
|
|||||||
|
|
||||||
int main(int argc, char* argv[])
|
int main(int argc, char* argv[])
|
||||||
{
|
{
|
||||||
|
freerdp_server_warn_unmaintained(argc, argv);
|
||||||
mf_server_info info = { .key = "server.key", .cert = "server.crt" };
|
mf_server_info info = { .key = "server.key", .cert = "server.crt" };
|
||||||
|
|
||||||
freerdp_listener* instance;
|
freerdp_listener* instance;
|
||||||
|
@ -18,6 +18,9 @@
|
|||||||
set(MODULE_NAME "wfreerdp-server")
|
set(MODULE_NAME "wfreerdp-server")
|
||||||
set(MODULE_PREFIX "FREERDP_SERVER_WINDOWS")
|
set(MODULE_PREFIX "FREERDP_SERVER_WINDOWS")
|
||||||
|
|
||||||
|
include (WarnUnmaintained)
|
||||||
|
warn_unmaintained(${MODULE_NAME})
|
||||||
|
|
||||||
include_directories(.)
|
include_directories(.)
|
||||||
|
|
||||||
set(${MODULE_PREFIX}_SRCS
|
set(${MODULE_PREFIX}_SRCS
|
||||||
|
@ -31,6 +31,7 @@
|
|||||||
|
|
||||||
#include "wfreerdp.h"
|
#include "wfreerdp.h"
|
||||||
|
|
||||||
|
#include <freerdp/server/server-common.h>
|
||||||
#include <freerdp/log.h>
|
#include <freerdp/log.h>
|
||||||
#define TAG SERVER_TAG("windows")
|
#define TAG SERVER_TAG("windows")
|
||||||
|
|
||||||
@ -46,6 +47,8 @@ BOOL CALLBACK moncb(HMONITOR hMonitor, HDC hdcMonitor, LPRECT lprcMonitor, LPARA
|
|||||||
|
|
||||||
int main(int argc, char* argv[])
|
int main(int argc, char* argv[])
|
||||||
{
|
{
|
||||||
|
freerdp_server_warn_unmaintained(argc, argv);
|
||||||
|
|
||||||
BOOL screen_selected = FALSE;
|
BOOL screen_selected = FALSE;
|
||||||
int index;
|
int index;
|
||||||
wfServer* server;
|
wfServer* server;
|
||||||
|
@ -24,6 +24,9 @@
|
|||||||
#include <freerdp/codec/dsp.h>
|
#include <freerdp/codec/dsp.h>
|
||||||
|
|
||||||
#include <freerdp/server/server-common.h>
|
#include <freerdp/server/server-common.h>
|
||||||
|
#include <freerdp/log.h>
|
||||||
|
|
||||||
|
#define TAG FREERDP_TAG("server.common")
|
||||||
|
|
||||||
size_t server_audin_get_formats(AUDIO_FORMAT** dst_formats)
|
size_t server_audin_get_formats(AUDIO_FORMAT** dst_formats)
|
||||||
{
|
{
|
||||||
@ -159,3 +162,75 @@ fail:
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void freerdp_server_warn_unmaintained(int argc, char* argv[])
|
||||||
|
{
|
||||||
|
const char* app = (argc > 0) ? argv[0] : "INVALID_ARGV";
|
||||||
|
const DWORD log_level = WLOG_WARN;
|
||||||
|
wLog* log = WLog_Get(TAG);
|
||||||
|
WINPR_ASSERT(log);
|
||||||
|
|
||||||
|
if (!WLog_IsLevelActive(log, log_level))
|
||||||
|
return;
|
||||||
|
|
||||||
|
WLog_Print_unchecked(log, log_level, "[unmaintained] %s server is currently unmaintained!",
|
||||||
|
app);
|
||||||
|
WLog_Print_unchecked(
|
||||||
|
log, log_level,
|
||||||
|
" If problems occur please check https://github.com/FreeRDP/FreeRDP/issues for "
|
||||||
|
"know issues!");
|
||||||
|
WLog_Print_unchecked(
|
||||||
|
log, log_level,
|
||||||
|
"Be prepared to fix issues yourself though as nobody is actively working on this.");
|
||||||
|
WLog_Print_unchecked(
|
||||||
|
log, log_level,
|
||||||
|
" Developers hang out in https://matrix.to/#/#FreeRDP:matrix.org?via=matrix.org "
|
||||||
|
"- dont hesitate to ask some questions. (replies might take some time depending "
|
||||||
|
"on your timezone) - if you intend using this component write us a message");
|
||||||
|
}
|
||||||
|
|
||||||
|
void freerdp_server_warn_experimental(int argc, char* argv[])
|
||||||
|
{
|
||||||
|
const char* app = (argc > 0) ? argv[0] : "INVALID_ARGV";
|
||||||
|
const DWORD log_level = WLOG_WARN;
|
||||||
|
wLog* log = WLog_Get(TAG);
|
||||||
|
WINPR_ASSERT(log);
|
||||||
|
|
||||||
|
if (!WLog_IsLevelActive(log, log_level))
|
||||||
|
return;
|
||||||
|
|
||||||
|
WLog_Print_unchecked(log, log_level, "[experimental] %s server is currently experimental!",
|
||||||
|
app);
|
||||||
|
WLog_Print_unchecked(
|
||||||
|
log, log_level,
|
||||||
|
" If problems occur please check https://github.com/FreeRDP/FreeRDP/issues for "
|
||||||
|
"know issues or create a new one!");
|
||||||
|
WLog_Print_unchecked(
|
||||||
|
log, log_level,
|
||||||
|
" Developers hang out in https://matrix.to/#/#FreeRDP:matrix.org?via=matrix.org "
|
||||||
|
"- dont hesitate to ask some questions. (replies might take some time depending "
|
||||||
|
"on your timezone)");
|
||||||
|
}
|
||||||
|
|
||||||
|
void freerdp_server_warn_deprecated(int argc, char* argv[])
|
||||||
|
{
|
||||||
|
const char* app = (argc > 0) ? argv[0] : "INVALID_ARGV";
|
||||||
|
const DWORD log_level = WLOG_WARN;
|
||||||
|
wLog* log = WLog_Get(TAG);
|
||||||
|
WINPR_ASSERT(log);
|
||||||
|
|
||||||
|
if (!WLog_IsLevelActive(log, log_level))
|
||||||
|
return;
|
||||||
|
|
||||||
|
WLog_Print_unchecked(log, log_level, "[deprecated] %s server has been deprecated", app);
|
||||||
|
WLog_Print_unchecked(log, log_level, "As replacement there is a SDL based client available.");
|
||||||
|
WLog_Print_unchecked(
|
||||||
|
log, log_level,
|
||||||
|
"If you are interested in keeping %s alive get in touch with the developers", app);
|
||||||
|
WLog_Print_unchecked(
|
||||||
|
log, log_level,
|
||||||
|
"The project is hosted at https://github.com/freerdp/freerdp and "
|
||||||
|
" developers hang out in https://matrix.to/#/#FreeRDP:matrix.org?via=matrix.org "
|
||||||
|
"- dont hesitate to ask some questions. (replies might take some time depending "
|
||||||
|
"on your timezone)");
|
||||||
|
}
|
||||||
|
@ -1,3 +1,7 @@
|
|||||||
|
|
||||||
|
include (WarnUnmaintained)
|
||||||
|
warn_unmaintained("mac shadow server subsystem")
|
||||||
|
|
||||||
find_library(IOKIT IOKit REQUIRED)
|
find_library(IOKIT IOKit REQUIRED)
|
||||||
find_library(IOSURFACE IOSurface REQUIRED)
|
find_library(IOSURFACE IOSurface REQUIRED)
|
||||||
find_library(CARBON Carbon REQUIRED)
|
find_library(CARBON Carbon REQUIRED)
|
||||||
|
@ -21,6 +21,7 @@
|
|||||||
#include <winpr/input.h>
|
#include <winpr/input.h>
|
||||||
#include <winpr/sysinfo.h>
|
#include <winpr/sysinfo.h>
|
||||||
|
|
||||||
|
#include <freerdp/server/server-common.h>
|
||||||
#include <freerdp/codec/color.h>
|
#include <freerdp/codec/color.h>
|
||||||
#include <freerdp/codec/region.h>
|
#include <freerdp/codec/region.h>
|
||||||
#include <freerdp/log.h>
|
#include <freerdp/log.h>
|
||||||
@ -663,6 +664,10 @@ FREERDP_API const char* ShadowSubsystemName(void)
|
|||||||
|
|
||||||
FREERDP_API int ShadowSubsystemEntry(RDP_SHADOW_ENTRY_POINTS* pEntryPoints)
|
FREERDP_API int ShadowSubsystemEntry(RDP_SHADOW_ENTRY_POINTS* pEntryPoints)
|
||||||
{
|
{
|
||||||
|
const char name[] = "mac shadow subsystem";
|
||||||
|
const char* arg[] = { name };
|
||||||
|
|
||||||
|
freerdp_server_warn_unmaintained(ARRAYSIZE(arg), arg);
|
||||||
pEntryPoints->New = (pfnShadowSubsystemNew)mac_shadow_subsystem_new;
|
pEntryPoints->New = (pfnShadowSubsystemNew)mac_shadow_subsystem_new;
|
||||||
pEntryPoints->Free = (pfnShadowSubsystemFree)mac_shadow_subsystem_free;
|
pEntryPoints->Free = (pfnShadowSubsystemFree)mac_shadow_subsystem_free;
|
||||||
pEntryPoints->Init = (pfnShadowSubsystemInit)mac_shadow_subsystem_init;
|
pEntryPoints->Init = (pfnShadowSubsystemInit)mac_shadow_subsystem_init;
|
||||||
|
@ -1,4 +1,7 @@
|
|||||||
|
|
||||||
|
include (WarnUnmaintained)
|
||||||
|
warn_unmaintained("windows shadow server subsystem")
|
||||||
|
|
||||||
add_definitions(-DWITH_SHADOW_WIN)
|
add_definitions(-DWITH_SHADOW_WIN)
|
||||||
add_library(freerdp-shadow-subsystem-impl STATIC
|
add_library(freerdp-shadow-subsystem-impl STATIC
|
||||||
win_dxgi.c
|
win_dxgi.c
|
||||||
|
@ -25,6 +25,7 @@
|
|||||||
#include <freerdp/log.h>
|
#include <freerdp/log.h>
|
||||||
#include <freerdp/codec/color.h>
|
#include <freerdp/codec/color.h>
|
||||||
#include <freerdp/codec/region.h>
|
#include <freerdp/codec/region.h>
|
||||||
|
#include <freerdp/server/server-common.h>
|
||||||
|
|
||||||
#include "win_shadow.h"
|
#include "win_shadow.h"
|
||||||
|
|
||||||
@ -544,6 +545,10 @@ FREERDP_API const char* ShadowSubsystemName(void)
|
|||||||
|
|
||||||
FREERDP_API int ShadowSubsystemEntry(RDP_SHADOW_ENTRY_POINTS* pEntryPoints)
|
FREERDP_API int ShadowSubsystemEntry(RDP_SHADOW_ENTRY_POINTS* pEntryPoints)
|
||||||
{
|
{
|
||||||
|
const char name[] = "windows shadow subsystem";
|
||||||
|
const char* arg[] = { name };
|
||||||
|
|
||||||
|
freerdp_server_warn_unmaintained(ARRAYSIZE(arg), arg);
|
||||||
pEntryPoints->New = win_shadow_subsystem_new;
|
pEntryPoints->New = win_shadow_subsystem_new;
|
||||||
pEntryPoints->Free = win_shadow_subsystem_free;
|
pEntryPoints->Free = win_shadow_subsystem_free;
|
||||||
pEntryPoints->Init = win_shadow_subsystem_init;
|
pEntryPoints->Init = win_shadow_subsystem_init;
|
||||||
|
@ -127,14 +127,20 @@ extern "C"
|
|||||||
*/
|
*/
|
||||||
WINPR_API BOOL WLog_SetContext(wLog* log, const char* (*fkt)(void*), void* context);
|
WINPR_API BOOL WLog_SetContext(wLog* log, const char* (*fkt)(void*), void* context);
|
||||||
|
|
||||||
#define WLog_Print(_log, _log_level, ...) \
|
#define WLog_Print_unchecked(_log, _log_level, ...) \
|
||||||
do \
|
do \
|
||||||
{ \
|
{ \
|
||||||
if (WLog_IsLevelActive(_log, _log_level)) \
|
WLog_PrintMessage(_log, WLOG_MESSAGE_TEXT, _log_level, __LINE__, __FILE__, __func__, \
|
||||||
{ \
|
__VA_ARGS__); \
|
||||||
WLog_PrintMessage(_log, WLOG_MESSAGE_TEXT, _log_level, __LINE__, __FILE__, __func__, \
|
} while (0)
|
||||||
__VA_ARGS__); \
|
|
||||||
} \
|
#define WLog_Print(_log, _log_level, ...) \
|
||||||
|
do \
|
||||||
|
{ \
|
||||||
|
if (WLog_IsLevelActive(_log, _log_level)) \
|
||||||
|
{ \
|
||||||
|
WLog_Print_unchecked(_log, _log_level, ##__VA_ARGS__); \
|
||||||
|
} \
|
||||||
} while (0)
|
} while (0)
|
||||||
|
|
||||||
#define WLog_Print_tag(_tag, _log_level, ...) \
|
#define WLog_Print_tag(_tag, _log_level, ...) \
|
||||||
@ -146,14 +152,20 @@ extern "C"
|
|||||||
WLog_Print(_log_cached_ptr, _log_level, __VA_ARGS__); \
|
WLog_Print(_log_cached_ptr, _log_level, __VA_ARGS__); \
|
||||||
} while (0)
|
} while (0)
|
||||||
|
|
||||||
#define WLog_PrintVA(_log, _log_level, _args) \
|
#define WLog_PrintVA_unchecked(_log, _log_level, _args) \
|
||||||
do \
|
do \
|
||||||
{ \
|
{ \
|
||||||
if (WLog_IsLevelActive(_log, _log_level)) \
|
WLog_PrintMessageVA(_log, WLOG_MESSAGE_TEXT, _log_level, __LINE__, __FILE__, __func__, \
|
||||||
{ \
|
_args); \
|
||||||
WLog_PrintMessageVA(_log, WLOG_MESSAGE_TEXT, _log_level, __LINE__, __FILE__, __func__, \
|
} while (0)
|
||||||
_args); \
|
|
||||||
} \
|
#define WLog_PrintVA(_log, _log_level, _args) \
|
||||||
|
do \
|
||||||
|
{ \
|
||||||
|
if (WLog_IsLevelActive(_log, _log_level)) \
|
||||||
|
{ \
|
||||||
|
WLog_PrintVA_unchecked(_log, _log_level, _args); \
|
||||||
|
} \
|
||||||
} while (0)
|
} while (0)
|
||||||
|
|
||||||
#define WLog_Data(_log, _log_level, ...) \
|
#define WLog_Data(_log, _log_level, ...) \
|
||||||
|
Loading…
Reference in New Issue
Block a user