From b7b09978e25084d6bc1a56613f4f6c9582914a60 Mon Sep 17 00:00:00 2001 From: Pablo Garrido Date: Fri, 28 Feb 2025 08:22:37 +0100 Subject: [PATCH 1/2] Fix max lenght in UDP port string (#315) * Fix max lenght in UDP port string * Fix CI Signed-off-by: Pablo Garrido * Update * Linting * Update * Fix uncrustify --------- Signed-off-by: Pablo Garrido (cherry picked from commit aa15666b2d48e613d3f2a8f9c2d225262462c437) # Conflicts: # .github/workflows/ci.yml --- .github/workflows/ci.yml | 17 ++++++++++++++++- .../include/rmw_microros/rmw_microros.h | 2 +- rmw_microxrcedds_c/src/rmw_init.c | 2 +- .../src/rmw_microros/init_options.c | 2 +- 4 files changed, 19 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b7cda287..e4d6caac 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -23,7 +23,7 @@ jobs: - name: Download dependencies run: | - apt update && apt install -y python3-pip git python3-rosdep python3-colcon-common-extensions curl ros-$ROS_DISTRO-performance-test-fixture + apt update && apt install -y python3-pip git python3-rosdep python3-colcon-common-extensions curl ros-$ROS_DISTRO-performance-test-fixture gcovr git clone -b ros2 https://github.com/eProsima/Micro-CDR src/Micro-CDR git clone -b ros2 https://github.com/eProsima/Micro-XRCE-DDS-Client src/Micro-XRCE-DDS-Client git clone -b jazzy https://github.com/micro-ROS/rosidl_typesupport_microxrcedds src/rosidl_typesupport_microxrcedds @@ -31,7 +31,10 @@ jobs: touch src/rosidl_typesupport_microxrcedds/test/COLCON_IGNORE # Install coverage tools +<<<<<<< HEAD apt install -y gcovr +======= +>>>>>>> aa15666 (Fix max lenght in UDP port string (#315)) . /opt/ros/$ROS_DISTRO/setup.sh rosdep init && rosdep update rosdep install --from-paths src -r @@ -47,6 +50,18 @@ jobs: colcon test --event-handlers console_direct+ --packages-select=rmw_microxrcedds --return-code-on-test-failure ./build/rmw_microxrcedds/test/test-sizes 2> memanalisys_out +<<<<<<< HEAD +======= + # - name: Static memory + # continue-on-error: true + # if: github.event_name == 'pull_request' + # uses: machine-learning-apps/pr-comment@master + # env: + # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + # with: + # path: memanalisys_out + +>>>>>>> aa15666 (Fix max lenght in UDP port string (#315)) - name: Coverage run: | cd src/rmw-microxrcedds/ diff --git a/rmw_microxrcedds_c/include/rmw_microros/rmw_microros.h b/rmw_microxrcedds_c/include/rmw_microros/rmw_microros.h index 3d3e3383..2568f94a 100644 --- a/rmw_microxrcedds_c/include/rmw_microros/rmw_microros.h +++ b/rmw_microxrcedds_c/include/rmw_microros/rmw_microros.h @@ -49,7 +49,7 @@ extern "C" #elif defined(RMW_UXRCE_TRANSPORT_IPV6) #define MAX_IP_LEN 39 #endif // ifdef RMW_UXRCE_TRANSPORT_IPV4 -#define MAX_PORT_LEN 5 +#define MAX_PORT_LEN 6 // uint16_t max size + NULL-end string #define MAX_SERIAL_DEVICE 50 typedef struct rmw_uxrce_transport_params_t diff --git a/rmw_microxrcedds_c/src/rmw_init.c b/rmw_microxrcedds_c/src/rmw_init.c index 83121734..e5402f4b 100644 --- a/rmw_microxrcedds_c/src/rmw_init.c +++ b/rmw_microxrcedds_c/src/rmw_init.c @@ -92,7 +92,7 @@ rmw_init_options_init( return RMW_RET_INVALID_ARGUMENT; } - if (strlen(RMW_UXRCE_DEFAULT_PORT) <= MAX_PORT_LEN) { + if (strlen(RMW_UXRCE_DEFAULT_PORT) < MAX_PORT_LEN) { snprintf( init_options->impl->transport_params.agent_port, MAX_PORT_LEN, "%s", RMW_UXRCE_DEFAULT_PORT); diff --git a/rmw_microxrcedds_c/src/rmw_microros/init_options.c b/rmw_microxrcedds_c/src/rmw_microros/init_options.c index ef42c080..a26b65d7 100644 --- a/rmw_microxrcedds_c/src/rmw_microros/init_options.c +++ b/rmw_microxrcedds_c/src/rmw_microros/init_options.c @@ -97,7 +97,7 @@ rmw_ret_t rmw_uros_options_set_udp_address( return RMW_RET_INVALID_ARGUMENT; } - if (port != NULL && strlen(port) <= MAX_PORT_LEN) { + if (port != NULL && strlen(port) < MAX_PORT_LEN) { snprintf(rmw_options->impl->transport_params.agent_port, MAX_PORT_LEN, "%s", port); } else { RMW_UROS_TRACE_MESSAGE("default port configuration error") From e8f43d58a332df7f18028283d73e7a8d2b5882e9 Mon Sep 17 00:00:00 2001 From: Pablo Garrido Date: Thu, 6 Mar 2025 16:21:35 +0100 Subject: [PATCH 2/2] Fix conflicts --- .github/workflows/ci.yml | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e4d6caac..3d3ea0f8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -31,10 +31,6 @@ jobs: touch src/rosidl_typesupport_microxrcedds/test/COLCON_IGNORE # Install coverage tools -<<<<<<< HEAD - apt install -y gcovr -======= ->>>>>>> aa15666 (Fix max lenght in UDP port string (#315)) . /opt/ros/$ROS_DISTRO/setup.sh rosdep init && rosdep update rosdep install --from-paths src -r @@ -50,18 +46,6 @@ jobs: colcon test --event-handlers console_direct+ --packages-select=rmw_microxrcedds --return-code-on-test-failure ./build/rmw_microxrcedds/test/test-sizes 2> memanalisys_out -<<<<<<< HEAD -======= - # - name: Static memory - # continue-on-error: true - # if: github.event_name == 'pull_request' - # uses: machine-learning-apps/pr-comment@master - # env: - # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - # with: - # path: memanalisys_out - ->>>>>>> aa15666 (Fix max lenght in UDP port string (#315)) - name: Coverage run: | cd src/rmw-microxrcedds/