From 399d92f26e839eecf348b62e7167c9524d579524 Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Sun, 15 Feb 2026 22:45:00 +0100 Subject: [PATCH] [winpr] mark function pointers [[nodiscard]] --- winpr/include/winpr/sspi.h | 86 +++++++++--------- winpr/include/winpr/wlog.h | 8 +- winpr/include/winpr/wtsapi.h | 146 +++++++++++++++---------------- winpr/libwinpr/utils/wlog/wlog.h | 14 +-- 4 files changed, 127 insertions(+), 127 deletions(-) diff --git a/winpr/include/winpr/sspi.h b/winpr/include/winpr/sspi.h index 1b325de2b..5073f9334 100644 --- a/winpr/include/winpr/sspi.h +++ b/winpr/include/winpr/sspi.h @@ -862,7 +862,7 @@ typedef SECURITY_STATUS (*psSspiNtlmHashCallback)(void* client, typedef struct { char* samFile; - psSspiNtlmHashCallback hashCallback; + WINPR_ATTR_NODISCARD psSspiNtlmHashCallback hashCallback; void* hashCallbackArg; } SEC_WINPR_NTLM_SETTINGS; @@ -1126,68 +1126,68 @@ typedef SECURITY_STATUS(SEC_ENTRY* SET_CREDENTIALS_ATTRIBUTES_FN_W)(PCredHandle typedef struct { UINT32 dwVersion; - ENUMERATE_SECURITY_PACKAGES_FN_A EnumerateSecurityPackagesA; - QUERY_CREDENTIALS_ATTRIBUTES_FN_A QueryCredentialsAttributesA; - ACQUIRE_CREDENTIALS_HANDLE_FN_A AcquireCredentialsHandleA; + WINPR_ATTR_NODISCARD ENUMERATE_SECURITY_PACKAGES_FN_A EnumerateSecurityPackagesA; + WINPR_ATTR_NODISCARD QUERY_CREDENTIALS_ATTRIBUTES_FN_A QueryCredentialsAttributesA; + WINPR_ATTR_NODISCARD ACQUIRE_CREDENTIALS_HANDLE_FN_A AcquireCredentialsHandleA; FREE_CREDENTIALS_HANDLE_FN FreeCredentialsHandle; void* Reserved2; - INITIALIZE_SECURITY_CONTEXT_FN_A InitializeSecurityContextA; - ACCEPT_SECURITY_CONTEXT_FN AcceptSecurityContext; - COMPLETE_AUTH_TOKEN_FN CompleteAuthToken; + WINPR_ATTR_NODISCARD INITIALIZE_SECURITY_CONTEXT_FN_A InitializeSecurityContextA; + WINPR_ATTR_NODISCARD ACCEPT_SECURITY_CONTEXT_FN AcceptSecurityContext; + WINPR_ATTR_NODISCARD COMPLETE_AUTH_TOKEN_FN CompleteAuthToken; DELETE_SECURITY_CONTEXT_FN DeleteSecurityContext; - APPLY_CONTROL_TOKEN_FN ApplyControlToken; - QUERY_CONTEXT_ATTRIBUTES_FN_A QueryContextAttributesA; - IMPERSONATE_SECURITY_CONTEXT_FN ImpersonateSecurityContext; - REVERT_SECURITY_CONTEXT_FN RevertSecurityContext; - MAKE_SIGNATURE_FN MakeSignature; - VERIFY_SIGNATURE_FN VerifySignature; + WINPR_ATTR_NODISCARD APPLY_CONTROL_TOKEN_FN ApplyControlToken; + WINPR_ATTR_NODISCARD QUERY_CONTEXT_ATTRIBUTES_FN_A QueryContextAttributesA; + WINPR_ATTR_NODISCARD IMPERSONATE_SECURITY_CONTEXT_FN ImpersonateSecurityContext; + WINPR_ATTR_NODISCARD REVERT_SECURITY_CONTEXT_FN RevertSecurityContext; + WINPR_ATTR_NODISCARD MAKE_SIGNATURE_FN MakeSignature; + WINPR_ATTR_NODISCARD VERIFY_SIGNATURE_FN VerifySignature; FREE_CONTEXT_BUFFER_FN FreeContextBuffer; - QUERY_SECURITY_PACKAGE_INFO_FN_A QuerySecurityPackageInfoA; + WINPR_ATTR_NODISCARD QUERY_SECURITY_PACKAGE_INFO_FN_A QuerySecurityPackageInfoA; void* Reserved3; void* Reserved4; - EXPORT_SECURITY_CONTEXT_FN ExportSecurityContext; - IMPORT_SECURITY_CONTEXT_FN_A ImportSecurityContextA; - ADD_CREDENTIALS_FN_A AddCredentialsA; + WINPR_ATTR_NODISCARD EXPORT_SECURITY_CONTEXT_FN ExportSecurityContext; + WINPR_ATTR_NODISCARD IMPORT_SECURITY_CONTEXT_FN_A ImportSecurityContextA; + WINPR_ATTR_NODISCARD ADD_CREDENTIALS_FN_A AddCredentialsA; void* Reserved8; - QUERY_SECURITY_CONTEXT_TOKEN_FN QuerySecurityContextToken; - ENCRYPT_MESSAGE_FN EncryptMessage; - DECRYPT_MESSAGE_FN DecryptMessage; - SET_CONTEXT_ATTRIBUTES_FN_A SetContextAttributesA; - SET_CREDENTIALS_ATTRIBUTES_FN_A SetCredentialsAttributesA; + WINPR_ATTR_NODISCARD QUERY_SECURITY_CONTEXT_TOKEN_FN QuerySecurityContextToken; + WINPR_ATTR_NODISCARD ENCRYPT_MESSAGE_FN EncryptMessage; + WINPR_ATTR_NODISCARD DECRYPT_MESSAGE_FN DecryptMessage; + WINPR_ATTR_NODISCARD SET_CONTEXT_ATTRIBUTES_FN_A SetContextAttributesA; + WINPR_ATTR_NODISCARD SET_CREDENTIALS_ATTRIBUTES_FN_A SetCredentialsAttributesA; } SecurityFunctionTableA; typedef SecurityFunctionTableA* PSecurityFunctionTableA; typedef struct { UINT32 dwVersion; - ENUMERATE_SECURITY_PACKAGES_FN_W EnumerateSecurityPackagesW; - QUERY_CREDENTIALS_ATTRIBUTES_FN_W QueryCredentialsAttributesW; - ACQUIRE_CREDENTIALS_HANDLE_FN_W AcquireCredentialsHandleW; + WINPR_ATTR_NODISCARD ENUMERATE_SECURITY_PACKAGES_FN_W EnumerateSecurityPackagesW; + WINPR_ATTR_NODISCARD QUERY_CREDENTIALS_ATTRIBUTES_FN_W QueryCredentialsAttributesW; + WINPR_ATTR_NODISCARD ACQUIRE_CREDENTIALS_HANDLE_FN_W AcquireCredentialsHandleW; FREE_CREDENTIALS_HANDLE_FN FreeCredentialsHandle; void* Reserved2; - INITIALIZE_SECURITY_CONTEXT_FN_W InitializeSecurityContextW; - ACCEPT_SECURITY_CONTEXT_FN AcceptSecurityContext; - COMPLETE_AUTH_TOKEN_FN CompleteAuthToken; + WINPR_ATTR_NODISCARD INITIALIZE_SECURITY_CONTEXT_FN_W InitializeSecurityContextW; + WINPR_ATTR_NODISCARD ACCEPT_SECURITY_CONTEXT_FN AcceptSecurityContext; + WINPR_ATTR_NODISCARD COMPLETE_AUTH_TOKEN_FN CompleteAuthToken; DELETE_SECURITY_CONTEXT_FN DeleteSecurityContext; - APPLY_CONTROL_TOKEN_FN ApplyControlToken; - QUERY_CONTEXT_ATTRIBUTES_FN_W QueryContextAttributesW; - IMPERSONATE_SECURITY_CONTEXT_FN ImpersonateSecurityContext; - REVERT_SECURITY_CONTEXT_FN RevertSecurityContext; - MAKE_SIGNATURE_FN MakeSignature; - VERIFY_SIGNATURE_FN VerifySignature; + WINPR_ATTR_NODISCARD APPLY_CONTROL_TOKEN_FN ApplyControlToken; + WINPR_ATTR_NODISCARD QUERY_CONTEXT_ATTRIBUTES_FN_W QueryContextAttributesW; + WINPR_ATTR_NODISCARD IMPERSONATE_SECURITY_CONTEXT_FN ImpersonateSecurityContext; + WINPR_ATTR_NODISCARD REVERT_SECURITY_CONTEXT_FN RevertSecurityContext; + WINPR_ATTR_NODISCARD MAKE_SIGNATURE_FN MakeSignature; + WINPR_ATTR_NODISCARD VERIFY_SIGNATURE_FN VerifySignature; FREE_CONTEXT_BUFFER_FN FreeContextBuffer; - QUERY_SECURITY_PACKAGE_INFO_FN_W QuerySecurityPackageInfoW; + WINPR_ATTR_NODISCARD QUERY_SECURITY_PACKAGE_INFO_FN_W QuerySecurityPackageInfoW; void* Reserved3; void* Reserved4; - EXPORT_SECURITY_CONTEXT_FN ExportSecurityContext; - IMPORT_SECURITY_CONTEXT_FN_W ImportSecurityContextW; - ADD_CREDENTIALS_FN_W AddCredentialsW; + WINPR_ATTR_NODISCARD EXPORT_SECURITY_CONTEXT_FN ExportSecurityContext; + WINPR_ATTR_NODISCARD IMPORT_SECURITY_CONTEXT_FN_W ImportSecurityContextW; + WINPR_ATTR_NODISCARD ADD_CREDENTIALS_FN_W AddCredentialsW; void* Reserved8; - QUERY_SECURITY_CONTEXT_TOKEN_FN QuerySecurityContextToken; - ENCRYPT_MESSAGE_FN EncryptMessage; - DECRYPT_MESSAGE_FN DecryptMessage; - SET_CONTEXT_ATTRIBUTES_FN_W SetContextAttributesW; - SET_CREDENTIALS_ATTRIBUTES_FN_W SetCredentialsAttributesW; + WINPR_ATTR_NODISCARD QUERY_SECURITY_CONTEXT_TOKEN_FN QuerySecurityContextToken; + WINPR_ATTR_NODISCARD ENCRYPT_MESSAGE_FN EncryptMessage; + WINPR_ATTR_NODISCARD DECRYPT_MESSAGE_FN DecryptMessage; + WINPR_ATTR_NODISCARD SET_CONTEXT_ATTRIBUTES_FN_W SetContextAttributesW; + WINPR_ATTR_NODISCARD SET_CREDENTIALS_ATTRIBUTES_FN_W SetCredentialsAttributesW; } SecurityFunctionTableW; typedef SecurityFunctionTableW* PSecurityFunctionTableW; diff --git a/winpr/include/winpr/wlog.h b/winpr/include/winpr/wlog.h index 5912da78e..f9b0e3a35 100644 --- a/winpr/include/winpr/wlog.h +++ b/winpr/include/winpr/wlog.h @@ -322,10 +322,10 @@ extern "C" typedef struct { - wLogCallbackData_t data; - wLogCallbackImage_t image; - wLogCallbackMessage_t message; - wLogCallbackPackage_t package; + WINPR_ATTR_NODISCARD wLogCallbackData_t data; + WINPR_ATTR_NODISCARD wLogCallbackImage_t image; + WINPR_ATTR_NODISCARD wLogCallbackMessage_t message; + WINPR_ATTR_NODISCARD wLogCallbackPackage_t package; } wLogCallbacks; #ifdef __cplusplus diff --git a/winpr/include/winpr/wtsapi.h b/winpr/include/winpr/wtsapi.h index fee7441de..6917157e5 100644 --- a/winpr/include/winpr/wtsapi.h +++ b/winpr/include/winpr/wtsapi.h @@ -227,20 +227,20 @@ typedef struct tagCHANNEL_ENTRY_POINTS { DWORD cbSize; DWORD protocolVersion; - PVIRTUALCHANNELINIT pVirtualChannelInit; - PVIRTUALCHANNELOPEN pVirtualChannelOpen; - PVIRTUALCHANNELCLOSE pVirtualChannelClose; - PVIRTUALCHANNELWRITE pVirtualChannelWrite; + WINPR_ATTR_NODISCARD PVIRTUALCHANNELINIT pVirtualChannelInit; + WINPR_ATTR_NODISCARD PVIRTUALCHANNELOPEN pVirtualChannelOpen; + WINPR_ATTR_NODISCARD PVIRTUALCHANNELCLOSE pVirtualChannelClose; + WINPR_ATTR_NODISCARD PVIRTUALCHANNELWRITE pVirtualChannelWrite; } CHANNEL_ENTRY_POINTS, *PCHANNEL_ENTRY_POINTS; typedef struct tagCHANNEL_ENTRY_POINTS_EX { DWORD cbSize; DWORD protocolVersion; - PVIRTUALCHANNELINITEX pVirtualChannelInitEx; - PVIRTUALCHANNELOPENEX pVirtualChannelOpenEx; - PVIRTUALCHANNELCLOSEEX pVirtualChannelCloseEx; - PVIRTUALCHANNELWRITEEX pVirtualChannelWriteEx; + WINPR_ATTR_NODISCARD PVIRTUALCHANNELINITEX pVirtualChannelInitEx; + WINPR_ATTR_NODISCARD PVIRTUALCHANNELOPENEX pVirtualChannelOpenEx; + WINPR_ATTR_NODISCARD PVIRTUALCHANNELCLOSEEX pVirtualChannelCloseEx; + WINPR_ATTR_NODISCARD PVIRTUALCHANNELWRITEEX pVirtualChannelWriteEx; } CHANNEL_ENTRY_POINTS_EX, *PCHANNEL_ENTRY_POINTS_EX; typedef BOOL VCAPITYPE VIRTUALCHANNELENTRY(PCHANNEL_ENTRY_POINTS pEntryPoints); @@ -1445,73 +1445,73 @@ typedef struct DWORD dwVersion; DWORD dwFlags; - WTS_STOP_REMOTE_CONTROL_SESSION_FN pStopRemoteControlSession; - WTS_START_REMOTE_CONTROL_SESSION_FN_W pStartRemoteControlSessionW; - WTS_START_REMOTE_CONTROL_SESSION_FN_A pStartRemoteControlSessionA; - WTS_CONNECT_SESSION_FN_W pConnectSessionW; - WTS_CONNECT_SESSION_FN_A pConnectSessionA; - WTS_ENUMERATE_SERVERS_FN_W pEnumerateServersW; - WTS_ENUMERATE_SERVERS_FN_A pEnumerateServersA; - WTS_OPEN_SERVER_FN_W pOpenServerW; - WTS_OPEN_SERVER_FN_A pOpenServerA; - WTS_OPEN_SERVER_EX_FN_W pOpenServerExW; - WTS_OPEN_SERVER_EX_FN_A pOpenServerExA; + WINPR_ATTR_NODISCARD WTS_STOP_REMOTE_CONTROL_SESSION_FN pStopRemoteControlSession; + WINPR_ATTR_NODISCARD WTS_START_REMOTE_CONTROL_SESSION_FN_W pStartRemoteControlSessionW; + WINPR_ATTR_NODISCARD WTS_START_REMOTE_CONTROL_SESSION_FN_A pStartRemoteControlSessionA; + WINPR_ATTR_NODISCARD WTS_CONNECT_SESSION_FN_W pConnectSessionW; + WINPR_ATTR_NODISCARD WTS_CONNECT_SESSION_FN_A pConnectSessionA; + WINPR_ATTR_NODISCARD WTS_ENUMERATE_SERVERS_FN_W pEnumerateServersW; + WINPR_ATTR_NODISCARD WTS_ENUMERATE_SERVERS_FN_A pEnumerateServersA; + WINPR_ATTR_NODISCARD WTS_OPEN_SERVER_FN_W pOpenServerW; + WINPR_ATTR_NODISCARD WTS_OPEN_SERVER_FN_A pOpenServerA; + WINPR_ATTR_NODISCARD WTS_OPEN_SERVER_EX_FN_W pOpenServerExW; + WINPR_ATTR_NODISCARD WTS_OPEN_SERVER_EX_FN_A pOpenServerExA; WTS_CLOSE_SERVER_FN pCloseServer; - WTS_ENUMERATE_SESSIONS_FN_W pEnumerateSessionsW; - WTS_ENUMERATE_SESSIONS_FN_A pEnumerateSessionsA; - WTS_ENUMERATE_SESSIONS_EX_FN_W pEnumerateSessionsExW; - WTS_ENUMERATE_SESSIONS_EX_FN_A pEnumerateSessionsExA; - WTS_ENUMERATE_PROCESSES_FN_W pEnumerateProcessesW; - WTS_ENUMERATE_PROCESSES_FN_A pEnumerateProcessesA; - WTS_TERMINATE_PROCESS_FN pTerminateProcess; - WTS_QUERY_SESSION_INFORMATION_FN_W pQuerySessionInformationW; - WTS_QUERY_SESSION_INFORMATION_FN_A pQuerySessionInformationA; - WTS_QUERY_USER_CONFIG_FN_W pQueryUserConfigW; - WTS_QUERY_USER_CONFIG_FN_A pQueryUserConfigA; - WTS_SET_USER_CONFIG_FN_W pSetUserConfigW; - WTS_SET_USER_CONFIG_FN_A pSetUserConfigA; - WTS_SEND_MESSAGE_FN_W pSendMessageW; - WTS_SEND_MESSAGE_FN_A pSendMessageA; - WTS_DISCONNECT_SESSION_FN pDisconnectSession; - WTS_LOGOFF_SESSION_FN pLogoffSession; - WTS_SHUTDOWN_SYSTEM_FN pShutdownSystem; - WTS_WAIT_SYSTEM_EVENT_FN pWaitSystemEvent; - WTS_VIRTUAL_CHANNEL_OPEN_FN pVirtualChannelOpen; - WTS_VIRTUAL_CHANNEL_OPEN_EX_FN pVirtualChannelOpenEx; - WTS_VIRTUAL_CHANNEL_CLOSE_FN pVirtualChannelClose; - WTS_VIRTUAL_CHANNEL_READ_FN pVirtualChannelRead; - WTS_VIRTUAL_CHANNEL_WRITE_FN pVirtualChannelWrite; - WTS_VIRTUAL_CHANNEL_PURGE_INPUT_FN pVirtualChannelPurgeInput; - WTS_VIRTUAL_CHANNEL_PURGE_OUTPUT_FN pVirtualChannelPurgeOutput; - WTS_VIRTUAL_CHANNEL_QUERY_FN pVirtualChannelQuery; + WINPR_ATTR_NODISCARD WTS_ENUMERATE_SESSIONS_FN_W pEnumerateSessionsW; + WINPR_ATTR_NODISCARD WTS_ENUMERATE_SESSIONS_FN_A pEnumerateSessionsA; + WINPR_ATTR_NODISCARD WTS_ENUMERATE_SESSIONS_EX_FN_W pEnumerateSessionsExW; + WINPR_ATTR_NODISCARD WTS_ENUMERATE_SESSIONS_EX_FN_A pEnumerateSessionsExA; + WINPR_ATTR_NODISCARD WTS_ENUMERATE_PROCESSES_FN_W pEnumerateProcessesW; + WINPR_ATTR_NODISCARD WTS_ENUMERATE_PROCESSES_FN_A pEnumerateProcessesA; + WINPR_ATTR_NODISCARD WTS_TERMINATE_PROCESS_FN pTerminateProcess; + WINPR_ATTR_NODISCARD WTS_QUERY_SESSION_INFORMATION_FN_W pQuerySessionInformationW; + WINPR_ATTR_NODISCARD WTS_QUERY_SESSION_INFORMATION_FN_A pQuerySessionInformationA; + WINPR_ATTR_NODISCARD WTS_QUERY_USER_CONFIG_FN_W pQueryUserConfigW; + WINPR_ATTR_NODISCARD WTS_QUERY_USER_CONFIG_FN_A pQueryUserConfigA; + WINPR_ATTR_NODISCARD WTS_SET_USER_CONFIG_FN_W pSetUserConfigW; + WINPR_ATTR_NODISCARD WTS_SET_USER_CONFIG_FN_A pSetUserConfigA; + WINPR_ATTR_NODISCARD WTS_SEND_MESSAGE_FN_W pSendMessageW; + WINPR_ATTR_NODISCARD WTS_SEND_MESSAGE_FN_A pSendMessageA; + WINPR_ATTR_NODISCARD WTS_DISCONNECT_SESSION_FN pDisconnectSession; + WINPR_ATTR_NODISCARD WTS_LOGOFF_SESSION_FN pLogoffSession; + WINPR_ATTR_NODISCARD WTS_SHUTDOWN_SYSTEM_FN pShutdownSystem; + WINPR_ATTR_NODISCARD WTS_WAIT_SYSTEM_EVENT_FN pWaitSystemEvent; + WINPR_ATTR_NODISCARD WTS_VIRTUAL_CHANNEL_OPEN_FN pVirtualChannelOpen; + WINPR_ATTR_NODISCARD WTS_VIRTUAL_CHANNEL_OPEN_EX_FN pVirtualChannelOpenEx; + WINPR_ATTR_NODISCARD WTS_VIRTUAL_CHANNEL_CLOSE_FN pVirtualChannelClose; + WINPR_ATTR_NODISCARD WTS_VIRTUAL_CHANNEL_READ_FN pVirtualChannelRead; + WINPR_ATTR_NODISCARD WTS_VIRTUAL_CHANNEL_WRITE_FN pVirtualChannelWrite; + WINPR_ATTR_NODISCARD WTS_VIRTUAL_CHANNEL_PURGE_INPUT_FN pVirtualChannelPurgeInput; + WINPR_ATTR_NODISCARD WTS_VIRTUAL_CHANNEL_PURGE_OUTPUT_FN pVirtualChannelPurgeOutput; + WINPR_ATTR_NODISCARD WTS_VIRTUAL_CHANNEL_QUERY_FN pVirtualChannelQuery; WTS_FREE_MEMORY_FN pFreeMemory; - WTS_REGISTER_SESSION_NOTIFICATION_FN pRegisterSessionNotification; - WTS_UNREGISTER_SESSION_NOTIFICATION_FN pUnRegisterSessionNotification; - WTS_REGISTER_SESSION_NOTIFICATION_EX_FN pRegisterSessionNotificationEx; - WTS_UNREGISTER_SESSION_NOTIFICATION_EX_FN pUnRegisterSessionNotificationEx; - WTS_QUERY_USER_TOKEN_FN pQueryUserToken; - WTS_FREE_MEMORY_EX_FN_W pFreeMemoryExW; - WTS_FREE_MEMORY_EX_FN_A pFreeMemoryExA; - WTS_ENUMERATE_PROCESSES_EX_FN_W pEnumerateProcessesExW; - WTS_ENUMERATE_PROCESSES_EX_FN_A pEnumerateProcessesExA; - WTS_ENUMERATE_LISTENERS_FN_W pEnumerateListenersW; - WTS_ENUMERATE_LISTENERS_FN_A pEnumerateListenersA; - WTS_QUERY_LISTENER_CONFIG_FN_W pQueryListenerConfigW; - WTS_QUERY_LISTENER_CONFIG_FN_A pQueryListenerConfigA; - WTS_CREATE_LISTENER_FN_W pCreateListenerW; - WTS_CREATE_LISTENER_FN_A pCreateListenerA; - WTS_SET_LISTENER_SECURITY_FN_W pSetListenerSecurityW; - WTS_SET_LISTENER_SECURITY_FN_A pSetListenerSecurityA; - WTS_GET_LISTENER_SECURITY_FN_W pGetListenerSecurityW; - WTS_GET_LISTENER_SECURITY_FN_A pGetListenerSecurityA; - WTS_ENABLE_CHILD_SESSIONS_FN pEnableChildSessions; - WTS_IS_CHILD_SESSIONS_ENABLED_FN pIsChildSessionsEnabled; - WTS_GET_CHILD_SESSION_ID_FN pGetChildSessionId; - WTS_GET_ACTIVE_CONSOLE_SESSION_ID_FN pGetActiveConsoleSessionId; - WTS_LOGON_USER_FN pLogonUser; - WTS_LOGOFF_USER_FN pLogoffUser; - WTS_START_REMOTE_CONTROL_SESSION_EX_FN_W pStartRemoteControlSessionExW; - WTS_START_REMOTE_CONTROL_SESSION_EX_FN_A pStartRemoteControlSessionExA; + WINPR_ATTR_NODISCARD WTS_REGISTER_SESSION_NOTIFICATION_FN pRegisterSessionNotification; + WINPR_ATTR_NODISCARD WTS_UNREGISTER_SESSION_NOTIFICATION_FN pUnRegisterSessionNotification; + WINPR_ATTR_NODISCARD WTS_REGISTER_SESSION_NOTIFICATION_EX_FN pRegisterSessionNotificationEx; + WINPR_ATTR_NODISCARD WTS_UNREGISTER_SESSION_NOTIFICATION_EX_FN pUnRegisterSessionNotificationEx; + WINPR_ATTR_NODISCARD WTS_QUERY_USER_TOKEN_FN pQueryUserToken; + WINPR_ATTR_NODISCARD WTS_FREE_MEMORY_EX_FN_W pFreeMemoryExW; + WINPR_ATTR_NODISCARD WTS_FREE_MEMORY_EX_FN_A pFreeMemoryExA; + WINPR_ATTR_NODISCARD WTS_ENUMERATE_PROCESSES_EX_FN_W pEnumerateProcessesExW; + WINPR_ATTR_NODISCARD WTS_ENUMERATE_PROCESSES_EX_FN_A pEnumerateProcessesExA; + WINPR_ATTR_NODISCARD WTS_ENUMERATE_LISTENERS_FN_W pEnumerateListenersW; + WINPR_ATTR_NODISCARD WTS_ENUMERATE_LISTENERS_FN_A pEnumerateListenersA; + WINPR_ATTR_NODISCARD WTS_QUERY_LISTENER_CONFIG_FN_W pQueryListenerConfigW; + WINPR_ATTR_NODISCARD WTS_QUERY_LISTENER_CONFIG_FN_A pQueryListenerConfigA; + WINPR_ATTR_NODISCARD WTS_CREATE_LISTENER_FN_W pCreateListenerW; + WINPR_ATTR_NODISCARD WTS_CREATE_LISTENER_FN_A pCreateListenerA; + WINPR_ATTR_NODISCARD WTS_SET_LISTENER_SECURITY_FN_W pSetListenerSecurityW; + WINPR_ATTR_NODISCARD WTS_SET_LISTENER_SECURITY_FN_A pSetListenerSecurityA; + WINPR_ATTR_NODISCARD WTS_GET_LISTENER_SECURITY_FN_W pGetListenerSecurityW; + WINPR_ATTR_NODISCARD WTS_GET_LISTENER_SECURITY_FN_A pGetListenerSecurityA; + WINPR_ATTR_NODISCARD WTS_ENABLE_CHILD_SESSIONS_FN pEnableChildSessions; + WINPR_ATTR_NODISCARD WTS_IS_CHILD_SESSIONS_ENABLED_FN pIsChildSessionsEnabled; + WINPR_ATTR_NODISCARD WTS_GET_CHILD_SESSION_ID_FN pGetChildSessionId; + WINPR_ATTR_NODISCARD WTS_GET_ACTIVE_CONSOLE_SESSION_ID_FN pGetActiveConsoleSessionId; + WINPR_ATTR_NODISCARD WTS_LOGON_USER_FN pLogonUser; + WINPR_ATTR_NODISCARD WTS_LOGOFF_USER_FN pLogoffUser; + WINPR_ATTR_NODISCARD WTS_START_REMOTE_CONTROL_SESSION_EX_FN_W pStartRemoteControlSessionExW; + WINPR_ATTR_NODISCARD WTS_START_REMOTE_CONTROL_SESSION_EX_FN_A pStartRemoteControlSessionExA; } WtsApiFunctionTable; typedef WtsApiFunctionTable* PWtsApiFunctionTable; diff --git a/winpr/libwinpr/utils/wlog/wlog.h b/winpr/libwinpr/utils/wlog/wlog.h index 9cbf99a3c..9e72c40e4 100644 --- a/winpr/libwinpr/utils/wlog/wlog.h +++ b/winpr/libwinpr/utils/wlog/wlog.h @@ -48,12 +48,12 @@ struct s_wLogAppender void* DataMessageContext; void* ImageMessageContext; void* PacketMessageContext; - WLOG_APPENDER_OPEN_FN Open; - WLOG_APPENDER_CLOSE_FN Close; - WLOG_APPENDER_WRITE_MESSAGE_FN WriteMessage; - WLOG_APPENDER_WRITE_DATA_MESSAGE_FN WriteDataMessage; - WLOG_APPENDER_WRITE_IMAGE_MESSAGE_FN WriteImageMessage; - WLOG_APPENDER_WRITE_PACKET_MESSAGE_FN WritePacketMessage; + WINPR_ATTR_NODISCARD WLOG_APPENDER_OPEN_FN Open; + WINPR_ATTR_NODISCARD WLOG_APPENDER_CLOSE_FN Close; + WINPR_ATTR_NODISCARD WLOG_APPENDER_WRITE_MESSAGE_FN WriteMessage; + WINPR_ATTR_NODISCARD WLOG_APPENDER_WRITE_DATA_MESSAGE_FN WriteDataMessage; + WINPR_ATTR_NODISCARD WLOG_APPENDER_WRITE_IMAGE_MESSAGE_FN WriteImageMessage; + WINPR_ATTR_NODISCARD WLOG_APPENDER_WRITE_PACKET_MESSAGE_FN WritePacketMessage; WLOG_APPENDER_FREE Free; WLOG_APPENDER_SET Set; }; @@ -75,7 +75,7 @@ struct s_wLog DWORD ChildrenCount; DWORD ChildrenSize; CRITICAL_SECTION lock; - const char* (*custom)(void*); + WINPR_ATTR_NODISCARD const char* (*custom)(void*); void* context; };