From c62a6ef8e0678e2a6492bf58b3bd7d27bb7a8843 Mon Sep 17 00:00:00 2001 From: lobotuerk Date: Thu, 24 Sep 2020 17:59:50 -0300 Subject: [PATCH 1/7] updated returns send request Signed-off-by: lobotuerk --- rmw_cyclonedds_cpp/src/rmw_node.cpp | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/rmw_cyclonedds_cpp/src/rmw_node.cpp b/rmw_cyclonedds_cpp/src/rmw_node.cpp index 6e583a8c..f6f07da7 100644 --- a/rmw_cyclonedds_cpp/src/rmw_node.cpp +++ b/rmw_cyclonedds_cpp/src/rmw_node.cpp @@ -3685,10 +3685,17 @@ extern "C" rmw_ret_t rmw_send_request( int64_t * sequence_id) { static std::atomic_uint next_request_id; - RET_NULL(client); - RET_WRONG_IMPLID(client); - RET_NULL(ros_request); - RET_NULL(sequence_id); + RMW_CHECK_ARGUMENT_FOR_NULL(client, RMW_RET_INVALID_ARGUMENT); + + RMW_CHECK_TYPE_IDENTIFIERS_MATCH( + client handle, + client->implementation_identifier, eclipse_cyclonedds_identifier, + return RMW_RET_INCORRECT_RMW_IMPLEMENTATION) + + RMW_CHECK_ARGUMENT_FOR_NULL(ros_request, RMW_RET_INVALID_ARGUMENT); + + RMW_CHECK_ARGUMENT_FOR_NULL(sequence_id, RMW_RET_INVALID_ARGUMENT); + auto info = static_cast(client->data); cdds_request_header_t header; header.guid = info->client.pub->pubiid; From 6ed94fe3aa79123f11cc74f81d24592327752e1a Mon Sep 17 00:00:00 2001 From: lobotuerk Date: Thu, 24 Sep 2020 18:04:27 -0300 Subject: [PATCH 2/7] cpplint Signed-off-by: lobotuerk --- rmw_cyclonedds_cpp/src/rmw_node.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rmw_cyclonedds_cpp/src/rmw_node.cpp b/rmw_cyclonedds_cpp/src/rmw_node.cpp index f6f07da7..eca6b88f 100644 --- a/rmw_cyclonedds_cpp/src/rmw_node.cpp +++ b/rmw_cyclonedds_cpp/src/rmw_node.cpp @@ -3690,7 +3690,7 @@ extern "C" rmw_ret_t rmw_send_request( RMW_CHECK_TYPE_IDENTIFIERS_MATCH( client handle, client->implementation_identifier, eclipse_cyclonedds_identifier, - return RMW_RET_INCORRECT_RMW_IMPLEMENTATION) + return RMW_RET_INCORRECT_RMW_IMPLEMENTATION); RMW_CHECK_ARGUMENT_FOR_NULL(ros_request, RMW_RET_INVALID_ARGUMENT); From 4914107ce776dace5d5313e97cd47b56c53c152b Mon Sep 17 00:00:00 2001 From: lobotuerk Date: Fri, 25 Sep 2020 14:13:26 -0300 Subject: [PATCH 3/7] updated take_response returns Signed-off-by: lobotuerk --- rmw_cyclonedds_cpp/src/rmw_node.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/rmw_cyclonedds_cpp/src/rmw_node.cpp b/rmw_cyclonedds_cpp/src/rmw_node.cpp index eca6b88f..f7285ffe 100644 --- a/rmw_cyclonedds_cpp/src/rmw_node.cpp +++ b/rmw_cyclonedds_cpp/src/rmw_node.cpp @@ -3512,8 +3512,14 @@ extern "C" rmw_ret_t rmw_take_response( rmw_service_info_t * request_header, void * ros_response, bool * taken) { - RET_NULL(client); - RET_WRONG_IMPLID(client); + RMW_CHECK_ARGUMENT_FOR_NULL(client, RMW_RET_INVALID_ARGUMENT); + RMW_CHECK_TYPE_IDENTIFIERS_MATCH( + client, + client->implementation_identifier, eclipse_cyclonedds_identifier, + return RMW_RET_INCORRECT_RMW_IMPLEMENTATION); + RMW_CHECK_ARGUMENT_FOR_NULL(request_header, RMW_RET_INVALID_ARGUMENT); + RMW_CHECK_ARGUMENT_FOR_NULL(ros_response, RMW_RET_INVALID_ARGUMENT); + RMW_CHECK_ARGUMENT_FOR_NULL(taken, RMW_RET_INVALID_ARGUMENT); auto info = static_cast(client->data); dds_time_t source_timestamp; rmw_ret_t ret = rmw_take_response_request( From a537652144f6565730e44ecd0d63e93de27e58eb Mon Sep 17 00:00:00 2001 From: lobotuerk Date: Fri, 25 Sep 2020 19:32:23 -0300 Subject: [PATCH 4/7] fixes Signed-off-by: lobotuerk --- rmw_cyclonedds_cpp/src/rmw_node.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/rmw_cyclonedds_cpp/src/rmw_node.cpp b/rmw_cyclonedds_cpp/src/rmw_node.cpp index f7285ffe..33098309 100644 --- a/rmw_cyclonedds_cpp/src/rmw_node.cpp +++ b/rmw_cyclonedds_cpp/src/rmw_node.cpp @@ -3471,9 +3471,9 @@ static rmw_ret_t rmw_take_response_request( void * ros_data, bool * taken, dds_time_t * source_timestamp, dds_instance_handle_t srcfilter) { - RET_NULL(taken); - RET_NULL(ros_data); - RET_NULL(request_header); + RMW_CHECK_ARGUMENT_FOR_NULL(taken, RMW_RET_INVALID_ARGUMENT); + RMW_CHECK_ARGUMENT_FOR_NULL(ros_data, RMW_RET_INVALID_ARGUMENT); + RMW_CHECK_ARGUMENT_FOR_NULL(request_header, RMW_RET_INVALID_ARGUMENT); cdds_request_wrapper_t wrap; dds_sample_info_t info; wrap.data = ros_data; @@ -3517,9 +3517,6 @@ extern "C" rmw_ret_t rmw_take_response( client, client->implementation_identifier, eclipse_cyclonedds_identifier, return RMW_RET_INCORRECT_RMW_IMPLEMENTATION); - RMW_CHECK_ARGUMENT_FOR_NULL(request_header, RMW_RET_INVALID_ARGUMENT); - RMW_CHECK_ARGUMENT_FOR_NULL(ros_response, RMW_RET_INVALID_ARGUMENT); - RMW_CHECK_ARGUMENT_FOR_NULL(taken, RMW_RET_INVALID_ARGUMENT); auto info = static_cast(client->data); dds_time_t source_timestamp; rmw_ret_t ret = rmw_take_response_request( @@ -3566,8 +3563,11 @@ extern "C" rmw_ret_t rmw_take_request( rmw_service_info_t * request_header, void * ros_request, bool * taken) { - RET_NULL(service); - RET_WRONG_IMPLID(service); + RMW_CHECK_ARGUMENT_FOR_NULL(service, RMW_RET_INVALID_ARGUMENT); + RMW_CHECK_TYPE_IDENTIFIERS_MATCH( + service, + service->implementation_identifier, eclipse_cyclonedds_identifier, + return RMW_RET_INCORRECT_RMW_IMPLEMENTATION); auto info = static_cast(service->data); return rmw_take_response_request( &info->service, request_header, ros_request, taken, nullptr, From 75f8873509c271cd58c19fe8cdf2199b20a1bb45 Mon Sep 17 00:00:00 2001 From: lobotuerk Date: Mon, 28 Sep 2020 16:42:55 -0300 Subject: [PATCH 5/7] updated send_response errors Signed-off-by: lobotuerk --- rmw_cyclonedds_cpp/src/rmw_node.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/rmw_cyclonedds_cpp/src/rmw_node.cpp b/rmw_cyclonedds_cpp/src/rmw_node.cpp index 33098309..5108f605 100644 --- a/rmw_cyclonedds_cpp/src/rmw_node.cpp +++ b/rmw_cyclonedds_cpp/src/rmw_node.cpp @@ -3641,10 +3641,13 @@ extern "C" rmw_ret_t rmw_send_response( const rmw_service_t * service, rmw_request_id_t * request_header, void * ros_response) { - RET_NULL(service); - RET_WRONG_IMPLID(service); - RET_NULL(request_header); - RET_NULL(ros_response); + RMW_CHECK_ARGUMENT_FOR_NULL(service, RMW_RET_INVALID_ARGUMENT); + RMW_CHECK_TYPE_IDENTIFIERS_MATCH( + service, + service->implementation_identifier, eclipse_cyclonedds_identifier, + return RMW_RET_INCORRECT_RMW_IMPLEMENTATION); + RMW_CHECK_ARGUMENT_FOR_NULL(request_header, RMW_RET_INVALID_ARGUMENT); + RMW_CHECK_ARGUMENT_FOR_NULL(ros_response, RMW_RET_INVALID_ARGUMENT); CddsService * info = static_cast(service->data); cdds_request_header_t header; dds_instance_handle_t reqwrih; From 616b200f95deecec08c46389dcfc2b17c0bd5c55 Mon Sep 17 00:00:00 2001 From: lobotuerk Date: Mon, 28 Sep 2020 16:45:21 -0300 Subject: [PATCH 6/7] reviews Signed-off-by: lobotuerk --- rmw_cyclonedds_cpp/src/rmw_node.cpp | 3 --- 1 file changed, 3 deletions(-) diff --git a/rmw_cyclonedds_cpp/src/rmw_node.cpp b/rmw_cyclonedds_cpp/src/rmw_node.cpp index 5108f605..d05f8d93 100644 --- a/rmw_cyclonedds_cpp/src/rmw_node.cpp +++ b/rmw_cyclonedds_cpp/src/rmw_node.cpp @@ -3695,14 +3695,11 @@ extern "C" rmw_ret_t rmw_send_request( { static std::atomic_uint next_request_id; RMW_CHECK_ARGUMENT_FOR_NULL(client, RMW_RET_INVALID_ARGUMENT); - RMW_CHECK_TYPE_IDENTIFIERS_MATCH( client handle, client->implementation_identifier, eclipse_cyclonedds_identifier, return RMW_RET_INCORRECT_RMW_IMPLEMENTATION); - RMW_CHECK_ARGUMENT_FOR_NULL(ros_request, RMW_RET_INVALID_ARGUMENT); - RMW_CHECK_ARGUMENT_FOR_NULL(sequence_id, RMW_RET_INVALID_ARGUMENT); auto info = static_cast(client->data); From 011370959102b5b36522501b0dff2b6a1abb5506 Mon Sep 17 00:00:00 2001 From: lobotuerk Date: Mon, 28 Sep 2020 18:42:33 -0300 Subject: [PATCH 7/7] took handle out Signed-off-by: lobotuerk --- rmw_cyclonedds_cpp/src/rmw_node.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rmw_cyclonedds_cpp/src/rmw_node.cpp b/rmw_cyclonedds_cpp/src/rmw_node.cpp index d05f8d93..fbffc9a6 100644 --- a/rmw_cyclonedds_cpp/src/rmw_node.cpp +++ b/rmw_cyclonedds_cpp/src/rmw_node.cpp @@ -3696,7 +3696,7 @@ extern "C" rmw_ret_t rmw_send_request( static std::atomic_uint next_request_id; RMW_CHECK_ARGUMENT_FOR_NULL(client, RMW_RET_INVALID_ARGUMENT); RMW_CHECK_TYPE_IDENTIFIERS_MATCH( - client handle, + client, client->implementation_identifier, eclipse_cyclonedds_identifier, return RMW_RET_INCORRECT_RMW_IMPLEMENTATION); RMW_CHECK_ARGUMENT_FOR_NULL(ros_request, RMW_RET_INVALID_ARGUMENT);