Skip to content

Commit

Permalink
[tests] allow IPv6 to be used for functional testing
Browse files Browse the repository at this point in the history
Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
  • Loading branch information
fabbione committed Feb 3, 2020
1 parent 7689474 commit 75cb58d
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 12 deletions.
36 changes: 25 additions & 11 deletions libknet/tests/test-common.c
Expand Up @@ -569,7 +569,7 @@ void knet_handle_stop_nodes(knet_handle_t knet_h[], uint8_t numnodes)
return;
}

void knet_handle_join_nodes(knet_handle_t knet_h[], uint8_t numnodes, uint8_t numlinks, uint8_t transport)
void knet_handle_join_nodes(knet_handle_t knet_h[], uint8_t numnodes, uint8_t numlinks, int family, uint8_t transport)
{
uint8_t i, x, j;
struct sockaddr_storage src, dst;
Expand All @@ -592,16 +592,30 @@ void knet_handle_join_nodes(knet_handle_t knet_h[], uint8_t numnodes, uint8_t nu
}

for (x = 0; x < numlinks; x++) {
if (make_local_sockaddr(&src, i + x) < 0) {
printf("Unable to convert src to sockaddr: %s\n", strerror(errno));
knet_handle_stop_nodes(knet_h, numnodes);
exit(FAIL);
}

if (make_local_sockaddr(&dst, j + x) < 0) {
printf("Unable to convert dst to sockaddr: %s\n", strerror(errno));
knet_handle_stop_nodes(knet_h, numnodes);
exit(FAIL);
if (family == AF_INET6) {
if (make_local_sockaddr6(&src, i + x) < 0) {
printf("Unable to convert src to sockaddr: %s\n", strerror(errno));
knet_handle_stop_nodes(knet_h, numnodes);
exit(FAIL);
}

if (make_local_sockaddr6(&dst, j + x) < 0) {
printf("Unable to convert dst to sockaddr: %s\n", strerror(errno));
knet_handle_stop_nodes(knet_h, numnodes);
exit(FAIL);
}
} else {
if (make_local_sockaddr(&src, i + x) < 0) {
printf("Unable to convert src to sockaddr: %s\n", strerror(errno));
knet_handle_stop_nodes(knet_h, numnodes);
exit(FAIL);
}

if (make_local_sockaddr(&dst, j + x) < 0) {
printf("Unable to convert dst to sockaddr: %s\n", strerror(errno));
knet_handle_stop_nodes(knet_h, numnodes);
exit(FAIL);
}
}

printf("joining node %u with node %u via link %u src offset: %u dst offset: %u\n", i, j, x, i+x, j+x);
Expand Down
2 changes: 1 addition & 1 deletion libknet/tests/test-common.h
Expand Up @@ -51,7 +51,7 @@ int knet_handle_stop(knet_handle_t knet_h);
*/
void knet_handle_start_nodes(knet_handle_t knet_h[], uint8_t numnodes, int logfd, uint8_t log_level);
void knet_handle_stop_nodes(knet_handle_t knet_h[], uint8_t numnodes);
void knet_handle_join_nodes(knet_handle_t knet_h[], uint8_t numnodes, uint8_t numlinks, uint8_t transport);
void knet_handle_join_nodes(knet_handle_t knet_h[], uint8_t numnodes, uint8_t numlinks, int family, uint8_t transport);

/*
* high level logging function.
Expand Down

0 comments on commit 75cb58d

Please sign in to comment.