/*
- * Copyright (C) 2019 - Jérémie Galarneau <jeremie.galarneau@efficios.com>
+ * Copyright (C) 2019 Jérémie Galarneau <jeremie.galarneau@efficios.com>
*
- * This library is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License, version 2.1 only,
- * as published by the Free Software Foundation.
+ * SPDX-License-Identifier: LGPL-2.1-only
*
- * This library is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
- * for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include <lttng/destruction-handle.h>
if (ret) {
PERROR("Failed to close lttng-sessiond command socket");
}
- }
- lttng_poll_clean(&handle->communication.events);
+ }
+ lttng_poll_clean(&handle->communication.events);
lttng_dynamic_buffer_reset(&handle->communication.buffer);
lttng_trace_archive_location_destroy(handle->location);
free(handle);
ret = lttng_poll_add(&handle->communication.events, sessiond_socket,
LPOLLIN | LPOLLHUP | LPOLLRDHUP | LPOLLERR);
- if (ret) {
+ if (ret) {
goto error;
- }
+ }
handle->communication.bytes_left_to_receive =
sizeof(struct lttcomm_lttng_msg);
lttng_destruction_handle_wait_for_completion(
struct lttng_destruction_handle *handle, int timeout_ms)
{
- int ret;
enum lttng_destruction_handle_status status;
unsigned long time_left_ms = 0;
const bool has_timeout = timeout_ms > 0;
- struct timespec initial_time;
+ struct timespec initial_time;
if (!handle) {
status = LTTNG_DESTRUCTION_HANDLE_STATUS_INVALID;
goto end;
}
- if (handle->communication.state == COMMUNICATION_STATE_ERROR) {
+ if (handle->communication.state == COMMUNICATION_STATE_ERROR) {
status = LTTNG_DESTRUCTION_HANDLE_STATUS_ERROR;
goto end;
} else if (handle->communication.state == COMMUNICATION_STATE_END) {
status = LTTNG_DESTRUCTION_HANDLE_STATUS_COMPLETED;
goto end;
}
- if (has_timeout) {
- ret = lttng_clock_gettime(CLOCK_MONOTONIC, &initial_time);
+ if (has_timeout) {
+ int ret = lttng_clock_gettime(CLOCK_MONOTONIC, &initial_time);
if (ret) {
status = LTTNG_DESTRUCTION_HANDLE_STATUS_ERROR;
goto end;
}
time_left_ms = (unsigned long) timeout_ms;
- }
+ }
- while (handle->communication.state != COMMUNICATION_STATE_END &&
+ while (handle->communication.state != COMMUNICATION_STATE_END &&
(time_left_ms || !has_timeout)) {
int ret;
uint32_t revents;
- struct timespec current_time, diff;
+ struct timespec current_time, diff;
unsigned long diff_ms;
- ret = lttng_poll_wait(&handle->communication.events,
+ ret = lttng_poll_wait(&handle->communication.events,
has_timeout ? time_left_ms : -1);
- if (ret == 0) {
+ if (ret == 0) {
/* timeout */
break;
} else if (ret < 0) {
int ret;
ssize_t comm_ret;
enum lttng_error_code ret_code = LTTNG_OK;
- struct lttcomm_session_msg lsm = {
+ struct lttcomm_session_msg lsm = {
.cmd_type = LTTNG_DESTROY_SESSION,
};
int sessiond_socket = -1;
struct lttng_destruction_handle *handle = NULL;
- if (!session_name || !handle) {
+ if (!session_name) {
ret_code = LTTNG_ERR_INVALID;
goto error;
}