From 477ede8e64839e70251d7cee2ba43e72ec730723 Mon Sep 17 00:00:00 2001 From: Francis Deslauriers Date: Tue, 29 Oct 2019 15:55:29 -0400 Subject: [PATCH] src.ctf.lttng-live: make `lttng_live_attach_session()` return status Signed-off-by: Francis Deslauriers Change-Id: Id7a2924ea9f5ac91bf9848995029e3c6edb9a4d3 Reviewed-on: https://review.lttng.org/c/babeltrace/+/2306 Reviewed-by: Simon Marchi --- src/plugins/ctf/lttng-live/lttng-live.c | 6 +++--- src/plugins/ctf/lttng-live/lttng-live.h | 10 +++++++++- src/plugins/ctf/lttng-live/viewer-connection.c | 12 +++++++++--- 3 files changed, 21 insertions(+), 7 deletions(-) diff --git a/src/plugins/ctf/lttng-live/lttng-live.c b/src/plugins/ctf/lttng-live/lttng-live.c index 774b91c8..fa493cbb 100644 --- a/src/plugins/ctf/lttng-live/lttng-live.c +++ b/src/plugins/ctf/lttng-live/lttng-live.c @@ -437,11 +437,11 @@ enum lttng_live_iterator_status lttng_live_get_session( { enum lttng_live_iterator_status status; uint64_t trace_idx; - int ret = 0; if (!session->attached) { - ret = lttng_live_attach_session(session); - if (ret) { + enum lttng_live_attach_session_status attach_status = + lttng_live_attach_session(session); + if (attach_status != LTTNG_LIVE_ATTACH_SESSION_STATUS_OK) { if (lttng_live_graph_is_canceled(lttng_live_msg_iter)) { status = LTTNG_LIVE_ITERATOR_STATUS_AGAIN; } else { diff --git a/src/plugins/ctf/lttng-live/lttng-live.h b/src/plugins/ctf/lttng-live/lttng-live.h index 994563d0..511c0c48 100644 --- a/src/plugins/ctf/lttng-live/lttng-live.h +++ b/src/plugins/ctf/lttng-live/lttng-live.h @@ -284,7 +284,15 @@ bt_component_class_message_iterator_initialize_method_status lttng_live_msg_iter void lttng_live_msg_iter_finalize(bt_self_message_iterator *it); int lttng_live_create_viewer_session(struct lttng_live_msg_iter *lttng_live_msg_iter); -int lttng_live_attach_session(struct lttng_live_session *session); + +enum lttng_live_attach_session_status { + LTTNG_LIVE_ATTACH_SESSION_STATUS_OK = 0, + LTTNG_LIVE_ATTACH_SESSION_STATUS_ERROR = -2, +}; + +enum lttng_live_attach_session_status lttng_live_attach_session( + struct lttng_live_session *session); + int lttng_live_detach_session(struct lttng_live_session *session); enum lttng_live_iterator_status lttng_live_get_new_streams( struct lttng_live_session *session); diff --git a/src/plugins/ctf/lttng-live/viewer-connection.c b/src/plugins/ctf/lttng-live/viewer-connection.c index f094a8f9..e3ac7f8d 100644 --- a/src/plugins/ctf/lttng-live/viewer-connection.c +++ b/src/plugins/ctf/lttng-live/viewer-connection.c @@ -810,9 +810,11 @@ error: } BT_HIDDEN -int lttng_live_attach_session(struct lttng_live_session *session) +enum lttng_live_attach_session_status lttng_live_attach_session( + struct lttng_live_session *session) { struct lttng_viewer_cmd cmd; + enum lttng_live_attach_session_status attach_status; struct lttng_viewer_attach_session_request rq; struct lttng_viewer_attach_session_response rp; struct lttng_live_msg_iter *lttng_live_msg_iter = @@ -889,10 +891,14 @@ int lttng_live_attach_session(struct lttng_live_session *session) session->attached = true; session->new_streams_needed = false; - return 0; + attach_status = LTTNG_LIVE_ATTACH_SESSION_STATUS_OK; + goto end; error: - return -1; + attach_status = LTTNG_LIVE_ATTACH_SESSION_STATUS_ERROR; + +end: + return attach_status; } BT_HIDDEN -- 2.34.1