xref: /freebsd/sys/contrib/openzfs/cmd/zed/zed_file.h (revision 180f822596ecc49d3074dcc9dfea9628aae1d48d)
1eda14cbcSMatt Macy /*
2*180f8225SMatt Macy  * This file is part of the ZFS Event Daemon (ZED).
3*180f8225SMatt Macy  *
4eda14cbcSMatt Macy  * Developed at Lawrence Livermore National Laboratory (LLNL-CODE-403049).
5eda14cbcSMatt Macy  * Copyright (C) 2013-2014 Lawrence Livermore National Security, LLC.
6eda14cbcSMatt Macy  * Refer to the ZoL git commit log for authoritative copyright attribution.
7eda14cbcSMatt Macy  *
8eda14cbcSMatt Macy  * The contents of this file are subject to the terms of the
9eda14cbcSMatt Macy  * Common Development and Distribution License Version 1.0 (CDDL-1.0).
10eda14cbcSMatt Macy  * You can obtain a copy of the license from the top-level file
11eda14cbcSMatt Macy  * "OPENSOLARIS.LICENSE" or at <http://opensource.org/licenses/CDDL-1.0>.
12eda14cbcSMatt Macy  * You may not use this file except in compliance with the license.
13eda14cbcSMatt Macy  */
14eda14cbcSMatt Macy 
15eda14cbcSMatt Macy #ifndef	ZED_FILE_H
16eda14cbcSMatt Macy #define	ZED_FILE_H
17eda14cbcSMatt Macy 
18eda14cbcSMatt Macy #include <sys/types.h>
19eda14cbcSMatt Macy #include <unistd.h>
20eda14cbcSMatt Macy 
21eda14cbcSMatt Macy ssize_t zed_file_read_n(int fd, void *buf, size_t n);
22eda14cbcSMatt Macy 
23eda14cbcSMatt Macy ssize_t zed_file_write_n(int fd, void *buf, size_t n);
24eda14cbcSMatt Macy 
25eda14cbcSMatt Macy int zed_file_lock(int fd);
26eda14cbcSMatt Macy 
27eda14cbcSMatt Macy int zed_file_unlock(int fd);
28eda14cbcSMatt Macy 
29eda14cbcSMatt Macy pid_t zed_file_is_locked(int fd);
30eda14cbcSMatt Macy 
31eda14cbcSMatt Macy void zed_file_close_from(int fd);
32eda14cbcSMatt Macy 
33eda14cbcSMatt Macy int zed_file_close_on_exec(int fd);
34eda14cbcSMatt Macy 
35eda14cbcSMatt Macy #endif	/* !ZED_FILE_H */
36