From 91012d9af758a48c4c57fc940dfcc8a581fa46ac Mon Sep 17 00:00:00 2001 From: Dimitri Staessens Date: Wed, 14 Feb 2018 13:55:00 +0100 Subject: build: Allow out-of-tree build of tools This removes the dependencies for the tools on some ouroboros internal headers (endian.h and time_utils.h) so they can be built out-of-tree. The echo-app tool has been renamed oecho and the cbr tool has been renamed ocbr. Signed-off-by: Dimitri Staessens Signed-off-by: Sander Vrijders --- src/tools/oping/CMakeLists.txt | 5 +++++ src/tools/oping/oping.c | 15 ++++++++++++--- src/tools/oping/oping_client.c | 28 ++++++++-------------------- src/tools/oping/oping_server.c | 4 ---- 4 files changed, 25 insertions(+), 27 deletions(-) (limited to 'src/tools/oping') diff --git a/src/tools/oping/CMakeLists.txt b/src/tools/oping/CMakeLists.txt index ebf96bdb..31a4f961 100644 --- a/src/tools/oping/CMakeLists.txt +++ b/src/tools/oping/CMakeLists.txt @@ -4,6 +4,11 @@ include_directories(${CMAKE_CURRENT_BINARY_DIR}) include_directories(${CMAKE_SOURCE_DIR}/include) include_directories(${CMAKE_BINARY_DIR}/include) +get_filename_component(CURRENT_SOURCE_PARENT_DIR + ${CMAKE_CURRENT_SOURCE_DIR} DIRECTORY) + +include_directories(${CURRENT_SOURCE_PARENT_DIR}) + find_library(LIBM_LIBRARIES m) if(NOT LIBM_LIBRARIES) message(FATAL_ERROR "libm not found") diff --git a/src/tools/oping/oping.c b/src/tools/oping/oping.c index 5e01e026..3c1d4fe9 100644 --- a/src/tools/oping/oping.c +++ b/src/tools/oping/oping.c @@ -37,17 +37,26 @@ */ #define _POSIX_C_SOURCE 199506L -#define __XSI_VISIBLE 500 +#define __XSI_VISIBLE 500 -#include -#include #include +#include +#include + +#include "time_utils.h" #include #include #include #include #include +#include +#include +#include +#include +#include +#include +#include #define OPING_BUF_SIZE 1500 diff --git a/src/tools/oping/oping_client.c b/src/tools/oping/oping_client.c index 8952f5ed..07fbde74 100644 --- a/src/tools/oping/oping_client.c +++ b/src/tools/oping/oping_client.c @@ -36,18 +36,6 @@ * OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include - volatile bool stop; void shutdown_client(int signo, siginfo_t * info, void * c) @@ -88,12 +76,12 @@ void * reader(void * o) if (msg_len < 0) continue; - if (ntoh32(msg->type) != ECHO_REPLY) { + if (ntohl(msg->type) != ECHO_REPLY) { printf("Invalid message on fd %d.\n", fd); continue; } - if (ntoh32(msg->id) >= client.count) { + if ((uint32_t) ntohl(msg->id) >= client.count) { printf("Invalid id.\n"); continue; } @@ -102,8 +90,8 @@ void * reader(void * o) clock_gettime(CLOCK_MONOTONIC, &now); - sent.tv_sec = ntoh64(msg->tv_sec); - sent.tv_nsec = ntoh64(msg->tv_nsec); + sent.tv_sec = msg->tv_sec; + sent.tv_nsec = msg->tv_nsec; ms = ts_diff_us(&sent, &now) / 1000.0; @@ -155,10 +143,10 @@ void * writer(void * o) clock_gettime(CLOCK_MONOTONIC, &now); - msg->type = hton32(ECHO_REQUEST); - msg->id = hton32(client.sent++); - msg->tv_sec = hton64(now.tv_sec); - msg->tv_nsec = hton64(now.tv_nsec); + msg->type = htonl(ECHO_REQUEST); + msg->id = htonl(client.sent++); + msg->tv_sec = now.tv_sec; + msg->tv_nsec = now.tv_nsec; if (flow_write(*fdp, buf, client.size) == -1) { printf("Failed to send SDU.\n"); diff --git a/src/tools/oping/oping_server.c b/src/tools/oping/oping_server.c index 49b14f81..e91b6f10 100644 --- a/src/tools/oping/oping_server.c +++ b/src/tools/oping/oping_server.c @@ -36,10 +36,6 @@ * OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include -#include -#include - void shutdown_server(int signo, siginfo_t * info, void * c) { (void) info; -- cgit v1.2.3