[settings] add deprecation warnings

direct struct access to rdpSettings now produces warnings if not
explicitly deactiaved by defining FREERDP_SETTINGS_INTERNAL_USE
This commit is contained in:
akallabeth
2023-10-16 12:59:19 +02:00
committed by akallabeth
parent 4e438d1c3e
commit cd4d77af86
40 changed files with 638 additions and 637 deletions

View File

@@ -38,72 +38,51 @@ set (SETTINGS_KEYS_POINTER "")
foreach(KEY ${SETTINGS_KEYS})
string(STRIP "${KEY}" TRIMMED_KEY)
string(REGEX MATCH "^ALIGN64[ \t ]+BOOL[ \t ]+" IS_BOOL "${TRIMMED_KEY}")
string(REGEX MATCH "^ALIGN64[ \t ]+INT16[ \t ]+" IS_INT16 "${TRIMMED_KEY}")
string(REGEX MATCH "^ALIGN64[ \t ]+UINT16[ \t ]+" IS_UINT16 "${TRIMMED_KEY}")
string(REGEX MATCH "^ALIGN64[ \t ]+INT32[ \t ]+" IS_INT32 "${TRIMMED_KEY}")
string(REGEX MATCH "^ALIGN64[ \t ]+UINT32[ \t ]+" IS_UINT32 "${TRIMMED_KEY}")
string(REGEX MATCH "^ALIGN64[ \t ]+INT64[ \t ]+" IS_INT64 "${TRIMMED_KEY}")
string(REGEX MATCH "^ALIGN64[ \t ]+UINT64[ \t ]+" IS_UINT64 "${TRIMMED_KEY}")
string(REGEX MATCH "^ALIGN64[ \t ]+(char|CHAR)[ \t ]*\\*[ \t ]+" IS_STRING "${TRIMMED_KEY}")
string(REGEX MATCH "^SETTINGS_DEPRECATED\\(ALIGN64[ \t ]+BOOL[ \t ]+" IS_BOOL "${TRIMMED_KEY}")
string(REGEX MATCH "^SETTINGS_DEPRECATED\\(ALIGN64[ \t ]+INT16[ \t ]+" IS_INT16 "${TRIMMED_KEY}")
string(REGEX MATCH "^SETTINGS_DEPRECATED\\(ALIGN64[ \t ]+UINT16[ \t ]+" IS_UINT16 "${TRIMMED_KEY}")
string(REGEX MATCH "^SETTINGS_DEPRECATED\\(ALIGN64[ \t ]+INT32[ \t ]+" IS_INT32 "${TRIMMED_KEY}")
string(REGEX MATCH "^SETTINGS_DEPRECATED\\(ALIGN64[ \t ]+UINT32[ \t ]+" IS_UINT32 "${TRIMMED_KEY}")
string(REGEX MATCH "^SETTINGS_DEPRECATED\\(ALIGN64[ \t ]+INT64[ \t ]+" IS_INT64 "${TRIMMED_KEY}")
string(REGEX MATCH "^SETTINGS_DEPRECATED\\(ALIGN64[ \t ]+UINT64[ \t ]+" IS_UINT64 "${TRIMMED_KEY}")
string(REGEX MATCH "^SETTINGS_DEPRECATED\\(ALIGN64[ \t ]+(char|CHAR)[ \t ]*\\*[ \t ]+" IS_STRING "${TRIMMED_KEY}")
string(REGEX REPLACE ".+/\\*" "" index "${TRIMMED_KEY}")
string(REGEX REPLACE "[ \t/\\*]" "" index "${index}")
if (index MATCHES "^[0-9]+$")
if (IS_BOOL)
string(REGEX REPLACE "^ALIGN64[ \t ]+BOOL[ \t ]+" "" VALUE "${TRIMMED_KEY}")
string(FIND "${VALUE}" ";" SEMICOLON)
string(SUBSTRING "${VALUE}" 0 ${SEMICOLON} KEY_VALUE)
set(KEY_VALUE "FreeRDP_${KEY_VALUE} = ${index}")
string(REGEX REPLACE "^SETTINGS_DEPRECATED\\(ALIGN64[ \t ]+[a-zA-Z0-9_\\*]+[ \t ]+" "" VALUE ${TRIMMED_KEY})
string(STRIP "${VALUE}" VALUE)
string(FIND "${VALUE}" ")" SEMICOLON)
string(SUBSTRING "${VALUE}" 0 ${SEMICOLON} KEY_VALUE)
if (IS_BOOL)
set(KEY_VALUE "FreeRDP_${KEY_VALUE} = ${index}")
list(APPEND SETTINGS_KEYS_BOOL ${KEY_VALUE})
elseif(IS_INT16)
string(REGEX REPLACE "^ALIGN64[ \t ]+INT16[ \t ]+" "" VALUE "${TRIMMED_KEY}")
string(FIND "${VALUE}" ";" SEMICOLON)
string(SUBSTRING "${VALUE}" 0 ${SEMICOLON} KEY_VALUE)
set(KEY_VALUE "FreeRDP_${KEY_VALUE} = ${index}")
elseif(IS_INT16)
set(KEY_VALUE "FreeRDP_${KEY_VALUE} = ${index}")
list(APPEND SETTINGS_KEYS_INT16 ${KEY_VALUE})
elseif(IS_UINT16)
string(REGEX REPLACE "^ALIGN64[ \t ]+UINT16[ \t ]+" "" VALUE "${TRIMMED_KEY}")
string(FIND "${VALUE}" ";" SEMICOLON)
string(SUBSTRING "${VALUE}" 0 ${SEMICOLON} KEY_VALUE)
set(KEY_VALUE "FreeRDP_${KEY_VALUE} = ${index}")
elseif(IS_UINT16)
set(KEY_VALUE "FreeRDP_${KEY_VALUE} = ${index}")
list(APPEND SETTINGS_KEYS_UINT16 ${KEY_VALUE})
elseif(IS_INT32)
string(REGEX REPLACE "^ALIGN64[ \t ]+INT32[ \t ]+" "" VALUE "${TRIMMED_KEY}")
string(FIND "${VALUE}" ";" SEMICOLON)
string(SUBSTRING "${VALUE}" 0 ${SEMICOLON} KEY_VALUE)
set(KEY_VALUE "FreeRDP_${KEY_VALUE} = ${index}")
elseif(IS_INT32)
set(KEY_VALUE "FreeRDP_${KEY_VALUE} = ${index}")
list(APPEND SETTINGS_KEYS_INT32 ${KEY_VALUE})
elseif(IS_UINT32)
string(REGEX REPLACE "^ALIGN64[ \t ]+UINT32[ \t ]+" "" VALUE "${TRIMMED_KEY}")
string(FIND "${VALUE}" ";" SEMICOLON)
string(SUBSTRING "${VALUE}" 0 ${SEMICOLON} KEY_VALUE)
set(KEY_VALUE "FreeRDP_${KEY_VALUE} = ${index}")
elseif(IS_UINT32)
set(KEY_VALUE "FreeRDP_${KEY_VALUE} = ${index}")
list(APPEND SETTINGS_KEYS_UINT32 ${KEY_VALUE})
elseif(IS_INT64)
string(REGEX REPLACE "^ALIGN64[ \t ]+INT64[ \t ]+" "" VALUE "${TRIMMED_KEY}")
string(FIND "${VALUE}" ";" SEMICOLON)
string(SUBSTRING "${VALUE}" 0 ${SEMICOLON} KEY_VALUE)
set(KEY_VALUE "FreeRDP_${KEY_VALUE} = ${index}")
elseif(IS_INT64)
set(KEY_VALUE "FreeRDP_${KEY_VALUE} = ${index}")
list(APPEND SETTINGS_KEYS_INT64 ${KEY_VALUE})
elseif(IS_UINT64)
string(REGEX REPLACE "^ALIGN64[ \t ]+UINT64[ \t ]+" "" VALUE "${TRIMMED_KEY}")
string(FIND "${VALUE}" ";" SEMICOLON)
string(SUBSTRING "${VALUE}" 0 ${SEMICOLON} KEY_VALUE)
set(KEY_VALUE "FreeRDP_${KEY_VALUE} = ${index}")
elseif(IS_UINT64)
set(KEY_VALUE "FreeRDP_${KEY_VALUE} = ${index}")
list(APPEND SETTINGS_KEYS_UINT64 ${KEY_VALUE})
elseif(IS_STRING)
string(REGEX REPLACE "^ALIGN64[ \t ]+(char|CHAR)[ \t ]*\\*[ \t ]+" "" VALUE "${TRIMMED_KEY}")
string(FIND "${VALUE}" ";" SEMICOLON)
string(SUBSTRING "${VALUE}" 0 ${SEMICOLON} KEY_VALUE)
string(SUBSTRING "${VALUE}" 0 ${SEMICOLON} KEY_VALUE)
set(KEY_VALUE "FreeRDP_${KEY_VALUE} = ${index}")
list(APPEND SETTINGS_KEYS_STRING ${KEY_VALUE})
else()
string(REGEX REPLACE "^ALIGN64[ \t ]+[a-zA-Z0-9_\\*]+[ \t ]*\\*[ \t ]+" "" VALUE "${TRIMMED_KEY}")
string(FIND "${VALUE}" ";" SEMICOLON)
string(SUBSTRING "${VALUE}" 0 ${SEMICOLON} KEY_VALUE)
set(KEY_VALUE "FreeRDP_${KEY_VALUE} = ${index}")
set(KEY_VALUE "FreeRDP_${KEY_VALUE} = ${index}")
list(APPEND SETTINGS_KEYS_POINTER ${KEY_VALUE})
endif()
endif()

View File

@@ -22,7 +22,6 @@
#define FREERDP_CRYPTO_PRIVATEKEY_H
#include <freerdp/api.h>
#include <freerdp/settings.h>
#ifdef __cplusplus
extern "C"

View File

@@ -32,16 +32,16 @@
#include <freerdp/types.h>
#include <freerdp/redirection.h>
#if !defined(WITH_OPAQUE_SETTINGS)
#include <freerdp/settings_types_private.h>
#endif
#include <freerdp/settings_keys.h>
#include <freerdp/settings_types.h>
#include <freerdp/crypto/certificate.h>
#include <freerdp/crypto/privatekey.h>
#if !defined(WITH_OPAQUE_SETTINGS)
#include <freerdp/settings_types_private.h>
#endif
#ifdef __cplusplus
extern "C"
{

View File

@@ -32,8 +32,6 @@
#include <freerdp/types.h>
#include <freerdp/redirection.h>
#include <freerdp/settings_keys.h>
#include <freerdp/crypto/certificate.h>
#include <freerdp/crypto/privatekey.h>

File diff suppressed because it is too large Load Diff