summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authordimitri staessens <dimitri.staessens@ugent.be>2017-10-14 11:32:22 +0000
committerSander Vrijders <sander.vrijders@ugent.be>2017-10-14 11:32:22 +0000
commitbf1602c915dee8bd6cbb69aba1fe88619b9c0eed (patch)
tree8c93fcb67d61ca40b060f9c9ea1b62389f247dbd /src
parent1888c137a8ff315bc549c16740aa727da8c666f5 (diff)
parentbedd1d4eadde9ab64f924c69eba716b015599e67 (diff)
downloadouroboros-bf1602c915dee8bd6cbb69aba1fe88619b9c0eed.tar.gz
ouroboros-bf1602c915dee8bd6cbb69aba1fe88619b9c0eed.zip
Merged in dstaesse/ouroboros/be-deprecate-ouroboros-init-fini (pull request #626)
Be deprecate ouroboros init fini
Diffstat (limited to 'src')
-rw-r--r--src/ipcpd/ipcp.c17
-rw-r--r--src/ipcpd/ipcp.h1
-rw-r--r--src/ipcpd/local/CMakeLists.txt2
-rw-r--r--src/ipcpd/local/main.c2
-rw-r--r--src/ipcpd/normal/CMakeLists.txt2
-rw-r--r--src/ipcpd/normal/dht.c9
-rw-r--r--src/ipcpd/normal/main.c2
-rw-r--r--src/ipcpd/normal/pol/tests/CMakeLists.txt2
-rw-r--r--src/ipcpd/normal/tests/CMakeLists.txt2
-rw-r--r--src/ipcpd/shim-eth-llc/CMakeLists.txt4
-rw-r--r--src/ipcpd/shim-eth-llc/main.c2
-rw-r--r--src/ipcpd/shim-udp/CMakeLists.txt2
-rw-r--r--src/ipcpd/shim-udp/main.c2
-rw-r--r--src/irmd/CMakeLists.txt2
-rw-r--r--src/irmd/main.c1
-rw-r--r--src/lib/CMakeLists.txt64
-rw-r--r--src/lib/dev.c29
-rw-r--r--src/lib/tests/CMakeLists.txt2
-rw-r--r--src/tools/cbr/CMakeLists.txt2
-rw-r--r--src/tools/cbr/cbr.c13
-rw-r--r--src/tools/echo/CMakeLists.txt2
-rw-r--r--src/tools/echo/echo.c16
-rw-r--r--src/tools/echo/echo_server.c14
-rw-r--r--src/tools/irm/CMakeLists.txt2
-rw-r--r--src/tools/operf/CMakeLists.txt2
-rw-r--r--src/tools/operf/operf.c13
-rw-r--r--src/tools/oping/CMakeLists.txt2
-rw-r--r--src/tools/oping/oping.c13
28 files changed, 86 insertions, 140 deletions
diff --git a/src/ipcpd/ipcp.c b/src/ipcpd/ipcp.c
index 9f4d9eea..44dbb52a 100644
--- a/src/ipcpd/ipcp.c
+++ b/src/ipcpd/ipcp.c
@@ -544,7 +544,6 @@ static int parse_args(int argc,
int ipcp_init(int argc,
char ** argv,
- enum ipcp_type type,
struct ipcp_ops * ops)
{
bool log;
@@ -558,18 +557,6 @@ int ipcp_init(int argc,
log_init(log);
- if (type == IPCP_NORMAL) {
- if (ouroboros_init(argv[0])) {
- log_err("Failed to init normal IPCPI.");
- return -1;
- }
- } else {
- if (ouroboros_init(NULL)) {
- log_err("Failed to init shim IPCPI.");
- return -1;
- }
- }
-
ipcpi.irmd_fd = -1;
ipcpi.state = IPCP_NULL;
@@ -652,8 +639,6 @@ int ipcp_init(int argc,
fail_serv_sock:
free(ipcpi.sock_path);
fail_sock_path:
- ouroboros_fini();
-
return ret;
}
@@ -736,8 +721,6 @@ void ipcp_fini()
log_info("IPCP %d out.", getpid());
log_fini();
-
- ouroboros_fini();
}
void ipcp_set_state(enum ipcp_state state)
diff --git a/src/ipcpd/ipcp.h b/src/ipcpd/ipcp.h
index d47d224b..62fb310a 100644
--- a/src/ipcpd/ipcp.h
+++ b/src/ipcpd/ipcp.h
@@ -109,7 +109,6 @@ struct ipcp {
int ipcp_init(int argc,
char ** argv,
- enum ipcp_type type,
struct ipcp_ops * ops);
int ipcp_boot(void);
diff --git a/src/ipcpd/local/CMakeLists.txt b/src/ipcpd/local/CMakeLists.txt
index 925092bd..788c1139 100644
--- a/src/ipcpd/local/CMakeLists.txt
+++ b/src/ipcpd/local/CMakeLists.txt
@@ -19,7 +19,7 @@ set(SHIM_LOCAL_SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/main.c)
add_executable(ipcpd-local ${SHIM_LOCAL_SOURCES} ${IPCP_SOURCES})
-target_link_libraries(ipcpd-local LINK_PUBLIC ouroboros)
+target_link_libraries(ipcpd-local LINK_PUBLIC ouroboros-common ouroboros-dev)
include(AddCompileFlags)
if (CMAKE_BUILD_TYPE MATCHES Debug)
diff --git a/src/ipcpd/local/main.c b/src/ipcpd/local/main.c
index b98e144c..684949d9 100644
--- a/src/ipcpd/local/main.c
+++ b/src/ipcpd/local/main.c
@@ -326,7 +326,7 @@ static struct ipcp_ops local_ops = {
int main(int argc,
char * argv[])
{
- if (ipcp_init(argc, argv, THIS_TYPE, &local_ops) < 0) {
+ if (ipcp_init(argc, argv, &local_ops) < 0) {
ipcp_create_r(getpid(), -1);
exit(EXIT_FAILURE);
}
diff --git a/src/ipcpd/normal/CMakeLists.txt b/src/ipcpd/normal/CMakeLists.txt
index 8dbe4820..dd67ce05 100644
--- a/src/ipcpd/normal/CMakeLists.txt
+++ b/src/ipcpd/normal/CMakeLists.txt
@@ -50,7 +50,7 @@ set(SOURCE_FILES
add_executable(ipcpd-normal ${SOURCE_FILES} ${IPCP_SOURCES}
${FLOW_ALLOC_SRCS} ${LS_PROTO_SRCS} ${KAD_PROTO_SRCS} ${ENROLL_PROTO_SRCS})
-target_link_libraries(ipcpd-normal LINK_PUBLIC ouroboros)
+target_link_libraries(ipcpd-normal LINK_PUBLIC ouroboros-dev ouroboros-irm)
include(AddCompileFlags)
if (CMAKE_BUILD_TYPE MATCHES Debug)
diff --git a/src/ipcpd/normal/dht.c b/src/ipcpd/normal/dht.c
index 7ca555ab..161bf292 100644
--- a/src/ipcpd/normal/dht.c
+++ b/src/ipcpd/normal/dht.c
@@ -1420,7 +1420,9 @@ static int send_msg(struct dht * dht,
kad_msg_t * msg,
uint64_t addr)
{
+#ifndef __DHT_TEST__
struct shm_du_buff * sdb;
+#endif
size_t len;
int retr = 0;
@@ -1451,12 +1453,11 @@ static int send_msg(struct dht * dht,
if (len == 0)
goto fail_msg;
+#ifndef __DHT_TEST__
if (ipcp_sdb_reserve(&sdb, len))
goto fail_msg;
-
kad_msg__pack(msg, shm_du_buff_head(sdb));
-#ifndef __DHT_TEST__
while (retr >= 0) {
if (dt_write_sdu(addr, QOS_CUBE_BE, dht->fd, sdb))
retr--;
@@ -1470,7 +1471,6 @@ static int send_msg(struct dht * dht,
#else
(void) addr;
(void) retr;
- ipcp_sdb_release(sdb);
#endif /* __DHT_TEST__ */
if (msg->code < KAD_STORE && dht_get_state(dht) != DHT_SHUTDOWN)
@@ -2363,8 +2363,9 @@ static void * dht_handle_sdu(void * o)
i = shm_du_buff_tail(cmd->sdb) - shm_du_buff_head(cmd->sdb);
msg = kad_msg__unpack(NULL, i, shm_du_buff_head(cmd->sdb));
-
+#ifndef __DHT_TEST__
ipcp_sdb_release(cmd->sdb);
+#endif
free(cmd);
if (msg == NULL) {
diff --git a/src/ipcpd/normal/main.c b/src/ipcpd/normal/main.c
index 8c16fd22..719be77c 100644
--- a/src/ipcpd/normal/main.c
+++ b/src/ipcpd/normal/main.c
@@ -299,7 +299,7 @@ static struct ipcp_ops normal_ops = {
int main(int argc,
char * argv[])
{
- if (ipcp_init(argc, argv, THIS_TYPE, &normal_ops) < 0) {
+ if (ipcp_init(argc, argv, &normal_ops) < 0) {
log_err("Failed to init IPCP.");
goto fail_init;
}
diff --git a/src/ipcpd/normal/pol/tests/CMakeLists.txt b/src/ipcpd/normal/pol/tests/CMakeLists.txt
index 55ca425a..d0652533 100644
--- a/src/ipcpd/normal/pol/tests/CMakeLists.txt
+++ b/src/ipcpd/normal/pol/tests/CMakeLists.txt
@@ -21,7 +21,7 @@ create_test_sourcelist(${PARENT_DIR}_tests test_suite.c
)
add_executable(${PARENT_DIR}_test EXCLUDE_FROM_ALL ${${PARENT_DIR}_tests})
-target_link_libraries(${PARENT_DIR}_test ouroboros)
+target_link_libraries(${PARENT_DIR}_test ouroboros-common)
add_dependencies(check ${PARENT_DIR}_test)
diff --git a/src/ipcpd/normal/tests/CMakeLists.txt b/src/ipcpd/normal/tests/CMakeLists.txt
index d975caf6..be92888f 100644
--- a/src/ipcpd/normal/tests/CMakeLists.txt
+++ b/src/ipcpd/normal/tests/CMakeLists.txt
@@ -24,7 +24,7 @@ set_source_files_properties(${KAD_PROTO_SRCS} PROPERTIES GENERATED TRUE)
add_executable(${PARENT_DIR}_test EXCLUDE_FROM_ALL ${${PARENT_DIR}_tests}
${KAD_PROTO_SRCS})
-target_link_libraries(${PARENT_DIR}_test ouroboros)
+target_link_libraries(${PARENT_DIR}_test ouroboros-common)
add_dependencies(check ${PARENT_DIR}_test)
diff --git a/src/ipcpd/shim-eth-llc/CMakeLists.txt b/src/ipcpd/shim-eth-llc/CMakeLists.txt
index e10a715f..600340b7 100644
--- a/src/ipcpd/shim-eth-llc/CMakeLists.txt
+++ b/src/ipcpd/shim-eth-llc/CMakeLists.txt
@@ -91,8 +91,8 @@ if (HAVE_LLC)
${NETMAP_C_INCLUDE_DIR})
endif ()
- target_link_libraries(ipcpd-shim-eth-llc LINK_PUBLIC ouroboros
- ${PROTOBUF_C_LIBRARY})
+ target_link_libraries(ipcpd-shim-eth-llc LINK_PUBLIC ouroboros-common
+ ouroboros-dev ${PROTOBUF_C_LIBRARY})
include(AddCompileFlags)
if (CMAKE_BUILD_TYPE MATCHES Debug)
diff --git a/src/ipcpd/shim-eth-llc/main.c b/src/ipcpd/shim-eth-llc/main.c
index 52b111a5..e735b651 100644
--- a/src/ipcpd/shim-eth-llc/main.c
+++ b/src/ipcpd/shim-eth-llc/main.c
@@ -1342,7 +1342,7 @@ static struct ipcp_ops eth_llc_ops = {
int main(int argc,
char * argv[])
{
- if (ipcp_init(argc, argv, THIS_TYPE, &eth_llc_ops) < 0)
+ if (ipcp_init(argc, argv, &eth_llc_ops) < 0)
goto fail_init;
if (eth_llc_data_init() < 0) {
diff --git a/src/ipcpd/shim-udp/CMakeLists.txt b/src/ipcpd/shim-udp/CMakeLists.txt
index fb57778e..89a446a7 100644
--- a/src/ipcpd/shim-udp/CMakeLists.txt
+++ b/src/ipcpd/shim-udp/CMakeLists.txt
@@ -23,7 +23,7 @@ set(SHIM_UDP_SOURCES
add_executable(ipcpd-shim-udp ${SHIM_UDP_SOURCES} ${IPCP_SOURCES}
${SHIM_UDP_PROTO_SRCS})
-target_link_libraries(ipcpd-shim-udp LINK_PUBLIC ouroboros
+target_link_libraries(ipcpd-shim-udp LINK_PUBLIC ouroboros-common ouroboros-dev
${PROTOBUF_C_LIBRARY})
# Find the nsupdate executable
diff --git a/src/ipcpd/shim-udp/main.c b/src/ipcpd/shim-udp/main.c
index d393dc4b..f8248f86 100644
--- a/src/ipcpd/shim-udp/main.c
+++ b/src/ipcpd/shim-udp/main.c
@@ -1113,7 +1113,7 @@ static struct ipcp_ops udp_ops = {
int main(int argc,
char * argv[])
{
- if (ipcp_init(argc, argv, THIS_TYPE, &udp_ops) < 0) {
+ if (ipcp_init(argc, argv, &udp_ops) < 0) {
ipcp_create_r(getpid(), -1);
exit(EXIT_FAILURE);
}
diff --git a/src/irmd/CMakeLists.txt b/src/irmd/CMakeLists.txt
index de883d63..55288263 100644
--- a/src/irmd/CMakeLists.txt
+++ b/src/irmd/CMakeLists.txt
@@ -41,7 +41,7 @@ set(SOURCE_FILES
add_executable (irmd ${SOURCE_FILES})
-target_link_libraries (irmd LINK_PUBLIC ouroboros)
+target_link_libraries (irmd LINK_PUBLIC ouroboros-common)
include(AddCompileFlags)
if (CMAKE_BUILD_TYPE MATCHES Debug)
diff --git a/src/irmd/main.c b/src/irmd/main.c
index 99a34af2..80417806 100644
--- a/src/irmd/main.c
+++ b/src/irmd/main.c
@@ -1120,7 +1120,6 @@ static int flow_accept(pid_t api,
e = api_table_get(&irmd.api_table, api);
if (e == NULL) {
- /* Can only happen if server called ouroboros_init(NULL); */
pthread_rwlock_unlock(&irmd.reg_lock);
log_err("Unknown instance %d calling accept.", api);
return -EINVAL;
diff --git a/src/lib/CMakeLists.txt b/src/lib/CMakeLists.txt
index 00670f65..ba670acf 100644
--- a/src/lib/CMakeLists.txt
+++ b/src/lib/CMakeLists.txt
@@ -73,7 +73,7 @@ if (LIBGCRYPT_LIBRARIES)
string(REGEX REPLACE "^#define GCRYPT_VERSION \"(.*)\".*$" "\\1"
GCVER "${GCSTR}")
if (NOT GCVER VERSION_LESS "1.7.0")
- set (DISABLE_LIBGCRYPT FALSE CACHE BOOL "Disable libgcrypt support")
+ set(DISABLE_LIBGCRYPT FALSE CACHE BOOL "Disable libgcrypt support")
if (NOT DISABLE_LIBGCRYPT)
message(STATUS "libgcrypt support enabled")
set(HAVE_LIBGCRYPT TRUE CACHE INTERNAL "")
@@ -94,7 +94,7 @@ endif ()
find_package(OpenSSL QUIET)
if (OPENSSL_FOUND)
- set (DISABLE_OPENSSL FALSE CACHE BOOL "Disable OpenSSL support")
+ set(DISABLE_OPENSSL FALSE CACHE BOOL "Disable OpenSSL support")
if (NOT DISABLE_OPENSSL)
message(STATUS "OpenSSL support enabled")
set(HAVE_OPENSSL TRUE)
@@ -104,7 +104,7 @@ if (OPENSSL_FOUND)
endif ()
if (NOT HAVE_OPENSSL)
- set (OPENSSL_INCLUDE_DIR "")
+ set(OPENSSL_INCLUDE_DIR "")
endif ()
if (APPLE OR CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
@@ -129,12 +129,12 @@ mark_as_advanced(LIBRT_LIBRARIES LIBPTHREAD_LIBRARIES
LIBGCRYPT_LIBRARIES OPENSSL_LIBRARIES SYS_RND_INCLUDE_DIR
LIBGCRYPT_INCLUDE_DIR SYS_RND_HDR)
-math(EXPR SHM_BUFFER_EXPR "1 << 20")
+math(EXPR SHM_BUFFER_EXPR "1 << 17")
set(SHM_BUFFER_SIZE ${SHM_BUFFER_EXPR} CACHE STRING
"Number of blocks in SDU buffer, must be a power of 2")
-set(SYS_MAX_FLOWS 4096 CACHE STRING
+set(SYS_MAX_FLOWS 10240 CACHE STRING
"Maximum number of total flows for this system")
-set(AP_MAX_FLOWS 1024 CACHE STRING
+set(AP_MAX_FLOWS 4096 CACHE STRING
"Maximum number of flows in an application")
set(AP_RES_FDS 64 CACHE STRING
"Number of reserved flow descriptors per application")
@@ -148,7 +148,7 @@ if (NOT APPLE)
set(PTHREAD_COND_CLOCK "CLOCK_MONOTONIC" CACHE STRING
"Clock to use for condition variable timing")
else ()
- set (PTHREAD_COND_CLOCK "CLOCK_REALTIME" CACHE INTERNAL
+ set(PTHREAD_COND_CLOCK "CLOCK_REALTIME" CACHE INTERNAL
"Clock to use for condition variable timing")
endif ()
set(SOCKET_TIMEOUT 1000 CACHE STRING
@@ -170,17 +170,24 @@ set(SHM_RDRB_MULTI_BLOCK true CACHE BOOL
set(SHM_RBUFF_LOCKLESS 0 CACHE BOOL
"Enable shared memory lockless rbuff support")
-set(SOURCE_FILES
+set(SOURCE_FILES_DEV
# Add source files here
- bitmap.c
- btree.c
cacep.c
- crc32.c
dev.c
frct_pci.c
+ timerwheel.c
+ )
+
+set(SOURCE_FILES_IRM
+ irm.c
+)
+
+set(SOURCE_FILES_COMMON
+ bitmap.c
+ btree.c
+ crc32.c
hash.c
hashtable.c
- irm.c
list.c
lockfile.c
logs.c
@@ -197,29 +204,48 @@ set(SOURCE_FILES
shm_rdrbuff.c
sockets.c
time_utils.c
- timerwheel.c
tpm.c
utils.c
- )
+)
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/config.h.in"
"${CMAKE_CURRENT_BINARY_DIR}/config.h" @ONLY)
-add_library(ouroboros SHARED ${SOURCE_FILES} ${IRM_PROTO_SRCS}
+add_library(ouroboros-common SHARED ${SOURCE_FILES_COMMON} ${IRM_PROTO_SRCS}
+ ${IPCP_PROTO_SRCS} ${DIF_CONFIG_PROTO_SRCS})
+
+add_library(ouroboros-dev SHARED ${SOURCE_FILES_DEV} ${IRM_PROTO_SRCS}
${IPCP_PROTO_SRCS} ${DIF_CONFIG_PROTO_SRCS} ${CACEP_PROTO_SRCS})
+add_library(ouroboros-irm SHARED ${SOURCE_FILES_IRM} ${IRM_PROTO_SRCS}
+ ${IPCP_PROTO_SRCS} ${DIF_CONFIG_PROTO_SRCS})
+
include(AddCompileFlags)
if (CMAKE_BUILD_TYPE MATCHES Debug)
- add_compile_flags(ouroboros -DCONFIG_OUROBOROS_DEBUG)
+ add_compile_flags(ouroboros-common -DCONFIG_OUROBOROS_DEBUG)
+ add_compile_flags(ouroboros-dev -DCONFIG_OUROBOROS_DEBUG)
+ add_compile_flags(ouroboros-irm -DCONFIG_OUROBOROS_DEBUG)
endif (CMAKE_BUILD_TYPE MATCHES Debug)
-target_link_libraries(ouroboros ${LIBRT_LIBRARIES}
+target_link_libraries(ouroboros-common ${LIBRT_LIBRARIES}
${LIBPTHREAD_LIBRARIES} ${PROTOBUF_C_LIBRARY} ${OPENSSL_LIBRARIES}
${LIBGCRYPT_LIBRARIES} ${FUSE_LIBRARIES})
-install(TARGETS ouroboros LIBRARY DESTINATION usr/lib)
+target_link_libraries(ouroboros-dev ouroboros-common)
+
+target_link_libraries(ouroboros-irm ouroboros-common)
+
+install(TARGETS ouroboros-common LIBRARY DESTINATION usr/lib)
+install(TARGETS ouroboros-dev LIBRARY DESTINATION usr/lib)
+install(TARGETS ouroboros-irm LIBRARY DESTINATION usr/lib)
+
+target_include_directories(ouroboros-common PUBLIC ${CMAKE_CURRENT_BINARY_DIR}
+ ${SYS_RND_HDR} ${LIBGCRYPT_INCLUDE_DIR} ${OPENSSL_INCLUDE_DIR})
+
+target_include_directories(ouroboros-dev PUBLIC ${CMAKE_CURRENT_BINARY_DIR}
+ ${SYS_RND_HDR} ${LIBGCRYPT_INCLUDE_DIR} ${OPENSSL_INCLUDE_DIR})
-target_include_directories(ouroboros PUBLIC ${CMAKE_CURRENT_BINARY_DIR}
+target_include_directories(ouroboros-irm PUBLIC ${CMAKE_CURRENT_BINARY_DIR}
${SYS_RND_HDR} ${LIBGCRYPT_INCLUDE_DIR} ${OPENSSL_INCLUDE_DIR})
add_subdirectory(tests)
diff --git a/src/lib/dev.c b/src/lib/dev.c
index e6e5b4d4..85dbfb0a 100644
--- a/src/lib/dev.c
+++ b/src/lib/dev.c
@@ -595,11 +595,16 @@ static int flow_init(int port_id,
return fd;
}
-int ouroboros_init(const char * ap_name)
+__attribute__((constructor)) static void init(int argc,
+ char ** argv,
+ char ** envp)
{
- int i;
- int j;
- int ret = -ENOMEM;
+ const char * ap_name = argv[0];
+ int i;
+ int j;
+
+ (void) argc;
+ (void) envp;
assert(ai.ap_name == NULL);
@@ -618,10 +623,8 @@ int ouroboros_init(const char * ap_name)
goto fail_fqset;
ai.rdrb = shm_rdrbuff_open();
- if (ai.rdrb == NULL) {
- ret = -EIRMD;
+ if (ai.rdrb == NULL)
goto fail_rdrb;
- }
ai.flows = malloc(sizeof(*ai.flows) * AP_MAX_FLOWS);
if (ai.flows == NULL)
@@ -651,10 +654,8 @@ int ouroboros_init(const char * ap_name)
if (ai.ap_name == NULL)
goto fail_ap_name;
- if (api_announce((char *) ai.ap_name)) {
- ret = -EIRMD;
+ if (api_announce((char *) ai.ap_name))
goto fail_announce;
- }
}
for (i = 0; i < SYS_MAX_FLOWS; ++i) {
@@ -680,7 +681,7 @@ int ouroboros_init(const char * ap_name)
if (ai.tw == NULL)
goto fail_timerwheel;
- return 0;
+ return;
fail_timerwheel:
pthread_rwlock_destroy(&ai.lock);
@@ -710,10 +711,12 @@ int ouroboros_init(const char * ap_name)
fail_fqueues:
bmp_destroy(ai.fds);
fail_fds:
- return ret;
+ fprintf(stderr, "FATAL: ouroboros-dev init failed. "
+ "Make sure an IRMd is running.\n\n");
+ exit(EXIT_FAILURE);
}
-void ouroboros_fini()
+__attribute__((destructor)) static void fini(void)
{
int i = 0;
diff --git a/src/lib/tests/CMakeLists.txt b/src/lib/tests/CMakeLists.txt
index 0edd4a42..a9ff207e 100644
--- a/src/lib/tests/CMakeLists.txt
+++ b/src/lib/tests/CMakeLists.txt
@@ -22,7 +22,7 @@ create_test_sourcelist(${PARENT_DIR}_tests test_suite.c
add_executable(${PARENT_DIR}_test EXCLUDE_FROM_ALL ${${PARENT_DIR}_tests})
-target_link_libraries(${PARENT_DIR}_test ouroboros)
+target_link_libraries(${PARENT_DIR}_test ouroboros-common)
add_dependencies(check ${PARENT_DIR}_test)
diff --git a/src/tools/cbr/CMakeLists.txt b/src/tools/cbr/CMakeLists.txt
index 1883141c..2a64a65b 100644
--- a/src/tools/cbr/CMakeLists.txt
+++ b/src/tools/cbr/CMakeLists.txt
@@ -11,6 +11,6 @@ set(SOURCE_FILES
add_executable(cbr ${SOURCE_FILES})
-target_link_libraries(cbr LINK_PUBLIC ouroboros)
+target_link_libraries(cbr LINK_PUBLIC ouroboros-dev)
install(TARGETS cbr RUNTIME DESTINATION usr/bin)
diff --git a/src/tools/cbr/cbr.c b/src/tools/cbr/cbr.c
index 14613198..afa9b535 100644
--- a/src/tools/cbr/cbr.c
+++ b/src/tools/cbr/cbr.c
@@ -72,7 +72,6 @@ int main(int argc, char ** argv)
int ret = 0;
char * rem = NULL;
char * s_apn = NULL;
- char ** argv_dup = argv;
bool server = false;
@@ -129,18 +128,8 @@ int main(int argc, char ** argv)
}
if (server) {
- if (ouroboros_init(argv_dup[0]) < 0) {
- printf("Failed to init.\n");
- exit(EXIT_FAILURE);
- }
-
ret = server_main();
} else {
- if (ouroboros_init(NULL) < 0) {
- printf("Failed to init.\n");
- exit(EXIT_FAILURE);
- }
-
if (s_apn == NULL) {
printf("No server specified.\n");
usage();
@@ -150,7 +139,5 @@ int main(int argc, char ** argv)
ret = client_main(s_apn, duration, size, rate, flood, sleep);
}
- ouroboros_fini();
-
return ret;
}
diff --git a/src/tools/echo/CMakeLists.txt b/src/tools/echo/CMakeLists.txt
index 7cecfe50..0cca8466 100644
--- a/src/tools/echo/CMakeLists.txt
+++ b/src/tools/echo/CMakeLists.txt
@@ -11,6 +11,6 @@ set(SOURCE_FILES
add_executable(echo-app ${SOURCE_FILES})
-target_link_libraries(echo-app LINK_PUBLIC ouroboros)
+target_link_libraries(echo-app LINK_PUBLIC ouroboros-dev)
install(TARGETS echo-app RUNTIME DESTINATION usr/bin)
diff --git a/src/tools/echo/echo.c b/src/tools/echo/echo.c
index d07d99a3..91ab552d 100644
--- a/src/tools/echo/echo.c
+++ b/src/tools/echo/echo.c
@@ -41,7 +41,6 @@ static void usage(void)
int main(int argc, char ** argv)
{
int ret = -1;
- char ** argv_dup = argv;
bool server = false;
argc--;
@@ -58,21 +57,10 @@ int main(int argc, char ** argv)
argv++;
}
- if (server) {
- if (ouroboros_init(argv_dup[0])) {
- printf("Failed to init AP.\n");
- return -1;
- }
+ if (server)
ret = server_main();
- } else {
- if (ouroboros_init(NULL)) {
- printf("Failed to init AP.\n");
- return -1;
- }
+ else
ret = client_main();
- }
-
- ouroboros_fini();
return ret;
}
diff --git a/src/tools/echo/echo_server.c b/src/tools/echo/echo_server.c
index 1e57ed60..14e0aa58 100644
--- a/src/tools/echo/echo_server.c
+++ b/src/tools/echo/echo_server.c
@@ -27,14 +27,6 @@
#include <ouroboros/dev.h>
-void shutdown_server(int signo)
-{
- (void) signo;
-
- ouroboros_fini();
- exit(EXIT_SUCCESS);
-}
-
int server_main(void)
{
int fd = 0;
@@ -44,12 +36,6 @@ int server_main(void)
printf("Starting the server.\n");
- /* Manual cleanup is required for now */
- if (signal(SIGINT, shutdown_server) == SIG_ERR) {
- printf("Can't install signal handler.\n");
- return -1;
- }
-
while (true) {
fd = flow_accept(&qs, NULL);
if (fd < 0) {
diff --git a/src/tools/irm/CMakeLists.txt b/src/tools/irm/CMakeLists.txt
index 895bc746..03c1490a 100644
--- a/src/tools/irm/CMakeLists.txt
+++ b/src/tools/irm/CMakeLists.txt
@@ -29,6 +29,6 @@ set(SOURCE_FILES
add_executable(irm ${SOURCE_FILES})
-target_link_libraries(irm LINK_PUBLIC ouroboros)
+target_link_libraries(irm LINK_PUBLIC ouroboros-irm)
install(TARGETS irm RUNTIME DESTINATION sbin)
diff --git a/src/tools/operf/CMakeLists.txt b/src/tools/operf/CMakeLists.txt
index 906bab7b..271a992d 100644
--- a/src/tools/operf/CMakeLists.txt
+++ b/src/tools/operf/CMakeLists.txt
@@ -16,6 +16,6 @@ set(SOURCE_FILES
add_executable(operf ${SOURCE_FILES})
-target_link_libraries(operf LINK_PUBLIC ${LIBM_LIBRARIES} ouroboros)
+target_link_libraries(operf LINK_PUBLIC ${LIBM_LIBRARIES} ouroboros-dev)
install(TARGETS operf RUNTIME DESTINATION usr/bin)
diff --git a/src/tools/operf/operf.c b/src/tools/operf/operf.c
index 62adcdb7..1c975ae1 100644
--- a/src/tools/operf/operf.c
+++ b/src/tools/operf/operf.c
@@ -88,7 +88,6 @@ int main(int argc, char ** argv)
int ret = -1;
char * rem = NULL;
bool serv = false;
- char ** argv_dup = argv;
argc--;
argv++;
@@ -141,18 +140,8 @@ int main(int argc, char ** argv)
}
if (serv) {
- if (ouroboros_init(argv_dup[0])) {
- printf("Failed to init AP.\n");
- exit(EXIT_FAILURE);
- }
-
ret = server_main();
} else {
- if (ouroboros_init(NULL)) {
- printf("Failed to init AP.\n");
- exit(EXIT_FAILURE);
- }
-
if (client.s_apn == NULL) {
printf("No server specified.\n");
usage();
@@ -172,8 +161,6 @@ int main(int argc, char ** argv)
ret = client_main();
}
- ouroboros_fini();
-
if (ret < 0)
exit(EXIT_FAILURE);
diff --git a/src/tools/oping/CMakeLists.txt b/src/tools/oping/CMakeLists.txt
index b95add7e..d3146780 100644
--- a/src/tools/oping/CMakeLists.txt
+++ b/src/tools/oping/CMakeLists.txt
@@ -18,6 +18,6 @@ set(SOURCE_FILES
add_executable(oping ${SOURCE_FILES})
-target_link_libraries(oping LINK_PUBLIC ${LIBM_LIBRARIES} ouroboros)
+target_link_libraries(oping LINK_PUBLIC ${LIBM_LIBRARIES} ouroboros-dev)
install(TARGETS oping RUNTIME DESTINATION usr/bin)
diff --git a/src/tools/oping/oping.c b/src/tools/oping/oping.c
index bca4f80b..a76f0fec 100644
--- a/src/tools/oping/oping.c
+++ b/src/tools/oping/oping.c
@@ -101,7 +101,6 @@ int main(int argc, char ** argv)
int ret = -1;
char * rem = NULL;
bool serv = false;
- char ** argv_dup = argv;
argc--;
argv++;
@@ -140,18 +139,8 @@ int main(int argc, char ** argv)
}
if (serv) {
- if (ouroboros_init(argv_dup[0])) {
- printf("Failed to init AP.\n");
- exit(EXIT_FAILURE);
- }
-
ret = server_main();
} else {
- if (ouroboros_init(NULL)) {
- printf("Failed to init AP.\n");
- exit(EXIT_FAILURE);
- }
-
if (client.s_apn == NULL) {
printf("No server specified.\n");
usage();
@@ -180,8 +169,6 @@ int main(int argc, char ** argv)
ret = client_main();
}
- ouroboros_fini();
-
if (ret < 0)
exit(EXIT_FAILURE);