21#include <winpr/string.h>
22#include <freerdp/utils/warnings.h>
24static const DWORD level = WLOG_WARN;
26static void warn_contact_details(wLog* log)
30 " If problems occur please check https://github.com/FreeRDP/FreeRDP/issues for "
34 "Be prepared to fix issues yourself though as nobody is actively working on this.");
37 " Developers hang out in https://matrix.to/#/#FreeRDP:matrix.org?via=matrix.org "
38 "- don't hesitate to ask some questions. (replies might take some time depending "
39 "on your timezone) - if you intend using this component write us a message");
42void freerdp_warn_unmaintained(wLog* log,
const char* what, ...)
44 if (!WLog_IsLevelActive(log, level))
51 winpr_vasprintf(&str, &slen, what, ap);
54 WLog_Print_unchecked(log, level,
"[unmaintained] %s is currently unmaintained!", str);
56 warn_contact_details(log);
59void freerdp_warn_experimental(wLog* log,
const char* what, ...)
61 if (!WLog_IsLevelActive(log, level))
68 winpr_vasprintf(&str, &slen, what, ap);
71 WLog_Print_unchecked(log, level,
"[experimental] %s is currently experimental!", str);
73 warn_contact_details(log);
76void freerdp_warn_deprecated(wLog* log,
const char* what,
const char* replacement, ...)
78 if (!WLog_IsLevelActive(log, level))
85 winpr_vasprintf(&str, &slen, what, ap);
88 WLog_Print_unchecked(log, level,
"[deprecated] %s has been deprecated", str);
90 WLog_Print_unchecked(log, level,
"%s", replacement);
92 log, level,
"If you are interested in keeping %s alive get in touch with the developers",
96 warn_contact_details(log);