X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=src%2Fcommon%2Ffd-tracker%2Futils.h;h=202c4a1b846f47d0dd434daa32daccd0020ff0bc;hb=e66d26f5110d65c1f9549904a33986797a3759a4;hp=1a7aad9f6074217f1c3030164ffc6e3b428f05ec;hpb=5c1f54d1d586f61a92704753411bd82c5c928218;p=lttng-tools.git diff --git a/src/common/fd-tracker/utils.h b/src/common/fd-tracker/utils.h index 1a7aad9f6..202c4a1b8 100644 --- a/src/common/fd-tracker/utils.h +++ b/src/common/fd-tracker/utils.h @@ -1,24 +1,16 @@ /* - * Copyright (C) 2018 - Jérémie Galarneau + * Copyright (C) 2018 Jérémie Galarneau * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License, version 2 only, as - * published by the Free Software Foundation. + * SPDX-License-Identifier: GPL-2.0-only * - * This program 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 General Public License for - * more details. - * - * You should have received a copy of the GNU General Public License along with - * this program; if not, write to the Free Software Foundation, Inc., 51 - * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifndef FD_TRACKER_UTILS_H #define FD_TRACKER_UTILS_H +#include #include +#include struct lttng_poll_event; @@ -26,24 +18,39 @@ struct lttng_poll_event; * Utility implementing a close_fd callback which receives one file descriptor * and closes it, returning close()'s return value. */ +LTTNG_HIDDEN int fd_tracker_util_close_fd(void *, int *fd); /* * Create a pipe and track its underlying fds. */ +LTTNG_HIDDEN int fd_tracker_util_pipe_open_cloexec( struct fd_tracker *tracker, const char *name, int *pipe); +LTTNG_HIDDEN int fd_tracker_util_pipe_close(struct fd_tracker *tracker, int *pipe); /* * Create a poll event and track its underlying fd, if applicable. */ +LTTNG_HIDDEN int fd_tracker_util_poll_create(struct fd_tracker *tracker, const char *name, struct lttng_poll_event *events, int size, int flags); +LTTNG_HIDDEN int fd_tracker_util_poll_clean( struct fd_tracker *tracker, struct lttng_poll_event *events); +LTTNG_HIDDEN +struct lttng_directory_handle *fd_tracker_create_directory_handle( + struct fd_tracker *tracker, const char *path); + +LTTNG_HIDDEN +struct lttng_directory_handle *fd_tracker_create_directory_handle_from_handle( + struct fd_tracker *tracker, + struct lttng_directory_handle *handle, + const char *path); + #endif /* FD_TRACKER_UTILS_H */