* Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
-#define _GNU_SOURCE
+#define _LGPL_SOURCE
#include <assert.h>
#include <arpa/inet.h>
-#include <netdb.h>
+#include <common/compat/netdb.h>
#include <stdlib.h>
#include <string.h>
#include <sys/socket.h>
static const struct uri_proto proto_uri[] = {
{ .name = "file", .leading_string = "file://", .code = P_FILE, .type = 0, .dtype = LTTNG_DST_PATH },
{ .name = "net", .leading_string = "net://", .code = P_NET, .type = LTTNG_TCP, .dtype = LTTNG_DST_IPV4 },
+ { .name = "net4", .leading_string = "net4://", .code = P_NET, .type = LTTNG_TCP, .dtype = LTTNG_DST_IPV4 },
{ .name = "net6", .leading_string = "net6://", .code = P_NET6, .type = LTTNG_TCP, .dtype = LTTNG_DST_IPV6 },
{ .name = "tcp", .leading_string = "tcp://", .code = P_TCP, .type = LTTNG_TCP, .dtype = LTTNG_DST_IPV4 },
+ { .name = "tcp4", .leading_string = "tcp4://", .code = P_TCP, .type = LTTNG_TCP, .dtype = LTTNG_DST_IPV4 },
{ .name = "tcp6", .leading_string = "tcp6://", .code = P_TCP6, .type = LTTNG_TCP, .dtype = LTTNG_DST_IPV6 },
/* Invalid proto marking the end of the array. */
{ NULL, NULL, 0, 0, 0 }
ret = inet_pton(af, addr, buf);
if (ret < 1) {
/* We consider the dst to be an hostname or an invalid IP char */
- record = gethostbyname2(addr, af);
+ record = lttng_gethostbyname2(addr, af);
if (record == NULL) {
/* At this point, the IP or the hostname is bad */
ERR("URI parse bad hostname %s for af %d", addr, af);
if (uri->dtype == LTTNG_DST_PATH) {
ipver = 0;
addr = uri->dst.path;
- (void) snprintf(proto, sizeof(proto) + 1, "file");
- (void) snprintf(port, sizeof(port) + 1, "%s", "");
+ (void) snprintf(proto, sizeof(proto), "file");
+ (void) snprintf(port, sizeof(port), "%s", "");
} else {
ipver = (uri->dtype == LTTNG_DST_IPV4) ? 4 : 6;
addr = (ipver == 4) ? uri->dst.ipv4 : uri->dst.ipv6;
- (void) snprintf(proto, sizeof(proto) + 1, "net%d", ipver);
- (void) snprintf(port, sizeof(port) + 1, ":%d", uri->port);
+ (void) snprintf(proto, sizeof(proto), "tcp%d", ipver);
+ (void) snprintf(port, sizeof(port), ":%d", uri->port);
}
ret = snprintf(dst, size, "%s://%s%s%s%s/%s", proto,