Remove unused DDS Security-related files
The removed files are merely the machine-readable part of the DDS Security specification; the clutter they cause in the installation directory is unwarranted, especially when installing to the default /usr/local Signed-off-by: Erik Boasson <eb@ilities.com>
This commit is contained in:
parent
6095b467d3
commit
b13bbcc358
8 changed files with 0 additions and 1388 deletions
|
@ -38,7 +38,6 @@ add_definitions(-DDDSI_INCLUDE_NETWORK_PARTITIONS -DDDSI_INCLUDE_SSM)
|
||||||
|
|
||||||
include(ddsi/CMakeLists.txt)
|
include(ddsi/CMakeLists.txt)
|
||||||
include(ddsc/CMakeLists.txt)
|
include(ddsc/CMakeLists.txt)
|
||||||
include(security/CMakeLists.txt)
|
|
||||||
|
|
||||||
target_link_libraries(ddsc PRIVATE util)
|
target_link_libraries(ddsc PRIVATE util)
|
||||||
target_link_libraries(ddsc PRIVATE OSAPI)
|
target_link_libraries(ddsc PRIVATE OSAPI)
|
||||||
|
@ -66,5 +65,3 @@ install(
|
||||||
LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" COMPONENT lib
|
LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" COMPONENT lib
|
||||||
ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" COMPONENT lib
|
ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" COMPONENT lib
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -118,7 +118,6 @@ target_sources(ddsc
|
||||||
target_include_directories(ddsc
|
target_include_directories(ddsc
|
||||||
PUBLIC
|
PUBLIC
|
||||||
"$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include>"
|
"$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include>"
|
||||||
"$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/../security/include>"
|
|
||||||
PRIVATE
|
PRIVATE
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/src")
|
"${CMAKE_CURRENT_LIST_DIR}/src")
|
||||||
|
|
||||||
|
|
|
@ -1,32 +0,0 @@
|
||||||
#
|
|
||||||
# Copyright(c) 2006 to 2018 ADLINK Technology Limited and others
|
|
||||||
#
|
|
||||||
# This program and the accompanying materials are made available under the
|
|
||||||
# terms of the Eclipse Public License v. 2.0 which is available at
|
|
||||||
# http://www.eclipse.org/legal/epl-2.0, or the Eclipse Distribution License
|
|
||||||
# v. 1.0 which is available at
|
|
||||||
# http://www.eclipse.org/org/documents/edl-v10.php.
|
|
||||||
#
|
|
||||||
# SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
|
|
||||||
#
|
|
||||||
|
|
||||||
PREPEND(headers_public_security "$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include/security>$<INSTALL_INTERFACE:include/security>"
|
|
||||||
ddsc_security.h
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
set(IDLC_ARGS "-dll" "FOO")
|
|
||||||
idlc_generate(SecurityBuiltinTypes security/src/dds_security_builtintopics.idl security/src/dds_security_interface_types.idl)
|
|
||||||
set(IDLC_ARGS)
|
|
||||||
target_link_libraries(ddsc PRIVATE SecurityBuiltinTypes)
|
|
||||||
|
|
||||||
install(
|
|
||||||
DIRECTORY "${CMAKE_CURRENT_LIST_DIR}/include/security"
|
|
||||||
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}"
|
|
||||||
COMPONENT dev)
|
|
||||||
|
|
||||||
|
|
||||||
# TODO: improve test inclusion.
|
|
||||||
if((BUILD_TESTING) AND ((NOT DEFINED MSVC_VERSION) OR (MSVC_VERSION GREATER "1800")))
|
|
||||||
add_subdirectory("${CMAKE_CURRENT_LIST_DIR}/tests")
|
|
||||||
endif()
|
|
|
@ -1,872 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright(c) 2006 to 2018 ADLINK Technology Limited and others
|
|
||||||
*
|
|
||||||
* This program and the accompanying materials are made available under the
|
|
||||||
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
||||||
* http://www.eclipse.org/legal/epl-2.0, or the Eclipse Distribution License
|
|
||||||
* v. 1.0 which is available at
|
|
||||||
* http://www.eclipse.org/org/documents/edl-v10.php.
|
|
||||||
*
|
|
||||||
* SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
|
|
||||||
*/
|
|
||||||
//
|
|
||||||
// Created by kurtulus on 29-11-17.
|
|
||||||
//
|
|
||||||
//#include "os/os_public.h"
|
|
||||||
//#include "os/os_decl_attributes_sal.h"
|
|
||||||
|
|
||||||
#include "ddsc/dds.h"
|
|
||||||
#include "dds_security_builtintopics.h"
|
|
||||||
#include "dds_security_interface_types.h"
|
|
||||||
|
|
||||||
#ifndef DDSC_SECURITY_H
|
|
||||||
#define DDSC_SECURITY_H
|
|
||||||
|
|
||||||
//Note – It is recommended that native types be mapped to equivalent type
|
|
||||||
// names in each programming language, subject to the normal mapping rules for type names in that language
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Authentication Component
|
|
||||||
*/
|
|
||||||
|
|
||||||
typedef struct dds_security_authentication dds_security_authentication;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* AuthenticationListener interface
|
|
||||||
*/
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_authentication_listener_on_revoke_identity)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const dds_security_authentication *plugin,
|
|
||||||
_In_ const DDS_Security_IdentityHandle handle,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex
|
|
||||||
);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_authentication_listener_on_status_changed)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const dds_security_authentication *plugin,
|
|
||||||
_In_ const DDS_Security_IdentityHandle handle,
|
|
||||||
_In_ const DDS_Security_AuthStatusKind status_kind,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
typedef struct dds_security_authentication_listener
|
|
||||||
{
|
|
||||||
void *listener_data;
|
|
||||||
|
|
||||||
dds_security_authentication_listener_on_revoke_identity on_revoke_identity;
|
|
||||||
|
|
||||||
dds_security_authentication_listener_on_status_changed on_status_changed;
|
|
||||||
} dds_security_authentication_listener;
|
|
||||||
|
|
||||||
#define dds_security_authentication_listener__alloc() \
|
|
||||||
((dds_security_authentication_listener*) dds_alloc (sizeof (dds_security_authentication_listener)));
|
|
||||||
|
|
||||||
|
|
||||||
typedef DDS_Security_ValidationResult_t
|
|
||||||
(*dds_security_authentication_validate_local_identity)
|
|
||||||
(void *listener_data,
|
|
||||||
_Inout_ DDS_Security_IdentityHandle *local_identity_handle,
|
|
||||||
_Inout_ DDS_Security_GUID_t *adjusted_participant_guid,
|
|
||||||
_In_ const dds_domainid_t domain_id,
|
|
||||||
_In_ const DDS_Security_DomainParticipantQos *participant_qos,
|
|
||||||
_In_ const DDS_Security_GUID_t *candidate_participant_guid,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_authentication_get_identity_token)
|
|
||||||
(void *listener_data,
|
|
||||||
_Inout_ DDS_Security_IdentityToken *identity_token,
|
|
||||||
_In_ const DDS_Security_IdentityHandle handle,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_authentication_get_identity_status_token)
|
|
||||||
(void *listener_data,
|
|
||||||
_Inout_ DDS_Security_IdentityStatusToken *identity_status_token,
|
|
||||||
_In_ const DDS_Security_IdentityHandle handle,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_authentication_set_permissions_credential_and_token)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_IdentityHandle handle,
|
|
||||||
_In_ const DDS_Security_PermissionsCredentialToken *permissions_credential,
|
|
||||||
_In_ const DDS_Security_PermissionsToken *permissions_token,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
|
|
||||||
typedef DDS_Security_ValidationResult_t
|
|
||||||
(*dds_security_authentication_validate_remote_identity)
|
|
||||||
(void *listener_data,
|
|
||||||
_Inout_ DDS_Security_IdentityHandle *remote_identity_handle,
|
|
||||||
_Inout_ DDS_Security_AuthRequestMessageToken *local_auth_request_token,
|
|
||||||
_In_ const DDS_Security_AuthRequestMessageToken *remote_auth_request_token,
|
|
||||||
_In_ const DDS_Security_IdentityHandle local_identity_handle,
|
|
||||||
_In_ const DDS_Security_IdentityToken *remote_identity_token,
|
|
||||||
_In_ const DDS_Security_GUID_t *remote_participant_guid,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
|
|
||||||
typedef DDS_Security_ValidationResult_t
|
|
||||||
(*dds_security_authentication_begin_handshake_request)
|
|
||||||
(void *listener_data,
|
|
||||||
_Inout_ DDS_Security_HandshakeHandle *handshake_handle,
|
|
||||||
_Inout_ DDS_Security_HandshakeMessageToken *handshake_message,
|
|
||||||
_In_ const DDS_Security_HandshakeMessageToken *handshake_message_in,
|
|
||||||
_In_ const DDS_Security_IdentityHandle initiator_identity_handle,
|
|
||||||
_In_ const DDS_Security_IdentityHandle replier_identity_handle,
|
|
||||||
_In_ const DDS_OctetSeq *serialized_local_participant_data,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
|
|
||||||
typedef DDS_Security_ValidationResult_t
|
|
||||||
(*dds_security_authentication_begin_handshake_reply)
|
|
||||||
(void *listener_data,
|
|
||||||
_Inout_ DDS_Security_HandshakeHandle *handshake_handle,
|
|
||||||
_Inout_ DDS_Security_HandshakeMessageToken *handshake_message_out,
|
|
||||||
_In_ const DDS_Security_HandshakeMessageToken *handshake_message_in,
|
|
||||||
_In_ const DDS_Security_IdentityHandle initiator_identity_handle,
|
|
||||||
_In_ const DDS_Security_IdentityHandle replier_identity_handle,
|
|
||||||
_In_ const DDS_OctetSeq *serialized_local_participant_data,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef DDS_Security_ValidationResult_t
|
|
||||||
(*dds_security_authentication_process_handshake)
|
|
||||||
(void *listener_data,
|
|
||||||
_Inout_ DDS_Security_HandshakeMessageToken *handshake_message_out,
|
|
||||||
_In_ const DDS_Security_HandshakeMessageToken *handshake_message_in,
|
|
||||||
_In_ const DDS_Security_HandshakeHandle handshake_handle,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef DDS_Security_SharedSecretHandle
|
|
||||||
(*dds_security_authentication_get_shared_secret)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_HandshakeHandle handshake_handle,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_authentication_get_authenticated_peer_credential_token)
|
|
||||||
(void *listener_data,
|
|
||||||
_Inout_ DDS_Security_AuthenticatedPeerCredentialToken *peer_credential_token,
|
|
||||||
_In_ const DDS_Security_HandshakeHandle handshake_handle,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_authentication_set_listener)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const dds_security_authentication_listener *listener,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_authentication_return_identity_token)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_IdentityToken *token,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_authentication_return_identity_status_token)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_IdentityStatusToken *token,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_authentication_return_authenticated_peer_credential_token)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_AuthenticatedPeerCredentialToken *peer_credential_token,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_authentication_return_handshake_handle)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_HandshakeHandle handshake_handle,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_authentication_return_identity_handle)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_IdentityHandle identity_handle,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_authentication_return_sharedsecret_handle)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_SharedSecretHandle sharedsecret_handle,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
|
|
||||||
struct dds_security_authentication
|
|
||||||
{
|
|
||||||
|
|
||||||
dds_security_authentication_validate_local_identity validate_local_identity;
|
|
||||||
|
|
||||||
dds_security_authentication_get_identity_token get_identity_token;
|
|
||||||
|
|
||||||
dds_security_authentication_get_identity_status_token get_identity_status_token;
|
|
||||||
|
|
||||||
dds_security_authentication_set_permissions_credential_and_token set_permissions_credential_and_token;
|
|
||||||
|
|
||||||
dds_security_authentication_validate_remote_identity validate_remote_identity;
|
|
||||||
|
|
||||||
dds_security_authentication_begin_handshake_request begin_handshake_request;
|
|
||||||
|
|
||||||
dds_security_authentication_begin_handshake_reply begin_handshake_reply;
|
|
||||||
|
|
||||||
dds_security_authentication_process_handshake process_handshake;
|
|
||||||
|
|
||||||
dds_security_authentication_get_shared_secret get_shared_secret;
|
|
||||||
|
|
||||||
dds_security_authentication_get_authenticated_peer_credential_token get_authenticated_peer_credential_token;
|
|
||||||
|
|
||||||
dds_security_authentication_set_listener set_listener;
|
|
||||||
|
|
||||||
dds_security_authentication_return_identity_token return_identity_token;
|
|
||||||
|
|
||||||
dds_security_authentication_return_identity_status_token return_identity_status_token;
|
|
||||||
|
|
||||||
dds_security_authentication_return_authenticated_peer_credential_token return_authenticated_peer_credential_token;
|
|
||||||
|
|
||||||
dds_security_authentication_return_handshake_handle return_handshake_handle;
|
|
||||||
|
|
||||||
dds_security_authentication_return_identity_handle return_identity_handle;
|
|
||||||
|
|
||||||
dds_security_authentication_return_sharedsecret_handle return_sharedsecret_handle;
|
|
||||||
};
|
|
||||||
|
|
||||||
#define dds_security_authentication__alloc() \
|
|
||||||
((dds_security_authentication*) dds_alloc (sizeof (dds_security_authentication)));
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* AccessControl Component
|
|
||||||
*/
|
|
||||||
|
|
||||||
typedef struct dds_security_access_control dds_security_access_control;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* AccessControlListener Interface
|
|
||||||
* */
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_listener_on_revoke_permissions)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const dds_security_access_control *plugin,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle handle);
|
|
||||||
|
|
||||||
typedef struct dds_security_access_control_listener
|
|
||||||
{
|
|
||||||
dds_security_access_control_listener_on_revoke_permissions on_revoke_permissions;
|
|
||||||
} dds_security_access_control_listener;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* AccessControl Interface
|
|
||||||
*/
|
|
||||||
|
|
||||||
typedef DDS_Security_PermissionsHandle
|
|
||||||
(*dds_security_access_control_validate_local_permissions)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const dds_security_authentication *auth_plugin,
|
|
||||||
_In_ const DDS_Security_IdentityHandle identity,
|
|
||||||
_In_ const dds_domainid_t domain_id,
|
|
||||||
_In_ const DDS_Security_DomainParticipantQos *participant_qos,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef DDS_Security_PermissionsHandle
|
|
||||||
(*dds_security_access_control_validate_remote_permissions)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const dds_security_authentication *auth_plugin,
|
|
||||||
_In_ const DDS_Security_IdentityHandle local_identity_handle,
|
|
||||||
_In_ const DDS_Security_IdentityHandle remote_identity_handle,
|
|
||||||
_In_ const DDS_Security_PermissionsToken *remote_permissions_token,
|
|
||||||
_In_ const DDS_Security_AuthenticatedPeerCredentialToken *remote_credential_token,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_check_create_participant)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle permissions_handle,
|
|
||||||
_In_ const dds_domainid_t domain_id,
|
|
||||||
_In_ const dds_qos_t **participant_qos,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_check_create_datawriter)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle permissions_handle,
|
|
||||||
_In_ const dds_domainid_t domain_id,
|
|
||||||
_In_ const char *topic_name,
|
|
||||||
_In_ const dds_qos_t *writer_qos,
|
|
||||||
_In_ const DDS_PartitionQosPolicy *partition,
|
|
||||||
_In_ const DDS_Security_DataTags *data_tag,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_check_create_datareader)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle permissions_handle,
|
|
||||||
_In_ const dds_domainid_t domain_id,
|
|
||||||
_In_ const char *topic_name,
|
|
||||||
_In_ const dds_qos_t *reader_qos,
|
|
||||||
_In_ const DDS_PartitionQosPolicy *partition,
|
|
||||||
_In_ const DDS_Security_DataTags *data_tag,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_check_create_topic)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle permissions_handle,
|
|
||||||
_In_ const dds_domainid_t domain_id,
|
|
||||||
_In_ const char *topic_name,
|
|
||||||
_In_ const DDS_TopicQos *qos,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_check_local_datawriter_register_instance)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle permissions_handle,
|
|
||||||
_In_ const dds_entity_t *writer,
|
|
||||||
_In_ const DDS_Security_DynamicData *key,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_check_local_datawriter_dispose_instance)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle permissions_handle,
|
|
||||||
_In_ const dds_entity_t *writer,
|
|
||||||
_In_ const DDS_Security_DynamicData key,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_check_remote_participant)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle permissions_handle,
|
|
||||||
_In_ const dds_domainid_t domain_id,
|
|
||||||
_In_ const DDS_Security_ParticipantBuiltinTopicDataSecure *participant_data,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_check_remote_datawriter)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle permissions_handle,
|
|
||||||
_In_ const dds_domainid_t domain_id,
|
|
||||||
_In_ const DDS_Security_PublicationBuiltinTopicDataSecure *publication_data,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_check_remote_datareader)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle permissions_handle,
|
|
||||||
_In_ const dds_domainid_t domain_id,
|
|
||||||
_In_ const DDS_Security_SubscriptionBuiltinTopicDataSecure *subscription_data,
|
|
||||||
_Inout_ bool *relay_only,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_check_remote_topic)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle permissions_handle,
|
|
||||||
_In_ const dds_domainid_t domain_id,
|
|
||||||
_In_ const DDS_TopicBuiltinTopicData *topic_data,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_check_local_datawriter_match)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle writer_permissions_handle,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle reader_permissions_handle,
|
|
||||||
_In_ const DDS_Security_PublicationBuiltinTopicDataSecure *publication_data,
|
|
||||||
_In_ const DDS_Security_SubscriptionBuiltinTopicDataSecure *subscription_data,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_check_local_datareader_match)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle reader_permissions_handle,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle writer_permissions_handle,
|
|
||||||
_In_ const DDS_Security_SubscriptionBuiltinTopicDataSecure *subscription_data,
|
|
||||||
_In_ const DDS_Security_PublicationBuiltinTopicDataSecure *publication_data,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_check_remote_datawriter_register_instance)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle permissions_handle,
|
|
||||||
_In_ const dds_entity_t *reader,
|
|
||||||
_In_ const dds_instance_handle_t publication_handle,
|
|
||||||
_In_ const DDS_Security_DynamicData key,
|
|
||||||
_In_ const dds_instance_handle_t instance_handle,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_check_remote_datawriter_dispose_instance)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle permissions_handle,
|
|
||||||
_In_ const dds_entity_t *reader,
|
|
||||||
_In_ const dds_instance_handle_t publication_handle,
|
|
||||||
_In_ const DDS_Security_DynamicData key,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_get_permissions_token)
|
|
||||||
(void *listener_data,
|
|
||||||
_Inout_ DDS_Security_PermissionsToken *permissions_token,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle handle,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_get_permissions_credential_token)
|
|
||||||
(void *listener_data,
|
|
||||||
_Inout_ DDS_Security_PermissionsCredentialToken *permissions_credential_token,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle handle,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_set_listener)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const dds_security_access_control_listener *listener,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_return_permissions_token)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_PermissionsToken *token,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_return_permissions_credential_token)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_PermissionsCredentialToken *permissions_credential_token,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_get_participant_sec_attributes)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle permissions_handle,
|
|
||||||
_Inout_ DDS_Security_ParticipantSecurityAttributes *attributes,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_get_topic_sec_attributes)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle permissions_handle,
|
|
||||||
_In_ const char *topic_name,
|
|
||||||
_Inout_ DDS_Security_TopicSecurityAttributes *attributes,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_get_datawriter_sec_attributes)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle permissions_handle,
|
|
||||||
_In_ const DDS_PartitionQosPolicy *partition,
|
|
||||||
_In_ const DDS_Security_DataTagQosPolicy *data_tag,
|
|
||||||
_Inout_ DDS_Security_EndpointSecurityAttributes *attributes,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_get_datareader_sec_attributes)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle permissions_handle,
|
|
||||||
_In_ const DDS_PartitionQosPolicy *partition,
|
|
||||||
_In_ const DDS_Security_DataTagQosPolicy *data_tag,
|
|
||||||
_Inout_ DDS_Security_EndpointSecurityAttributes *attributes,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_return_participant_sec_attributes)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_ParticipantSecurityAttributes *attributes,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_return_datawriter_sec_attributes)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_EndpointSecurityAttributes *attributes,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_access_control_return_datareader_sec_attributes)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_EndpointSecurityAttributes *attributes,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
|
|
||||||
struct dds_security_access_control
|
|
||||||
{
|
|
||||||
dds_security_access_control_validate_local_permissions validate_local_permissions;
|
|
||||||
|
|
||||||
dds_security_access_control_validate_remote_permissions validate_remote_permissions;
|
|
||||||
|
|
||||||
dds_security_access_control_check_create_participant check_create_participant;
|
|
||||||
|
|
||||||
dds_security_access_control_check_create_datawriter check_create_datawriter;
|
|
||||||
|
|
||||||
dds_security_access_control_check_create_datareader check_create_datareader;
|
|
||||||
|
|
||||||
dds_security_access_control_check_create_topic check_create_topic;
|
|
||||||
|
|
||||||
dds_security_access_control_check_local_datawriter_register_instance check_local_datawriter_register_instance;
|
|
||||||
|
|
||||||
dds_security_access_control_check_local_datawriter_dispose_instance check_local_datawriter_dispose_instance;
|
|
||||||
|
|
||||||
dds_security_access_control_check_remote_participant check_remote_participant;
|
|
||||||
|
|
||||||
dds_security_access_control_check_remote_datawriter check_remote_datawriter;
|
|
||||||
|
|
||||||
dds_security_access_control_check_remote_datareader check_remote_datareader;
|
|
||||||
|
|
||||||
dds_security_access_control_check_remote_topic check_remote_topic;
|
|
||||||
|
|
||||||
dds_security_access_control_check_local_datawriter_match check_local_datawriter_match;
|
|
||||||
|
|
||||||
dds_security_access_control_check_local_datareader_match check_local_datareader_match;
|
|
||||||
|
|
||||||
dds_security_access_control_check_remote_datawriter_register_instance check_remote_datawriter_register_instance;
|
|
||||||
|
|
||||||
dds_security_access_control_check_remote_datawriter_dispose_instance check_remote_datawriter_dispose_instance;
|
|
||||||
|
|
||||||
dds_security_access_control_get_permissions_token get_permissions_token;
|
|
||||||
|
|
||||||
dds_security_access_control_get_permissions_credential_token get_permissions_credential_token;
|
|
||||||
|
|
||||||
dds_security_access_control_set_listener set_listener;
|
|
||||||
|
|
||||||
dds_security_access_control_return_permissions_token return_permissions_token;
|
|
||||||
|
|
||||||
dds_security_access_control_return_permissions_credential_token return_permissions_credential_token;
|
|
||||||
|
|
||||||
dds_security_access_control_get_participant_sec_attributes get_participant_sec_attributes;
|
|
||||||
|
|
||||||
dds_security_access_control_get_topic_sec_attributes get_topic_sec_attributes;
|
|
||||||
|
|
||||||
dds_security_access_control_get_datawriter_sec_attributes get_datawriter_sec_attributes;
|
|
||||||
|
|
||||||
dds_security_access_control_get_datareader_sec_attributes get_datareader_sec_attributes;
|
|
||||||
|
|
||||||
dds_security_access_control_return_participant_sec_attributes return_participant_sec_attributes;
|
|
||||||
|
|
||||||
dds_security_access_control_return_datawriter_sec_attributes return_datawriter_sec_attributes;
|
|
||||||
|
|
||||||
dds_security_access_control_return_datareader_sec_attributes return_datareader_sec_attributes;
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
struct dds_security_access_control *dds_security_access_control__alloc(void);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Crypto Component
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* CryptoKeyFactory interface
|
|
||||||
*/
|
|
||||||
|
|
||||||
typedef DDS_Security_ParticipantCryptoHandle
|
|
||||||
(*dds_security_crypto_key_factory_register_local_participant)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_IdentityHandle participant_identity,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle participant_permissions,
|
|
||||||
_In_ const DDS_Security_PropertySeq *participant_properties,
|
|
||||||
_In_ const DDS_Security_ParticipantSecurityAttributes *participant_security_attributes,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef DDS_Security_ParticipantCryptoHandle
|
|
||||||
(*dds_security_crypto_key_factory_register_matched_remote_participant)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_ParticipantCryptoHandle local_participant_crypto_handle,
|
|
||||||
_In_ const DDS_Security_IdentityHandle remote_participant_identity,
|
|
||||||
_In_ const DDS_Security_PermissionsHandle remote_participant_permissions,
|
|
||||||
_In_ const DDS_Security_SharedSecretHandle shared_secret,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
|
|
||||||
typedef DDS_Security_DatawriterCryptoHandle
|
|
||||||
(*dds_security_crypto_key_factory_register_local_datawriter)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_ParticipantCryptoHandle participant_crypto,
|
|
||||||
_In_ const DDS_Security_PropertySeq *datawriter_properties,
|
|
||||||
_In_ const DDS_Security_EndpointSecurityAttributes *datawriter_security_attributes,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef DDS_Security_DatareaderCryptoHandle
|
|
||||||
(*dds_security_crypto_key_factory_register_matched_remote_datareader)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_DatawriterCryptoHandle local_datawritert_crypto_handle,
|
|
||||||
_In_ const DDS_Security_ParticipantCryptoHandle remote_participant_crypto,
|
|
||||||
_In_ const DDS_Security_SharedSecretHandle shared_secret,
|
|
||||||
_In_ const bool relay_only,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
|
|
||||||
typedef DDS_Security_DatareaderCryptoHandle
|
|
||||||
(*dds_security_crypto_key_factory_register_local_datareader)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_ParticipantCryptoHandle *participant_crypto,
|
|
||||||
_In_ const DDS_Security_PropertySeq *datareader_properties,
|
|
||||||
_In_ const DDS_Security_EndpointSecurityAttributes *datareader_security_attributes,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef DDS_Security_DatawriterCryptoHandle
|
|
||||||
(*dds_security_crypto_key_factory_register_matched_remote_datawriter)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_DatareaderCryptoHandle local_datareader_crypto_handle,
|
|
||||||
_In_ const DDS_Security_ParticipantCryptoHandle remote_participant_crypt,
|
|
||||||
_In_ const DDS_Security_SharedSecretHandle shared_secret,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_crypto_key_factory_unregister_participant)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_ParticipantCryptoHandle participant_crypto_handle,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_crypto_key_factory_unregister_datawriter)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_DatawriterCryptoHandle datawriter_crypto_handle,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_crypto_key_factory_unregister_datareader)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_DatareaderCryptoHandle datareader_crypto_handle,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef struct dds_security_crypto_key_factory
|
|
||||||
{
|
|
||||||
|
|
||||||
dds_security_crypto_key_factory_register_local_participant register_local_participant;
|
|
||||||
|
|
||||||
dds_security_crypto_key_factory_register_matched_remote_participant register_matched_remote_participant;
|
|
||||||
|
|
||||||
dds_security_crypto_key_factory_register_local_datawriter register_local_datawriter;
|
|
||||||
|
|
||||||
dds_security_crypto_key_factory_register_matched_remote_datareader register_matched_remote_datareader;
|
|
||||||
|
|
||||||
dds_security_crypto_key_factory_register_local_datareader register_local_datareader;
|
|
||||||
|
|
||||||
dds_security_crypto_key_factory_register_matched_remote_datawriter register_matched_remote_datawriter;
|
|
||||||
|
|
||||||
dds_security_crypto_key_factory_unregister_participant unregister_participant;
|
|
||||||
|
|
||||||
dds_security_crypto_key_factory_unregister_datawriter unregister_datawriter;
|
|
||||||
|
|
||||||
dds_security_crypto_key_factory_unregister_datareader unregister_datareader;
|
|
||||||
} dds_security_crypto_key_factory;
|
|
||||||
|
|
||||||
#define dds_security_crypto_key_factory__alloc() \
|
|
||||||
((dds_security_crypto_key_factory*) dds_alloc (sizeof (dds_security_crypto_key_factory)));
|
|
||||||
|
|
||||||
/**
|
|
||||||
* CryptoKeyExchange Interface
|
|
||||||
*/
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_crypto_key_exchange_create_local_participant_crypto_tokens)
|
|
||||||
(void *listener_data,
|
|
||||||
_Inout_ DDS_Security_ParticipantCryptoTokenSeq *local_participant_crypto_tokens,
|
|
||||||
_In_ const DDS_Security_ParticipantCryptoHandle local_participant_crypto,
|
|
||||||
_In_ const DDS_Security_ParticipantCryptoHandle remote_participant_crypto,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_crypto_key_exchange_set_remote_participant_crypto_tokens)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_ParticipantCryptoHandle local_participant_crypto,
|
|
||||||
_In_ const DDS_Security_ParticipantCryptoHandle remote_participant_crypto,
|
|
||||||
_In_ const DDS_Security_ParticipantCryptoTokenSeq *remote_participant_tokens,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_crypto_key_exchange_create_local_datawriter_crypto_tokens)
|
|
||||||
(void *listener_data,
|
|
||||||
_Inout_ DDS_Security_DatawriterCryptoTokenSeq *local_datawriter_crypto_tokens,
|
|
||||||
_In_ const DDS_Security_DatawriterCryptoHandle local_datawriter_crypto,
|
|
||||||
_In_ const DDS_Security_DatareaderCryptoHandle remote_datareader_crypto,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_crypto_key_exchange_set_remote_datawriter_crypto_tokens)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_DatareaderCryptoHandle local_datareader_crypto,
|
|
||||||
_In_ const DDS_Security_DatawriterCryptoHandle remote_datawriter_crypto,
|
|
||||||
_In_ const DDS_Security_DatawriterCryptoTokenSeq *remote_datawriter_tokens,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_crypto_key_exchange_create_local_datareader_crypto_tokens)
|
|
||||||
(void *listener_data,
|
|
||||||
_Inout_ DDS_Security_DatareaderCryptoTokenSeq *local_datareader_cryto_tokens,
|
|
||||||
_In_ const DDS_Security_DatareaderCryptoHandle local_datareader_crypto,
|
|
||||||
_In_ const DDS_Security_DatawriterCryptoHandle remote_datawriter_crypto,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_crypto_key_exchange_set_remote_datareader_crypto_tokens)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_DatawriterCryptoHandle local_datawriter_crypto,
|
|
||||||
_In_ const DDS_Security_DatareaderCryptoHandle remote_datareader_crypto,
|
|
||||||
_In_ const DDS_Security_DatareaderCryptoTokenSeq *remote_datareader_tokens,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_crypto_key_exchange_return_crypto_tokens)
|
|
||||||
(void *listener_data,
|
|
||||||
_In_ const DDS_Security_CryptoTokenSeq *crypto_tokens,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef struct dds_security_crypto_key_exchange
|
|
||||||
{
|
|
||||||
dds_security_crypto_key_exchange_create_local_participant_crypto_tokens create_local_participant_crypto_tokens;
|
|
||||||
|
|
||||||
dds_security_crypto_key_exchange_set_remote_participant_crypto_tokens set_remote_participant_crypto_tokens;
|
|
||||||
|
|
||||||
dds_security_crypto_key_exchange_create_local_datawriter_crypto_tokens create_local_datawriter_crypto_tokens;
|
|
||||||
|
|
||||||
dds_security_crypto_key_exchange_set_remote_datawriter_crypto_tokens set_remote_datawriter_crypto_tokens;
|
|
||||||
|
|
||||||
dds_security_crypto_key_exchange_create_local_datareader_crypto_tokens create_local_datareader_crypto_tokens;
|
|
||||||
|
|
||||||
dds_security_crypto_key_exchange_set_remote_datareader_crypto_tokens set_remote_datareader_crypto_tokens;
|
|
||||||
|
|
||||||
dds_security_crypto_key_exchange_return_crypto_tokens return_crypto_tokens;
|
|
||||||
} dds_security_crypto_key_exchange;
|
|
||||||
|
|
||||||
#define dds_security_crypto_key_exchange__alloc() \
|
|
||||||
((dds_security_crypto_key_exchange*) dds_alloc (sizeof (dds_security_crypto_key_exchange)));
|
|
||||||
|
|
||||||
/**
|
|
||||||
* CryptoTransform Interface
|
|
||||||
*/
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_crypto_transform_encode_serialized_payload)
|
|
||||||
(void *listener_data,
|
|
||||||
_Inout_ DDS_OctetSeq *encoded_buffer,
|
|
||||||
_Inout_ DDS_OctetSeq *extra_inline_qos,
|
|
||||||
_In_ const DDS_OctetSeq *plain_buffer,
|
|
||||||
_In_ const DDS_Security_DatawriterCryptoHandle sending_datawriter_crypto,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_crypto_transform_encode_datawriter_submessage)
|
|
||||||
(void *listener_data,
|
|
||||||
_Inout_ DDS_OctetSeq *encoded_rtps_submessage,
|
|
||||||
_In_ const DDS_OctetSeq *plain_rtps_submessage,
|
|
||||||
_In_ const DDS_Security_DatawriterCryptoHandle sending_datawriter_crypto,
|
|
||||||
_In_ const DDS_Security_DatareaderCryptoHandleSeq *receiving_datareader_crypto_list,
|
|
||||||
_Inout_ int32_t *receiving_datareader_crypto_list_index,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_crypto_transform_encode_datareader_submessage)
|
|
||||||
(void *listener_data,
|
|
||||||
_Inout_ DDS_OctetSeq *encoded_rtps_submessage,
|
|
||||||
_In_ const DDS_OctetSeq *plain_rtps_submessage,
|
|
||||||
_In_ const DDS_Security_DatareaderCryptoHandle sending_datareader_crypto,
|
|
||||||
_In_ const DDS_Security_DatawriterCryptoHandleSeq *receiving_datawriter_crypto_list,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_crypto_transform_encode_rtps_message)
|
|
||||||
(void *listener_data,
|
|
||||||
_Inout_ DDS_OctetSeq *encoded_rtps_message,
|
|
||||||
_In_ const DDS_OctetSeq *plain_rtps_message,
|
|
||||||
_In_ const DDS_Security_ParticipantCryptoHandle sending_participant_crypto,
|
|
||||||
_In_ const DDS_Security_ParticipantCryptoHandleSeq *receiving_participant_crypto_list,
|
|
||||||
_Inout_ int32_t *receiving_participant_crypto_list_index,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_crypto_transform_decode_rtps_message)
|
|
||||||
(void *listener_data,
|
|
||||||
_Inout_ DDS_OctetSeq *plain_buffer,
|
|
||||||
_In_ const DDS_OctetSeq *encoded_buffer,
|
|
||||||
_In_ const DDS_Security_ParticipantCryptoHandle receiving_participant_crypto,
|
|
||||||
_In_ const DDS_Security_ParticipantCryptoHandle sending_participant_crypto,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_crypto_transform_preprocess_secure_submsg)
|
|
||||||
(void *listener_data,
|
|
||||||
_Inout_ DDS_Security_DatawriterCryptoHandle *datawriter_crypto,
|
|
||||||
_Inout_ DDS_Security_DatareaderCryptoHandle *datareader_crypto,
|
|
||||||
_Inout_ DDS_Security_SecureSubmessageCategory_t *secure_submessage_category,
|
|
||||||
_In_ const DDS_OctetSeq *encoded_rtps_submessage,
|
|
||||||
_In_ const DDS_Security_ParticipantCryptoHandle receiving_participant_crypto,
|
|
||||||
_In_ const DDS_Security_ParticipantCryptoHandle sending_participant_crypto,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_crypto_transform_decode_datawriter_submessage)
|
|
||||||
(void *listener_data,
|
|
||||||
_Inout_ DDS_OctetSeq *plain_rtps_submessage,
|
|
||||||
_In_ const DDS_OctetSeq *encoded_rtps_submessage,
|
|
||||||
_In_ const DDS_Security_DatareaderCryptoHandle receiving_datareader_crypto,
|
|
||||||
_In_ const DDS_Security_DatawriterCryptoHandle sending_datawriter_crypto,
|
|
||||||
_In_ const DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_crypto_transform_decode_datareader_submessage)
|
|
||||||
(void *listener_data,
|
|
||||||
_Inout_ DDS_OctetSeq *plain_rtps_message,
|
|
||||||
_In_ const DDS_OctetSeq *encoded_rtps_message,
|
|
||||||
_In_ const DDS_Security_DatawriterCryptoHandle receiving_datawriter_crypto,
|
|
||||||
_In_ const DDS_Security_DatareaderCryptoHandle sending_datareader_crypto,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
|
|
||||||
typedef bool
|
|
||||||
(*dds_security_crypto_transform_decode_serialized_payload)
|
|
||||||
(void *listener_data,
|
|
||||||
_Inout_ DDS_OctetSeq *plain_buffer,
|
|
||||||
_In_ const DDS_OctetSeq *encoded_buffer,
|
|
||||||
_In_ const DDS_OctetSeq *inline_qos,
|
|
||||||
_In_ const DDS_Security_DatareaderCryptoHandle receiving_datareader_crypto,
|
|
||||||
_In_ const DDS_Security_DatawriterCryptoHandle sending_datawriter_crypto,
|
|
||||||
_Inout_ DDS_Security_SecurityException *ex);
|
|
||||||
|
|
||||||
|
|
||||||
typedef struct dds_security_crypto_transform
|
|
||||||
{
|
|
||||||
dds_security_crypto_transform_encode_serialized_payload encode_serialized_payload;
|
|
||||||
|
|
||||||
dds_security_crypto_transform_encode_datawriter_submessage encode_datawriter_submessage;
|
|
||||||
|
|
||||||
dds_security_crypto_transform_encode_datareader_submessage encode_datareader_submessage;
|
|
||||||
|
|
||||||
dds_security_crypto_transform_encode_rtps_message encode_rtps_message;
|
|
||||||
|
|
||||||
dds_security_crypto_transform_decode_rtps_message decode_rtps_message;
|
|
||||||
|
|
||||||
dds_security_crypto_transform_preprocess_secure_submsg preprocess_secure_submsg;
|
|
||||||
|
|
||||||
dds_security_crypto_transform_decode_datawriter_submessage decode_datawriter_submessage;
|
|
||||||
|
|
||||||
dds_security_crypto_transform_decode_datareader_submessage decode_datareader_submessage;
|
|
||||||
|
|
||||||
dds_security_crypto_transform_decode_serialized_payload decode_serialized_payload;
|
|
||||||
} dds_security_crypto_transform;
|
|
||||||
|
|
||||||
#define dds_security_crypto_key_exchange__alloc() \
|
|
||||||
((dds_security_crypto_key_exchange*) dds_alloc (sizeof (dds_security_crypto_key_exchange)));
|
|
||||||
|
|
||||||
#endif //DDSC_SECURITY_H
|
|
|
@ -1,301 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright(c) 2006 to 2018 ADLINK Technology Limited and others
|
|
||||||
*
|
|
||||||
* This program and the accompanying materials are made available under the
|
|
||||||
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
||||||
* http://www.eclipse.org/legal/epl-2.0, or the Eclipse Distribution License
|
|
||||||
* v. 1.0 which is available at
|
|
||||||
* http://www.eclipse.org/org/documents/edl-v10.php.
|
|
||||||
*
|
|
||||||
* SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
* dds_rtf2_dcps.idl needed for the declarations
|
|
||||||
* of DDS Entities and DDS Entity Qos
|
|
||||||
*/
|
|
||||||
|
|
||||||
//#include "dds-xtypes_discovery.idl" /* http://www.omg.org/spec/DDS-XTypes/20170301/dds-xtypes_discovery.idl */
|
|
||||||
//#include "dds_dcps_builtintopics.idl"
|
|
||||||
#include "../../ddsc/src/dds_builtinTopics.idl"
|
|
||||||
|
|
||||||
#include "../../ddsc/src/dds_dcps_builtintopics.idl"
|
|
||||||
|
|
||||||
|
|
||||||
#define DOMAINID_TYPE_NATIVE long
|
|
||||||
#define HANDLE_TYPE_NATIVE long long
|
|
||||||
|
|
||||||
|
|
||||||
module DDS {
|
|
||||||
typedef sequence<octet> OctetSeq;
|
|
||||||
|
|
||||||
module Security {
|
|
||||||
|
|
||||||
struct Property_t {
|
|
||||||
string name;
|
|
||||||
string value;
|
|
||||||
boolean propagate;
|
|
||||||
};
|
|
||||||
|
|
||||||
typedef sequence< Property_t > PropertySeq;
|
|
||||||
|
|
||||||
|
|
||||||
struct BinaryProperty_t {
|
|
||||||
string name;
|
|
||||||
OctetSeq value;
|
|
||||||
boolean propagate;
|
|
||||||
};
|
|
||||||
typedef sequence< BinaryProperty_t > BinaryPropertySeq;
|
|
||||||
|
|
||||||
struct PropertyQosPolicy {
|
|
||||||
PropertySeq value;
|
|
||||||
BinaryPropertySeq binary_value;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
struct DataHolder {
|
|
||||||
string class_id;
|
|
||||||
/*@optional*/ PropertySeq properties;
|
|
||||||
/*@optional*/ BinaryPropertySeq binary_properties;
|
|
||||||
};
|
|
||||||
typedef sequence<DataHolder> DataHolderSeq;
|
|
||||||
|
|
||||||
typedef DataHolder Token;
|
|
||||||
|
|
||||||
|
|
||||||
typedef Token MessageToken;
|
|
||||||
typedef Token IdentityToken;
|
|
||||||
typedef Token PermissionsToken;
|
|
||||||
|
|
||||||
typedef Token IdentityStatusToken;
|
|
||||||
|
|
||||||
struct DomainParticipantQos {
|
|
||||||
UserDataQosPolicy user_data;
|
|
||||||
EntityFactoryQosPolicy entity_factory;
|
|
||||||
SchedulingQosPolicy watchdog_scheduling;
|
|
||||||
SchedulingQosPolicy listener_scheduling;
|
|
||||||
PropertyQosPolicy proIperty;
|
|
||||||
};
|
|
||||||
|
|
||||||
struct Tag {
|
|
||||||
string name;
|
|
||||||
string value;
|
|
||||||
};
|
|
||||||
|
|
||||||
typedef sequence< Tag > TagSeq;
|
|
||||||
struct DataTags {
|
|
||||||
TagSeq tags;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
typedef DataTags DataTagQosPolicy;
|
|
||||||
|
|
||||||
struct DataWriterQos {
|
|
||||||
DurabilityQosPolicy durability;
|
|
||||||
DeadlineQosPolicy deadline;
|
|
||||||
LatencyBudgetQosPolicy latency_budget;
|
|
||||||
LivelinessQosPolicy liveliness;
|
|
||||||
ReliabilityQosPolicy reliability;
|
|
||||||
DestinationOrderQosPolicy destination_order;
|
|
||||||
HistoryQosPolicy history;
|
|
||||||
ResourceLimitsQosPolicy resource_limits;
|
|
||||||
TransportPriorityQosPolicy transport_priority;
|
|
||||||
LifespanQosPolicy lifespan;
|
|
||||||
UserDataQosPolicy user_data;
|
|
||||||
OwnershipQosPolicy ownership;
|
|
||||||
OwnershipStrengthQosPolicy ownership_strength;
|
|
||||||
WriterDataLifecycleQosPolicy writer_data_lifecycle;
|
|
||||||
PropertyQosPolicy property;
|
|
||||||
DataTagQosPolicy data_tags;
|
|
||||||
};
|
|
||||||
|
|
||||||
struct DataReaderQos {
|
|
||||||
DurabilityQosPolicy durability;
|
|
||||||
DeadlineQosPolicy deadline;
|
|
||||||
LatencyBudgetQosPolicy latency_budget;
|
|
||||||
LivelinessQosPolicy liveliness;
|
|
||||||
ReliabilityQosPolicy reliability;
|
|
||||||
DestinationOrderQosPolicy destination_order;
|
|
||||||
HistoryQosPolicy history;
|
|
||||||
ResourceLimitsQosPolicy resource_limits;
|
|
||||||
UserDataQosPolicy user_data;
|
|
||||||
OwnershipQosPolicy ownership;
|
|
||||||
TimeBasedFilterQosPolicy time_based_filter;
|
|
||||||
ReaderDataLifecycleQosPolicy reader_data_lifecycle;
|
|
||||||
SubscriptionKeyQosPolicy subscription_keys;
|
|
||||||
ReaderLifespanQosPolicy reader_lifespan;
|
|
||||||
ShareQosPolicy share;
|
|
||||||
PropertyQosPolicy property;
|
|
||||||
DataTagQosPolicy data_tags;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
typedef unsigned long ParticipantSecurityAttributesMask;
|
|
||||||
typedef unsigned long PluginParticipantSecurityAttributesMask;
|
|
||||||
|
|
||||||
struct ParticipantSecurityInfo {
|
|
||||||
ParticipantSecurityAttributesMask participant_security_attributes;
|
|
||||||
PluginParticipantSecurityAttributesMask plugin_participant_security_attributes;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
typedef unsigned long EndpointSecurityAttributesMask;
|
|
||||||
typedef unsigned long PluginEndpointSecurityAttributesMask;
|
|
||||||
struct EndpointSecurityInfo {
|
|
||||||
EndpointSecurityAttributesMask endpoint_security_mask;
|
|
||||||
PluginEndpointSecurityAttributesMask plugin_endpoint_security_mask;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
struct ParticipantBuiltinTopicData {
|
|
||||||
BuiltinTopicKey_t key;
|
|
||||||
UserDataQosPolicy user_data;
|
|
||||||
IdentityToken identity_token;
|
|
||||||
PermissionsToken permissions_token;
|
|
||||||
PropertyQosPolicy property;
|
|
||||||
ParticipantSecurityInfo security_info;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
struct ParticipantBuiltinTopicDataSecure {
|
|
||||||
BuiltinTopicKey_t key;
|
|
||||||
UserDataQosPolicy user_data;
|
|
||||||
IdentityToken identity_token;
|
|
||||||
PermissionsToken permissions_token;
|
|
||||||
PropertyQosPolicy property;
|
|
||||||
ParticipantSecurityInfo security_info;
|
|
||||||
IdentityStatusToken identity_status_token;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
struct PublicationBuiltinTopicData {
|
|
||||||
BuiltinTopicKey_t key;
|
|
||||||
BuiltinTopicKey_t participant_key;
|
|
||||||
string topic_name;
|
|
||||||
string type_name;
|
|
||||||
DurabilityQosPolicy durability;
|
|
||||||
DeadlineQosPolicy deadline;
|
|
||||||
LatencyBudgetQosPolicy latency_budget;
|
|
||||||
LivelinessQosPolicy liveliness;
|
|
||||||
ReliabilityQosPolicy reliability;
|
|
||||||
LifespanQosPolicy lifespan;
|
|
||||||
DestinationOrderQosPolicy destination_order;
|
|
||||||
UserDataQosPolicy user_data;
|
|
||||||
OwnershipQosPolicy ownership;
|
|
||||||
OwnershipStrengthQosPolicy ownership_strength;
|
|
||||||
PresentationQosPolicy presentation;
|
|
||||||
PartitionQosPolicy partition;
|
|
||||||
TopicDataQosPolicy topic_data;
|
|
||||||
GroupDataQosPolicy group_data;
|
|
||||||
EndpointSecurityInfo security_info;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
struct SubscriptionBuiltinTopicData{
|
|
||||||
BuiltinTopicKey_t key;
|
|
||||||
BuiltinTopicKey_t participant_key;
|
|
||||||
string topic_name;
|
|
||||||
string type_name;
|
|
||||||
DurabilityQosPolicy durability;
|
|
||||||
DeadlineQosPolicy deadline;
|
|
||||||
LatencyBudgetQosPolicy latency_budget;
|
|
||||||
LivelinessQosPolicy liveliness;
|
|
||||||
ReliabilityQosPolicy reliability;
|
|
||||||
OwnershipQosPolicy ownership;
|
|
||||||
DestinationOrderQosPolicy destination_order;
|
|
||||||
UserDataQosPolicy user_data;
|
|
||||||
TimeBasedFilterQosPolicy time_based_filter;
|
|
||||||
PresentationQosPolicy presentation;
|
|
||||||
PartitionQosPolicy partition;
|
|
||||||
TopicDataQosPolicy topic_data;
|
|
||||||
GroupDataQosPolicy group_data;
|
|
||||||
EndpointSecurityInfo security_info;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
struct PublicationBuiltinTopicDataSecure {
|
|
||||||
BuiltinTopicKey_t key;
|
|
||||||
BuiltinTopicKey_t participant_key;
|
|
||||||
string topic_name;
|
|
||||||
string type_name;
|
|
||||||
DurabilityQosPolicy durability;
|
|
||||||
DeadlineQosPolicy deadline;
|
|
||||||
LatencyBudgetQosPolicy latency_budget;
|
|
||||||
LivelinessQosPolicy liveliness;
|
|
||||||
ReliabilityQosPolicy reliability;
|
|
||||||
LifespanQosPolicy lifespan;
|
|
||||||
DestinationOrderQosPolicy destination_order;
|
|
||||||
UserDataQosPolicy user_data;
|
|
||||||
OwnershipQosPolicy ownership;
|
|
||||||
OwnershipStrengthQosPolicy ownership_strength;
|
|
||||||
PresentationQosPolicy presentation;
|
|
||||||
PartitionQosPolicy partition;
|
|
||||||
TopicDataQosPolicy topic_data;
|
|
||||||
GroupDataQosPolicy group_data;
|
|
||||||
EndpointSecurityInfo security_info;
|
|
||||||
DataTags data_tags;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
struct SubscriptionBuiltinTopicDataSecure { // it was : DDS::SubscriptionBuiltinTopicData but it should SubscriptionBuiltinTopicData??? {
|
|
||||||
BuiltinTopicKey_t key;
|
|
||||||
BuiltinTopicKey_t participant_key;
|
|
||||||
string topic_name;
|
|
||||||
string type_name;
|
|
||||||
DurabilityQosPolicy durability;
|
|
||||||
DeadlineQosPolicy deadline;
|
|
||||||
LatencyBudgetQosPolicy latency_budget;
|
|
||||||
LivelinessQosPolicy liveliness;
|
|
||||||
ReliabilityQosPolicy reliability;
|
|
||||||
OwnershipQosPolicy ownership;
|
|
||||||
DestinationOrderQosPolicy destination_order;
|
|
||||||
UserDataQosPolicy user_data;
|
|
||||||
TimeBasedFilterQosPolicy time_based_filter;
|
|
||||||
PresentationQosPolicy presentation;
|
|
||||||
PartitionQosPolicy partition;
|
|
||||||
TopicDataQosPolicy topic_data;
|
|
||||||
GroupDataQosPolicy group_data;
|
|
||||||
EndpointSecurityInfo security_info;
|
|
||||||
DataTags data_tags;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
struct ParticipantSecurityAttributes {
|
|
||||||
boolean allow_unauthenticated_participants;
|
|
||||||
boolean is_access_protected;
|
|
||||||
boolean is_rtps_protected;
|
|
||||||
boolean is_discovery_protected;
|
|
||||||
boolean is_liveliness_protected;
|
|
||||||
ParticipantSecurityAttributesMask plugin_participant_attributes;
|
|
||||||
PropertySeq ac_endpoint_properties;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
struct EndpointSecurityAttributes {
|
|
||||||
boolean is_read_protected;
|
|
||||||
boolean is_write_protected;
|
|
||||||
boolean is_discovery_protected;
|
|
||||||
boolean is_liveliness_protected;
|
|
||||||
boolean is_submessage_protected;
|
|
||||||
boolean is_payload_protected;
|
|
||||||
boolean is_key_protected;
|
|
||||||
PluginEndpointSecurityAttributesMask plugin_endpoint_attributes;
|
|
||||||
PropertySeq ac_endpoint_properties;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
struct PluginEndpointSecurityAttributes {
|
|
||||||
boolean is_submessage_encrypted;
|
|
||||||
boolean is_payload_encrypted;
|
|
||||||
boolean is_submessage_origin_authenticated;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
|
@ -1,133 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright(c) 2006 to 2018 ADLINK Technology Limited and others
|
|
||||||
*
|
|
||||||
* This program and the accompanying materials are made available under the
|
|
||||||
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
||||||
* http://www.eclipse.org/legal/epl-2.0, or the Eclipse Distribution License
|
|
||||||
* v. 1.0 which is available at
|
|
||||||
* http://www.eclipse.org/org/documents/edl-v10.php.
|
|
||||||
*
|
|
||||||
* SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
#include "dds_security_builtintopics.idl"
|
|
||||||
|
|
||||||
|
|
||||||
#define DOMAINID_TYPE_NATIVE long
|
|
||||||
#define HANDLE_TYPE_NATIVE long long
|
|
||||||
|
|
||||||
|
|
||||||
module DDS {
|
|
||||||
|
|
||||||
/**
|
|
||||||
* DDs types that should be defined for security. These can be moved to another DDS idl other than builtin types idl
|
|
||||||
*/
|
|
||||||
|
|
||||||
module Security {
|
|
||||||
|
|
||||||
typedef long DynamicData;
|
|
||||||
|
|
||||||
typedef MessageToken AuthRequestMessageToken;
|
|
||||||
typedef MessageToken HandshakeMessageToken;
|
|
||||||
|
|
||||||
typedef Token AuthenticatedPeerCredentialToken;
|
|
||||||
typedef Token PermissionsCredentialToken;
|
|
||||||
|
|
||||||
typedef Token CryptoToken;
|
|
||||||
typedef sequence<CryptoToken> CryptoTokenSeq;
|
|
||||||
|
|
||||||
typedef Token ParticipantCryptoToken;
|
|
||||||
typedef Token DatawriterCryptoToken;
|
|
||||||
typedef Token DatareaderCryptoToken;
|
|
||||||
|
|
||||||
typedef CryptoTokenSeq ParticipantCryptoTokenSeq;
|
|
||||||
typedef CryptoTokenSeq DatawriterCryptoTokenSeq;
|
|
||||||
typedef CryptoTokenSeq DatareaderCryptoTokenSeq;
|
|
||||||
|
|
||||||
|
|
||||||
// From DDS-RTPS [2] clauses 8.4.2.1 and 9.3.1
|
|
||||||
typedef octet GuidPrefix_t[12];
|
|
||||||
|
|
||||||
struct EntityId_t {
|
|
||||||
octet entityKey[3];
|
|
||||||
octet entityKind;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
struct GUID_t {
|
|
||||||
GuidPrefix_t prefix;
|
|
||||||
EntityId_t entityId;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
struct MessageIdentity {
|
|
||||||
GUID_t source_guid;
|
|
||||||
long long sequence_number;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
typedef long SecurityExceptionCode;
|
|
||||||
|
|
||||||
struct SecurityException {
|
|
||||||
string message;
|
|
||||||
|
|
||||||
long minor_code;
|
|
||||||
};
|
|
||||||
|
|
||||||
enum ValidationResult_t {
|
|
||||||
VALIDATION_OK,
|
|
||||||
VALIDATION_FAILED,
|
|
||||||
VALIDATION_PENDING_RETRY,
|
|
||||||
VALIDATION_PENDING_HANDSHAKE_REQUEST,
|
|
||||||
VALIDATION_PENDING_HANDSHAKE_MESSAGE,
|
|
||||||
VALIDATION_OK_FINAL_MESSAGE
|
|
||||||
};
|
|
||||||
|
|
||||||
typedef long IdentityHandle;
|
|
||||||
//native IdentityHandle;
|
|
||||||
typedef long HandshakeHandle;
|
|
||||||
//native HandshakeHandle;
|
|
||||||
typedef long SharedSecretHandle;
|
|
||||||
//native SharedSecretHandle;
|
|
||||||
typedef long PermissionsHandle;
|
|
||||||
//native PermissionsHandle;
|
|
||||||
typedef long ParticipantCryptoHandle;
|
|
||||||
//native ParticipantCryptoHandle;
|
|
||||||
typedef long ParticipantCryptoHandleSeq;
|
|
||||||
//native ParticipantCryptoHandleSeq;
|
|
||||||
typedef long DatawriterCryptoHandle;
|
|
||||||
//native DatawriterCryptoHandle;
|
|
||||||
typedef long DatawriterCryptoHandleSeq;
|
|
||||||
//native DatawriterCryptoHandleSeq;
|
|
||||||
typedef long DatareaderCryptoHandle;
|
|
||||||
//native DatareaderCryptoHandle;
|
|
||||||
typedef long DatareaderCryptoHandleSeq;
|
|
||||||
//native DatareaderCryptoHandleSeq;
|
|
||||||
|
|
||||||
enum AuthStatusKind {
|
|
||||||
IDENTITY_STATUS /*@VALUE(1)*/
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
struct TopicSecurityAttributes {
|
|
||||||
boolean is_read_protected;
|
|
||||||
boolean is_write_protected;
|
|
||||||
boolean is_discovery_protected;
|
|
||||||
boolean is_liveliness_protected;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
enum SecureSubmessageCategory_t {
|
|
||||||
INFO_SUBMESSAGE,
|
|
||||||
DATAWRITER_SUBMESSAGE,
|
|
||||||
DATAREADER_SUBMESSAGE
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
|
@ -1,30 +0,0 @@
|
||||||
#
|
|
||||||
# Copyright(c) 2006 to 2018 ADLINK Technology Limited and others
|
|
||||||
#
|
|
||||||
# This program and the accompanying materials are made available under the
|
|
||||||
# terms of the Eclipse Public License v. 2.0 which is available at
|
|
||||||
# http://www.eclipse.org/legal/epl-2.0, or the Eclipse Distribution License
|
|
||||||
# v. 1.0 which is available at
|
|
||||||
# http://www.eclipse.org/org/documents/edl-v10.php.
|
|
||||||
#
|
|
||||||
# SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
|
|
||||||
#
|
|
||||||
include(Criterion)
|
|
||||||
|
|
||||||
add_criterion_executable(criterion_security .)
|
|
||||||
target_include_directories(criterion_security PRIVATE
|
|
||||||
"$<BUILD_INTERFACE:${CMAKE_BINARY_DIR}/src/include/>")
|
|
||||||
target_link_libraries(criterion_security ddsc OSAPI)
|
|
||||||
|
|
||||||
# Setup environment for config-tests
|
|
||||||
#set(Criterion_ddsc_config_simple_udp_file "${CMAKE_CURRENT_LIST_DIR}/config_simple_udp.xml")
|
|
||||||
#set(Criterion_ddsc_config_simple_udp_uri "file://${Criterion_ddsc_config_simple_udp_file}")
|
|
||||||
#set(Criterion_ddsc_config_simple_udp_max_participants "0")
|
|
||||||
#set_tests_properties(
|
|
||||||
# Criterion_security_config_simple_udp
|
|
||||||
# PROPERTIES
|
|
||||||
# REQUIRED_FILES ${Criterion_ddsc_config_simple_udp_file}
|
|
||||||
# ENVIRONMENT "${CMAKE_PROJECT_NAME_CAPS}_URI=${Criterion_ddsc_config_simple_udp_uri};MAX_PARTICIPANTS=${Criterion_ddsc_config_simple_udp_max_participants}"
|
|
||||||
#
|
|
||||||
#)
|
|
||||||
#configure_file("config_env.h.in" "config_env.h")
|
|
|
@ -1,16 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright(c) 2006 to 2018 ADLINK Technology Limited and others
|
|
||||||
*
|
|
||||||
* This program and the accompanying materials are made available under the
|
|
||||||
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
||||||
* http://www.eclipse.org/legal/epl-2.0, or the Eclipse Distribution License
|
|
||||||
* v. 1.0 which is available at
|
|
||||||
* http://www.eclipse.org/org/documents/edl-v10.php.
|
|
||||||
*
|
|
||||||
* SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
|
|
||||||
*/
|
|
||||||
//
|
|
||||||
// Created by kurtulus on 8-12-17.
|
|
||||||
//
|
|
||||||
|
|
||||||
#include "../include/security/ddsc_security.h"
|
|
Loading…
Add table
Add a link
Reference in a new issue