X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=include%2Flttng%2Frotate-internal.h;h=74c85b0b648c5093eda2336552b52979e8d012d0;hp=29ea8c8359f7e6513b81a7583927f001bcac8efa;hb=dd73d57bb95fae31161ca0781108d166082a06f5;hpb=329f344308786acb81d8939eb8e1ad37307696c2 diff --git a/include/lttng/rotate-internal.h b/include/lttng/rotate-internal.h index 29ea8c835..74c85b0b6 100644 --- a/include/lttng/rotate-internal.h +++ b/include/lttng/rotate-internal.h @@ -48,6 +48,8 @@ struct lttng_rotation_schedule_attr { char session_name[LTTNG_NAME_MAX]; /* > 0 if a timer is set. */ uint64_t timer_us; + /* > 0 if the session should rotate when it has written that many bytes. */ + uint64_t size; } LTTNG_PACKED; /* @@ -67,10 +69,7 @@ struct lttng_rotation_handle { * Where the rotated (readable) trace has been stored when the * rotation is completed. */ - struct { - bool is_set; - char path[LTTNG_PATH_MAX]; - } archive_location; + struct lttng_trace_archive_location *archive_location; }; /* @@ -87,7 +86,26 @@ struct lttng_rotate_session_return { struct lttng_rotation_get_info_return { /* Represents values defined in enum lttng_rotation_state. */ int32_t status; - char path[LTTNG_PATH_MAX]; + /* Represents values defined in enum lttng_rotation_state. */ + uint8_t location_type; + union { + struct { + char absolute_path[LTTNG_PATH_MAX]; + } LTTNG_PACKED local; + struct { + char host[LTTNG_HOST_NAME_MAX]; + /* + * Represents values defined in + * enum lttng_trace_archive_location_relay_protocol_type. + */ + uint8_t protocol; + struct { + uint16_t control; + uint16_t data; + } LTTNG_PACKED ports; + char relative_path[LTTNG_PATH_MAX]; + } LTTNG_PACKED relay; + } location; } LTTNG_PACKED; /* For the LTTNG_SESSION_GET_CURRENT_OUTPUT command. */