X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fcommon%2Findex%2Findex.c;h=a462a635e78dfff933efc4dcec1253ceca37f552;hb=f263b7fd113e51d0737554e8232b8669e142a260;hp=54689677ee4a2f3dd3c56a6f06236115f659ead6;hpb=2f8f53af90479595d530f8f02e71dd0b9fb810ee;p=lttng-tools.git diff --git a/src/common/index/index.c b/src/common/index/index.c index 54689677e..a462a635e 100644 --- a/src/common/index/index.c +++ b/src/common/index/index.c @@ -24,6 +24,7 @@ #include #include +#include #include #include "index.h" @@ -52,7 +53,7 @@ int index_create_file(char *path_name, char *stream_name, int uid, int gid, ret = run_as_mkdir(fullpath, S_IRWXU | S_IRWXG, uid, gid); if (ret < 0) { if (ret != -EEXIST) { - ERR("Index trace directory creation error"); + PERROR("Index trace directory creation error"); goto error; } } @@ -67,7 +68,7 @@ int index_create_file(char *path_name, char *stream_name, int uid, int gid, hdr.magic = htobe32(CTF_INDEX_MAGIC); hdr.index_major = htobe32(CTF_INDEX_MAJOR); hdr.index_minor = htobe32(CTF_INDEX_MINOR); - hdr.packet_index_len = sizeof(struct ctf_packet_index); + hdr.packet_index_len = htobe32(sizeof(struct ctf_packet_index)); size_ret = lttng_write(fd, &hdr, sizeof(hdr)); if (size_ret < sizeof(hdr)) { @@ -100,14 +101,19 @@ ssize_t index_write(int fd, struct ctf_packet_index *index, size_t len) { ssize_t ret; - assert(fd >= 0); assert(index); + if (fd < 0) { + ret = -EINVAL; + goto error; + } + ret = lttng_write(fd, index, len); if (ret < len) { PERROR("writing index file"); } +error: return ret; }