+ return -1;
+}
+
+/*
+ * Read index values from the given index file.
+ *
+ * Return 0 on success, -1 on error.
+ */
+int lttng_index_file_read(const struct lttng_index_file *index_file,
+ struct ctf_packet_index *element)
+{
+ ssize_t ret;
+ int fd = index_file->fd;
+ size_t len = index_file->element_len;
+
+ assert(element);
+
+ if (fd < 0) {
+ goto error;
+ }
+
+ ret = lttng_read(fd, element, len);
+ if (ret < 0) {
+ PERROR("read index file");
+ goto error;
+ }
+ if (ret < len) {
+ ERR("lttng_read expected %zu, returned %zd", len, ret);
+ goto error;
+ }
+ return 0;
+
+error:
+ return -1;