X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fcommon%2Fsessiond-comm%2Fsessiond-comm.cpp;h=593ab265ccc25f6a1d7e06d098c31c0568529b27;hb=HEAD;hp=9be0cbcac8d07be1ee25f2a5dd7882243fdedc1e;hpb=1c9a0b0e83c7e073c4e576c0bed95de335b0e502;p=lttng-tools.git diff --git a/src/common/sessiond-comm/sessiond-comm.cpp b/src/common/sessiond-comm/sessiond-comm.cpp index 9be0cbcac..593ab265c 100644 --- a/src/common/sessiond-comm/sessiond-comm.cpp +++ b/src/common/sessiond-comm/sessiond-comm.cpp @@ -8,6 +8,12 @@ #include #define _LGPL_SOURCE +#include "sessiond-comm.hpp" + +#include +#include + +#include #include #include #include @@ -15,21 +21,15 @@ #include #include #include -#include - -#include -#include - -#include "sessiond-comm.h" /* For Unix socket */ -#include +#include /* For Inet socket */ -#include "inet.h" +#include "inet.hpp" /* For Inet6 socket */ -#include "inet6.h" +#include "inet6.hpp" -#define NETWORK_TIMEOUT_ENV "LTTNG_NETWORK_SOCKET_TIMEOUT" +#define NETWORK_TIMEOUT_ENV "LTTNG_NETWORK_SOCKET_TIMEOUT" static struct lttcomm_net_family net_families[] = { { LTTCOMM_INET, lttcomm_create_inet_sock }, @@ -39,8 +39,8 @@ static struct lttcomm_net_family net_families[] = { /* * Human readable error message. */ -static -const char *lttcomm_return_code_str(lttcomm_return_code code) { +static const char *lttcomm_return_code_str(lttcomm_return_code code) +{ switch (code) { case LTTCOMM_CONSUMERD_SUCCESS: return "consumerd success"; @@ -126,7 +126,7 @@ const char *lttcomm_get_readable_code(enum lttcomm_return_code code) code = (lttcomm_return_code) -code; if (code != LTTCOMM_CONSUMERD_SUCCESS && - !(code >= LTTCOMM_CONSUMERD_COMMAND_SOCK_READY && code < LTTCOMM_NR)) { + !(code >= LTTCOMM_CONSUMERD_COMMAND_SOCK_READY && code < LTTCOMM_NR)) { code = LTTCOMM_CONSUMERD_UNKNOWN_ERROR; } @@ -178,10 +178,9 @@ error: */ struct lttcomm_sock *lttcomm_alloc_sock(enum lttcomm_sock_proto proto) { - struct lttcomm_sock *sock; + struct lttcomm_sock *sock = zmalloc(); - sock = (lttcomm_sock *) zmalloc(sizeof(lttcomm_sock)); - if (sock == NULL) { + if (sock == nullptr) { PERROR("zmalloc create sock"); goto end; } @@ -208,7 +207,7 @@ struct lttcomm_sock *lttcomm_alloc_copy_sock(struct lttcomm_sock *src) LTTNG_ASSERT(src); sock = lttcomm_alloc_sock(src->proto); - if (sock == NULL) { + if (sock == nullptr) { goto alloc_error; } @@ -240,8 +239,7 @@ void lttcomm_copy_sock(struct lttcomm_sock *dst, struct lttcomm_sock *src) /* * Init IPv4 sockaddr structure. */ -int lttcomm_init_inet_sockaddr(struct lttcomm_sockaddr *sockaddr, - const char *ip, unsigned int port) +int lttcomm_init_inet_sockaddr(struct lttcomm_sockaddr *sockaddr, const char *ip, unsigned int port) { int ret; @@ -254,8 +252,7 @@ int lttcomm_init_inet_sockaddr(struct lttcomm_sockaddr *sockaddr, sockaddr->type = LTTCOMM_INET; sockaddr->addr.sin.sin_family = AF_INET; sockaddr->addr.sin.sin_port = htons(port); - ret = inet_pton(sockaddr->addr.sin.sin_family, ip, - &sockaddr->addr.sin.sin_addr); + ret = inet_pton(sockaddr->addr.sin.sin_family, ip, &sockaddr->addr.sin.sin_addr); if (ret < 1) { ret = -1; ERR("%s with port %d: unrecognized IPv4 address", ip, port); @@ -271,7 +268,8 @@ error: * Init IPv6 sockaddr structure. */ int lttcomm_init_inet6_sockaddr(struct lttcomm_sockaddr *sockaddr, - const char *ip, unsigned int port) + const char *ip, + unsigned int port) { int ret; @@ -284,8 +282,7 @@ int lttcomm_init_inet6_sockaddr(struct lttcomm_sockaddr *sockaddr, sockaddr->type = LTTCOMM_INET6; sockaddr->addr.sin6.sin6_family = AF_INET6; sockaddr->addr.sin6.sin6_port = htons(port); - ret = inet_pton(sockaddr->addr.sin6.sin6_family, ip, - &sockaddr->addr.sin6.sin6_addr); + ret = inet_pton(sockaddr->addr.sin6.sin6_family, ip, &sockaddr->addr.sin6.sin6_addr); if (ret < 1) { ret = -1; goto error; @@ -302,7 +299,7 @@ struct lttcomm_sock *lttcomm_alloc_sock_from_uri(struct lttng_uri *uri) { int ret; int _sock_proto; - struct lttcomm_sock *sock = NULL; + struct lttcomm_sock *sock = nullptr; /* Safety net */ LTTNG_ASSERT(uri); @@ -316,20 +313,18 @@ struct lttcomm_sock *lttcomm_alloc_sock_from_uri(struct lttng_uri *uri) } sock = lttcomm_alloc_sock((lttcomm_sock_proto) _sock_proto); - if (sock == NULL) { + if (sock == nullptr) { goto alloc_error; } /* Check destination type */ if (uri->dtype == LTTNG_DST_IPV4) { - ret = lttcomm_init_inet_sockaddr(&sock->sockaddr, uri->dst.ipv4, - uri->port); + ret = lttcomm_init_inet_sockaddr(&sock->sockaddr, uri->dst.ipv4, uri->port); if (ret < 0) { goto error; } } else if (uri->dtype == LTTNG_DST_IPV6) { - ret = lttcomm_init_inet6_sockaddr(&sock->sockaddr, uri->dst.ipv6, - uri->port); + ret = lttcomm_init_inet6_sockaddr(&sock->sockaddr, uri->dst.ipv6, uri->port); if (ret < 0) { goto error; } @@ -344,7 +339,7 @@ struct lttcomm_sock *lttcomm_alloc_sock_from_uri(struct lttng_uri *uri) error: lttcomm_destroy_sock(sock); alloc_error: - return NULL; + return nullptr; } /* @@ -361,16 +356,15 @@ void lttcomm_destroy_sock(struct lttcomm_sock *sock) * * On error, NULL is returned. */ -struct lttcomm_relayd_sock *lttcomm_alloc_relayd_sock(struct lttng_uri *uri, - uint32_t major, uint32_t minor) +struct lttcomm_relayd_sock * +lttcomm_alloc_relayd_sock(struct lttng_uri *uri, uint32_t major, uint32_t minor) { int ret; - struct lttcomm_sock *tmp_sock = NULL; - struct lttcomm_relayd_sock *rsock = NULL; + struct lttcomm_sock *tmp_sock = nullptr; + struct lttcomm_relayd_sock *rsock = zmalloc(); LTTNG_ASSERT(uri); - rsock = (lttcomm_relayd_sock *) zmalloc(sizeof(*rsock)); if (!rsock) { PERROR("zmalloc relayd sock"); goto error; @@ -378,7 +372,7 @@ struct lttcomm_relayd_sock *lttcomm_alloc_relayd_sock(struct lttng_uri *uri, /* Allocate socket object from URI */ tmp_sock = lttcomm_alloc_sock_from_uri(uri); - if (tmp_sock == NULL) { + if (tmp_sock == nullptr) { goto error_free; } @@ -402,7 +396,7 @@ struct lttcomm_relayd_sock *lttcomm_alloc_relayd_sock(struct lttng_uri *uri, error_free: free(rsock); error: - return NULL; + return nullptr; } /* @@ -447,10 +441,8 @@ int lttcomm_sock_get_port(const struct lttcomm_sock *sock, uint16_t *port) { LTTNG_ASSERT(sock); LTTNG_ASSERT(port); - LTTNG_ASSERT(sock->sockaddr.type == LTTCOMM_INET || - sock->sockaddr.type == LTTCOMM_INET6); - LTTNG_ASSERT(sock->proto == LTTCOMM_SOCK_TCP || - sock->proto == LTTCOMM_SOCK_UDP); + LTTNG_ASSERT(sock->sockaddr.type == LTTCOMM_INET || sock->sockaddr.type == LTTCOMM_INET6); + LTTNG_ASSERT(sock->proto == LTTCOMM_SOCK_TCP || sock->proto == LTTCOMM_SOCK_UDP); switch (sock->sockaddr.type) { case LTTCOMM_INET: @@ -469,10 +461,8 @@ int lttcomm_sock_get_port(const struct lttcomm_sock *sock, uint16_t *port) int lttcomm_sock_set_port(struct lttcomm_sock *sock, uint16_t port) { LTTNG_ASSERT(sock); - LTTNG_ASSERT(sock->sockaddr.type == LTTCOMM_INET || - sock->sockaddr.type == LTTCOMM_INET6); - LTTNG_ASSERT(sock->proto == LTTCOMM_SOCK_TCP || - sock->proto == LTTCOMM_SOCK_UDP); + LTTNG_ASSERT(sock->sockaddr.type == LTTCOMM_INET || sock->sockaddr.type == LTTCOMM_INET6); + LTTNG_ASSERT(sock->proto == LTTCOMM_SOCK_TCP || sock->proto == LTTCOMM_SOCK_UDP); switch (sock->sockaddr.type) { case LTTCOMM_INET: @@ -488,7 +478,7 @@ int lttcomm_sock_set_port(struct lttcomm_sock *sock, uint16_t port) return 0; } -void lttcomm_init(void) +void lttcomm_init() { const char *env; @@ -497,7 +487,7 @@ void lttcomm_init(void) long timeout; errno = 0; - timeout = strtol(env, NULL, 0); + timeout = strtol(env, nullptr, 0); if (errno != 0 || timeout < -1L) { PERROR("Network timeout"); } else { @@ -508,7 +498,7 @@ void lttcomm_init(void) } } -unsigned long lttcomm_get_network_timeout(void) +unsigned long lttcomm_get_network_timeout() { return network_timeout; } @@ -517,10 +507,9 @@ unsigned long lttcomm_get_network_timeout(void) * Only valid for an ipv4 and ipv6 bound socket that is already connected to its * peer. */ -int lttcomm_populate_sock_from_open_socket( - struct lttcomm_sock *sock, - int fd, - enum lttcomm_sock_proto protocol) +int lttcomm_populate_sock_from_open_socket(struct lttcomm_sock *sock, + int fd, + enum lttcomm_sock_proto protocol) { int ret = 0; socklen_t storage_len; @@ -532,11 +521,9 @@ int lttcomm_populate_sock_from_open_socket( sock->proto = protocol; storage_len = sizeof(storage); - ret = getpeername(fd, (struct sockaddr *) &storage, - &storage_len); + ret = getpeername(fd, (struct sockaddr *) &storage, &storage_len); if (ret) { - ERR("Failed to get peer info for socket %d (errno: %d)", fd, - errno); + ERR("Failed to get peer info for socket %d (errno: %d)", fd, errno); ret = -1; goto end; } @@ -550,13 +537,11 @@ int lttcomm_populate_sock_from_open_socket( switch (storage.ss_family) { case AF_INET: sock->sockaddr.type = LTTCOMM_INET; - memcpy(&sock->sockaddr.addr, &storage, - sizeof(struct sockaddr_in)); + memcpy(&sock->sockaddr.addr, &storage, sizeof(struct sockaddr_in)); break; case AF_INET6: sock->sockaddr.type = LTTCOMM_INET6; - memcpy(&sock->sockaddr.addr, &storage, - sizeof(struct sockaddr_in6)); + memcpy(&sock->sockaddr.addr, &storage, sizeof(struct sockaddr_in6)); break; default: abort();