From d03b4b91d5219dd838696a3ada35531af9eb7981 Mon Sep 17 00:00:00 2001 From: akallabeth Date: Mon, 3 Mar 2025 17:26:41 +0100 Subject: [PATCH] [cmake,freerdp] add WITH_FREERDP_3x_DEPRECATED This new CMake option (ON by default) allows building the library with all symbols deprecated during 3.x release cycle disabled. This allows compatibility testing external applications for future FreeRDP 4.x support --- CMakeLists.txt | 5 +++++ include/CMakeLists.txt | 6 +++++- include/freerdp/codecs.h | 2 ++ include/freerdp/freerdp.h | 7 +++++++ include/freerdp/locale/keyboard.h | 2 ++ include/freerdp/server/proxy/proxy_config.h | 2 ++ include/freerdp/server/shadow.h | 4 ++++ libfreerdp/common/settings_getters.c | 4 ++++ libfreerdp/core/codecs.c | 2 ++ libfreerdp/core/freerdp.c | 6 ++++++ libfreerdp/locale/CMakeLists.txt | 10 ++++++---- libfreerdp/locale/keyboard.c | 12 ++++++++++-- libfreerdp/locale/keyboard_x11.h | 6 +++--- libfreerdp/locale/xkb_layout_ids.h | 6 +++--- server/shadow/shadow_capture.c | 2 ++ server/shadow/shadow_subsystem.c | 2 ++ tools/update-settings-tests | 4 ++++ winpr/include/winpr/custom-crypto.h | 2 ++ winpr/libwinpr/crypto/cipher.c | 2 ++ 19 files changed, 73 insertions(+), 13 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 81b80591d..bcd102511 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -163,6 +163,11 @@ if(WITH_FREERDP_DEPRECATED) add_compile_definitions(WITH_FREERDP_DEPRECATED) endif() +option(WITH_FREERDP_3x_DEPRECATED "Build FreeRDP 3x deprecated symbols" ON) +if(WITH_FREERDP_3x_DEPRECATED) + add_compile_definitions(WITH_FREERDP_3x_DEPRECATED) +endif() + option(WITH_FREERDP_DEPRECATED_COMMANDLINE "Build FreeRDP deprecated command line options" OFF) if(WITH_FREERDP_DEPRECATED_COMMANDLINE) add_compile_definitions(WITH_FREERDP_DEPRECATED_COMMANDLINE) diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt index 7f9a7340a..17fd5e4bf 100644 --- a/include/CMakeLists.txt +++ b/include/CMakeLists.txt @@ -17,7 +17,11 @@ # See the License for the specific language governing permissions and # limitations under the License. -option(WITH_OPAQUE_SETTINGS "Hide rdpSettings struct definition, only allow getter/setter access" OFF) +if(WITH_FREERDP_3x_DEPRECATED) + option(WITH_OPAQUE_SETTINGS "Hide rdpSettings struct definition, only allow getter/setter access" OFF) +else() + set(WITH_OPAQUE_SETTINGS ON CACHE INTERNAL "WITH_FREERDP_3x_DEPRECATED") +endif() # prepare paths for C file(TO_NATIVE_PATH "${FREERDP_DATA_PATH}" NATIVE_FREERDP_DATA_PATH) diff --git a/include/freerdp/codecs.h b/include/freerdp/codecs.h index 8869b6109..e6b8c30ec 100644 --- a/include/freerdp/codecs.h +++ b/include/freerdp/codecs.h @@ -86,12 +86,14 @@ extern "C" WINPR_ATTR_MALLOC(freerdp_client_codecs_free, 1) FREERDP_API rdpCodecs* freerdp_client_codecs_new(UINT32 TheadingFlags); +#if defined(WITH_FREERDP_3x_DEPRECATED) WINPR_DEPRECATED_VAR("[since 3.6.0] Use freerdp_client_codecs_free", FREERDP_API void codecs_free(rdpCodecs* codecs)); WINPR_DEPRECATED_VAR("[since 3.6.0] Use freerdp_client_codecs_new", WINPR_ATTR_MALLOC(codecs_free, 1) FREERDP_API rdpCodecs* codecs_new(rdpContext* context)); +#endif #ifdef __cplusplus } diff --git a/include/freerdp/freerdp.h b/include/freerdp/freerdp.h index 91e60177b..7b3350b09 100644 --- a/include/freerdp/freerdp.h +++ b/include/freerdp/freerdp.h @@ -569,14 +569,18 @@ owned by rdpRdp */ FREERDP_API BOOL freerdp_connect(freerdp* instance); +#if defined(WITH_FREERDP_3x_DEPRECATED) WINPR_DEPRECATED_VAR("use freerdp_abort_connect_context instead", FREERDP_API BOOL freerdp_abort_connect(freerdp* instance)); +#endif FREERDP_API BOOL freerdp_abort_connect_context(rdpContext* context); FREERDP_API HANDLE freerdp_abort_event(rdpContext* context); +#if defined(WITH_FREERDP_3x_DEPRECATED) WINPR_DEPRECATED_VAR("use freerdp_shall_disconnect_context instead", FREERDP_API BOOL freerdp_shall_disconnect(freerdp* instance)); +#endif FREERDP_API BOOL freerdp_shall_disconnect_context(const rdpContext* context); FREERDP_API BOOL freerdp_disconnect(freerdp* instance); @@ -591,8 +595,11 @@ owned by rdpRdp */ */ FREERDP_API const char* freerdp_disconnect_reason_string(int reason); +#if defined(WITH_FREERDP_3x_DEPRECATED) WINPR_DEPRECATED_VAR("use freerdp_disconnect_before_reconnect_context instead", FREERDP_API BOOL freerdp_disconnect_before_reconnect(freerdp* instance)); +#endif + FREERDP_API BOOL freerdp_disconnect_before_reconnect_context(rdpContext* context); FREERDP_API BOOL freerdp_reconnect(freerdp* instance); diff --git a/include/freerdp/locale/keyboard.h b/include/freerdp/locale/keyboard.h index 82b13c3f4..4dcdf655a 100644 --- a/include/freerdp/locale/keyboard.h +++ b/include/freerdp/locale/keyboard.h @@ -262,6 +262,7 @@ FREERDP_API const char* freerdp_keyboard_get_layout_name_from_id(DWORD keyboardL */ FREERDP_API DWORD freerdp_keyboard_get_layout_id_from_name(const char* name); +#if defined(WITH_FREERDP_3x_DEPRECATED) WINPR_DEPRECATED_VAR("since 3.11.0, implement yourself in client", FREERDP_API DWORD freerdp_keyboard_init(DWORD keyboardLayoutId)); @@ -276,6 +277,7 @@ WINPR_DEPRECATED_VAR("since 3.11.0, implement yourself in client", WINPR_DEPRECATED_VAR("since 3.11.0, implement yourself in client", FREERDP_API DWORD freerdp_keyboard_get_x11_keycode_from_rdp_scancode( DWORD scancode, BOOL extended)); +#endif /** @brief deallocate a \b FREERDP_REMAP_TABLE * diff --git a/include/freerdp/server/proxy/proxy_config.h b/include/freerdp/server/proxy/proxy_config.h index 73f770706..98dd6dc45 100644 --- a/include/freerdp/server/proxy/proxy_config.h +++ b/include/freerdp/server/proxy/proxy_config.h @@ -86,11 +86,13 @@ extern "C" size_t InterceptCount; /* clipboard specific settings */ +#if defined(WITH_FREERDP_3x_DEPRECATED) WINPR_DEPRECATED_VAR("[since 3.6.0] Unused, ignore", BOOL TextOnly); WINPR_DEPRECATED_VAR("[since 3.6.0] Unused, ignore", UINT32 MaxTextLength); /* gfx settings */ WINPR_DEPRECATED_VAR("[since 3.6.0] Unused, ignore", BOOL DecodeGFX); +#endif /* modules */ char** Modules; /* module file names to load */ diff --git a/include/freerdp/server/shadow.h b/include/freerdp/server/shadow.h index 33cc0a369..bf36bc59e 100644 --- a/include/freerdp/server/shadow.h +++ b/include/freerdp/server/shadow.h @@ -303,11 +303,13 @@ extern "C" FREERDP_API void shadow_subsystem_set_entry_builtin(const char* name); FREERDP_API void shadow_subsystem_set_entry(pfnShadowSubsystemEntry pEntry); +#if defined(WITH_FREERDP_3x_DEPRECATED) WINPR_DEPRECATED_VAR( "[since 3.4.0] Use shadow_subsystem_pointer_convert_alpha_pointer_data_to_format instead", FREERDP_API int shadow_subsystem_pointer_convert_alpha_pointer_data( const BYTE* WINPR_RESTRICT pixels, BOOL premultiplied, UINT32 width, UINT32 height, SHADOW_MSG_OUT_POINTER_ALPHA_UPDATE* WINPR_RESTRICT pointerColor)); +#endif /** @brief Convert a pointer image from input format to RDP specific encoding * @@ -347,11 +349,13 @@ extern "C" FREERDP_API int shadow_capture_align_clip_rect(RECTANGLE_16* rect, const RECTANGLE_16* clip); +#if defined(WITH_FREERDP_3x_DEPRECATED) WINPR_DEPRECATED_VAR("[since 3.4.0] Use shadow_capture_compare_with_format", FREERDP_API int shadow_capture_compare( const BYTE* WINPR_RESTRICT pData1, UINT32 nStep1, UINT32 nWidth, UINT32 nHeight, const BYTE* WINPR_RESTRICT pData2, UINT32 nStep2, RECTANGLE_16* WINPR_RESTRICT rect)); +#endif /** @brief Compare two framebuffer images of possibly different formats with each other * diff --git a/libfreerdp/common/settings_getters.c b/libfreerdp/common/settings_getters.c index f41b8a9aa..6331933f3 100644 --- a/libfreerdp/common/settings_getters.c +++ b/libfreerdp/common/settings_getters.c @@ -2002,6 +2002,7 @@ UINT32 freerdp_settings_get_uint32(WINPR_ATTR_UNUSED const rdpSettings* settings case FreeRDP_VCFlags: return settings->VCFlags; +#if defined(WITH_FREERDP_3x_DEPRECATED) // API Compatibility section, remove with FreeRDP 4.x case (FreeRDP_Settings_Keys_UInt32)FreeRDP_MonitorLocalShiftX: return (UINT32)settings->MonitorLocalShiftX; @@ -2010,6 +2011,7 @@ UINT32 freerdp_settings_get_uint32(WINPR_ATTR_UNUSED const rdpSettings* settings case (FreeRDP_Settings_Keys_UInt32)FreeRDP_MonitorLocalShiftY: return (UINT32)settings->MonitorLocalShiftY; +#endif default: WLog_ERR(TAG, "Invalid key index %" PRIuz " [%s|%s]", id, freerdp_settings_get_name_for_key(id), @@ -2531,6 +2533,7 @@ BOOL freerdp_settings_set_uint32(WINPR_ATTR_UNUSED rdpSettings* settings, settings->VCFlags = cnv.c; break; +#if defined(WITH_FREERDP_3x_DEPRECATED) // API Compatibility section, remove with FreeRDP 4.x case FreeRDP_MonitorLocalShiftX: settings->MonitorLocalShiftX = (int32_t)cnv.c; @@ -2541,6 +2544,7 @@ BOOL freerdp_settings_set_uint32(WINPR_ATTR_UNUSED rdpSettings* settings, settings->MonitorLocalShiftY = (int32_t)cnv.c; break; +#endif default: WLog_ERR(TAG, "Invalid key index %" PRIuz " [%s|%s]", id, freerdp_settings_get_name_for_key(id), diff --git a/libfreerdp/core/codecs.c b/libfreerdp/core/codecs.c index 4dea7a47e..19c558aa3 100644 --- a/libfreerdp/core/codecs.c +++ b/libfreerdp/core/codecs.c @@ -239,6 +239,7 @@ BOOL freerdp_client_codecs_reset(rdpCodecs* codecs, UINT32 flags, UINT32 width, return rc; } +#if defined(WITH_FREERDP_3x_DEPRECATED) rdpCodecs* codecs_new(rdpContext* context) { if (!context || !context->settings) @@ -252,6 +253,7 @@ void codecs_free(rdpCodecs* codecs) { freerdp_client_codecs_free(codecs); } +#endif rdpCodecs* freerdp_client_codecs_new(UINT32 ThreadingFlags) { diff --git a/libfreerdp/core/freerdp.c b/libfreerdp/core/freerdp.c index 58852cf4f..e5388ec12 100644 --- a/libfreerdp/core/freerdp.c +++ b/libfreerdp/core/freerdp.c @@ -299,6 +299,7 @@ freerdp_connect_finally: return status; } +#if defined(WITH_FREERDP_3x_DEPRECATED) BOOL freerdp_abort_connect(freerdp* instance) { if (!instance) @@ -306,6 +307,7 @@ BOOL freerdp_abort_connect(freerdp* instance) return freerdp_abort_connect_context(instance->context); } +#endif BOOL freerdp_abort_connect_context(rdpContext* context) { @@ -636,11 +638,13 @@ BOOL freerdp_disconnect(freerdp* instance) return rc; } +#if defined(WITH_FREERDP_3x_DEPRECATED) BOOL freerdp_disconnect_before_reconnect(freerdp* instance) { WINPR_ASSERT(instance); return freerdp_disconnect_before_reconnect_context(instance->context); } +#endif BOOL freerdp_disconnect_before_reconnect_context(rdpContext* context) { @@ -669,6 +673,7 @@ BOOL freerdp_reconnect(freerdp* instance) return rdp_client_reconnect(rdp); } +#if defined(WITH_FREERDP_3x_DEPRECATED) BOOL freerdp_shall_disconnect(freerdp* instance) { if (!instance) @@ -676,6 +681,7 @@ BOOL freerdp_shall_disconnect(freerdp* instance) return freerdp_shall_disconnect_context(instance->context); } +#endif BOOL freerdp_shall_disconnect_context(const rdpContext* context) { diff --git a/libfreerdp/locale/CMakeLists.txt b/libfreerdp/locale/CMakeLists.txt index 322761c55..cead128b7 100644 --- a/libfreerdp/locale/CMakeLists.txt +++ b/libfreerdp/locale/CMakeLists.txt @@ -20,9 +20,11 @@ set(MODULE_PREFIX "FREERDP_LOCALE") set(SRCS keyboard_layout.c keyboard.c locale.c liblocale.h) -set(X11_SRCS keyboard_x11.c keyboard_x11.h xkb_layout_ids.c xkb_layout_ids.h) +if(WITH_FREERDP_3x_DEPRECATED) + set(X11_SRCS keyboard_x11.c keyboard_x11.h xkb_layout_ids.c xkb_layout_ids.h) -set(XKBFILE_SRCS keyboard_xkbfile.c keyboard_xkbfile.h) + set(XKBFILE_SRCS keyboard_xkbfile.c keyboard_xkbfile.h) +endif() set(SUN_SRCS keyboard_sun.c keyboard_sun.h) @@ -52,7 +54,7 @@ if(APPLE) freerdp_library_add(${CORE_FOUNDATION}) endif() -if(WITH_X11) +if(WITH_X11 AND WITH_FREERDP_3x_DEPRECATED) find_package(X11 REQUIRED) freerdp_definition_add(WITH_X11) @@ -75,7 +77,7 @@ if(WITH_X11) endif() endif() -if(WITH_WAYLAND) +if(WITH_WAYLAND AND WITH_FREERDP_3x_DEPRECATED) freerdp_definition_add(WITH_WAYLAND) endif() diff --git a/libfreerdp/locale/keyboard.c b/libfreerdp/locale/keyboard.c index 34b3e9d40..f8744435e 100644 --- a/libfreerdp/locale/keyboard.c +++ b/libfreerdp/locale/keyboard.c @@ -35,25 +35,29 @@ #include "liblocale.h" +#if defined(WITH_FREERDP_3x_DEPRECATED) +#define TAG FREERDP_TAG("locale.keyboard") + #if defined(__MACOSX__) #include "keyboard_apple.h" #endif -#define TAG FREERDP_TAG("locale.keyboard") - #ifdef WITH_X11 #include "keyboard_x11.h" #ifdef WITH_XKBFILE #include "keyboard_xkbfile.h" #endif +#endif #endif +#if defined(WITH_FREERDP_3x_DEPRECATED) static WINPR_KEYCODE_TYPE maptype = WINPR_KEYCODE_TYPE_NONE; static DWORD VIRTUAL_SCANCODE_TO_X11_KEYCODE[256][2] = { 0 }; static DWORD X11_KEYCODE_TO_VIRTUAL_SCANCODE[256] = { 0 }; static DWORD REMAPPING_TABLE[0x10000] = { 0 }; +#endif struct rdp_remap_table { @@ -226,6 +230,7 @@ static const struct scancode_map_entry RDP_SCANCODE_MAP[] = { { RDP_SCANCODE_LAUNCH_APP2, "VK_LAUNCH_APP2" }, }; +#if defined(WITH_FREERDP_3x_DEPRECATED) static int freerdp_detect_keyboard(DWORD* keyboardLayoutId) { #if defined(_WIN32) @@ -348,6 +353,7 @@ DWORD freerdp_keyboard_init(DWORD keyboardLayoutId) return keyboardLayoutId; } +#endif FREERDP_REMAP_TABLE* freerdp_keyboard_remap_string_to_list(const char* list) { @@ -395,6 +401,7 @@ fail: return remap_table; } +#if defined(WITH_FREERDP_3x_DEPRECATED) DWORD freerdp_keyboard_init_ex(DWORD keyboardLayoutId, const char* keyboardRemappingList) { DWORD res = freerdp_keyboard_init(keyboardLayoutId); @@ -483,6 +490,7 @@ DWORD freerdp_keyboard_get_x11_keycode_from_rdp_scancode(DWORD scancode, BOOL ex else return x11[0]; } +#endif const char* freerdp_keyboard_scancode_name(DWORD scancode) { diff --git a/libfreerdp/locale/keyboard_x11.h b/libfreerdp/locale/keyboard_x11.h index 563aca163..72fe850ac 100644 --- a/libfreerdp/locale/keyboard_x11.h +++ b/libfreerdp/locale/keyboard_x11.h @@ -22,8 +22,8 @@ #include -WINPR_DEPRECATED_VAR( - "since 3.13.0, implement in client code", - FREERDP_LOCAL int freerdp_detect_keyboard_layout_from_xkb(DWORD* keyboardLayoutId)); +#if defined(WITH_FREERDP_3x_DEPRECATED) +FREERDP_LOCAL int freerdp_detect_keyboard_layout_from_xkb(DWORD* keyboardLayoutId); +#endif #endif /* FREERDP_LOCALE_KEYBOARD_X11_H */ diff --git a/libfreerdp/locale/xkb_layout_ids.h b/libfreerdp/locale/xkb_layout_ids.h index 2adb8fbee..ae8cce9f8 100644 --- a/libfreerdp/locale/xkb_layout_ids.h +++ b/libfreerdp/locale/xkb_layout_ids.h @@ -23,8 +23,8 @@ #include #include -WINPR_DEPRECATED_VAR("since 3.13.0, implement in client code", - FREERDP_LOCAL UINT32 find_keyboard_layout_in_xorg_rules(const char* layout, - const char* variant)); +#if defined(WITH_FREERDP_3x_DEPRECATED) +FREERDP_LOCAL UINT32 find_keyboard_layout_in_xorg_rules(const char* layout, const char* variant); +#endif #endif /* FREERDP_LIB_LOCALE_XKB_LAYOUT_IDS_H */ diff --git a/server/shadow/shadow_capture.c b/server/shadow/shadow_capture.c index bd1790ae6..b18839fab 100644 --- a/server/shadow/shadow_capture.c +++ b/server/shadow/shadow_capture.c @@ -76,6 +76,7 @@ int shadow_capture_align_clip_rect(RECTANGLE_16* rect, const RECTANGLE_16* clip) return 1; } +#if defined(WITH_FREERDP_3x_DEPRECATED) int shadow_capture_compare(const BYTE* WINPR_RESTRICT pData1, UINT32 nStep1, UINT32 nWidth, UINT32 nHeight, const BYTE* WINPR_RESTRICT pData2, UINT32 nStep2, RECTANGLE_16* WINPR_RESTRICT rect) @@ -83,6 +84,7 @@ int shadow_capture_compare(const BYTE* WINPR_RESTRICT pData1, UINT32 nStep1, UIN return shadow_capture_compare_with_format(pData1, PIXEL_FORMAT_BGRX32, nStep1, nWidth, nHeight, pData2, PIXEL_FORMAT_BGRX32, nStep2, rect); } +#endif static BOOL color_equal(UINT32 colorA, UINT32 formatA, UINT32 colorB, UINT32 formatB) { diff --git a/server/shadow/shadow_subsystem.c b/server/shadow/shadow_subsystem.c index bbdb568ef..c8ca4014e 100644 --- a/server/shadow/shadow_subsystem.c +++ b/server/shadow/shadow_subsystem.c @@ -189,6 +189,7 @@ UINT32 shadow_enum_monitors(MONITOR_DEF* monitors, UINT32 maxMonitors) * and andmask data and fill into SHADOW_MSG_OUT_POINTER_ALPHA_UPDATE * Caller should free the andMaskData and xorMaskData later. */ +#if defined(WITH_FREERDP_3x_DEPRECATED) int shadow_subsystem_pointer_convert_alpha_pointer_data( const BYTE* WINPR_RESTRICT pixels, BOOL premultiplied, UINT32 width, UINT32 height, SHADOW_MSG_OUT_POINTER_ALPHA_UPDATE* WINPR_RESTRICT pointerColor) @@ -196,6 +197,7 @@ int shadow_subsystem_pointer_convert_alpha_pointer_data( return shadow_subsystem_pointer_convert_alpha_pointer_data_to_format( pixels, PIXEL_FORMAT_BGRX32, premultiplied, width, height, pointerColor); } +#endif int shadow_subsystem_pointer_convert_alpha_pointer_data_to_format( const BYTE* pixels, UINT32 format, BOOL premultiplied, UINT32 width, UINT32 height, diff --git a/tools/update-settings-tests b/tools/update-settings-tests index 8d33ef613..66acc647b 100755 --- a/tools/update-settings-tests +++ b/tools/update-settings-tests @@ -101,11 +101,13 @@ def write_getter_body(f, values, ret, keys, isPointer, compat_values, typestr, e cast = '(void*)' write_getter_case(f, val, cast, None) if compat_values: + f.write('#if defined(WITH_FREERDP_3x_DEPRECATED)\n') for i in range(len(compat_values)): val = compat_values[i] cast = '(' + entry_type + ')' f.write('\t\t// API Compatibility section, remove with FreeRDP 4.x\n') write_getter_case(f, val, cast, typestr) + f.write('#endif\n') f.write('\t\tdefault:\n') f.write('\t\t\tWLog_ERR(TAG, "Invalid key index %" PRIuz " [%s|%s]", id, freerdp_settings_get_name_for_key(id), freerdp_settings_get_type_name_for_key(id));\n') f.write('\t\t\tWINPR_ASSERT(FALSE);\n') @@ -217,10 +219,12 @@ def write_setter(f, entry_dict, entry_type, entry_name, postfix, compat_dict): cast = '(' + k + ')' write_setter_case(f, val, postfix, isPointer, cast) if compat_values: + f.write('#if defined(WITH_FREERDP_3x_DEPRECATED)\n') for val in compat_values: cast = '(int32_t)' f.write('\t\t// API Compatibility section, remove with FreeRDP 4.x\n') write_setter_case(f, val, postfix, isPointer, cast) + f.write('#endif\n') f.write('\t\tdefault:\n') f.write('\t\t\tWLog_ERR(TAG, "Invalid key index %" PRIuz " [%s|%s]", id, freerdp_settings_get_name_for_key(id), freerdp_settings_get_type_name_for_key(id));\n') f.write('\t\t\treturn FALSE;\n') diff --git a/winpr/include/winpr/custom-crypto.h b/winpr/include/winpr/custom-crypto.h index e33a995cb..19dbc204b 100644 --- a/winpr/include/winpr/custom-crypto.h +++ b/winpr/include/winpr/custom-crypto.h @@ -264,12 +264,14 @@ extern "C" WINPR_API void winpr_Cipher_Free(WINPR_CIPHER_CTX* ctx); +#if defined(WITH_FREERDP_3x_DEPRECATED) WINPR_DEPRECATED_VAR("[since 3.10.0] use winpr_Cipher_NewEx", WINPR_ATTR_MALLOC(winpr_Cipher_Free, 1) WINPR_API WINPR_CIPHER_CTX* winpr_Cipher_New(WINPR_CIPHER_TYPE cipher, WINPR_CRYPTO_OPERATION op, const void* key, const void* iv)); +#endif /** @brief Create a new \b WINPR_CIPHER_CTX * diff --git a/winpr/libwinpr/crypto/cipher.c b/winpr/libwinpr/crypto/cipher.c index b9f64e065..0df944a5b 100644 --- a/winpr/libwinpr/crypto/cipher.c +++ b/winpr/libwinpr/crypto/cipher.c @@ -574,11 +574,13 @@ mbedtls_cipher_type_t winpr_mbedtls_get_cipher_type(int cipher) } #endif +#if defined(WITH_FREERDP_3x_DEPRECATED) WINPR_CIPHER_CTX* winpr_Cipher_New(WINPR_CIPHER_TYPE cipher, WINPR_CRYPTO_OPERATION op, const void* key, const void* iv) { return winpr_Cipher_NewEx(cipher, op, key, 0, iv, 0); } +#endif WINPR_API WINPR_CIPHER_CTX* winpr_Cipher_NewEx(WINPR_CIPHER_TYPE cipher, WINPR_CRYPTO_OPERATION op, const void* key, WINPR_ATTR_UNUSED size_t keylen,