xref: /freebsd/sys/contrib/openzfs/cmd/zed/agents/zfs_agents.h (revision e25152834cdf3b353892835a4f3b157e066a8ed4)
1*eda14cbcSMatt Macy /*
2*eda14cbcSMatt Macy  * CDDL HEADER START
3*eda14cbcSMatt Macy  *
4*eda14cbcSMatt Macy  * The contents of this file are subject to the terms of the
5*eda14cbcSMatt Macy  * Common Development and Distribution License Version 1.0 (CDDL-1.0).
6*eda14cbcSMatt Macy  * You can obtain a copy of the license from the top-level file
7*eda14cbcSMatt Macy  * "OPENSOLARIS.LICENSE" or at <http://opensource.org/licenses/CDDL-1.0>.
8*eda14cbcSMatt Macy  * You may not use this file except in compliance with the license.
9*eda14cbcSMatt Macy  *
10*eda14cbcSMatt Macy  * CDDL HEADER END
11*eda14cbcSMatt Macy  */
12*eda14cbcSMatt Macy 
13*eda14cbcSMatt Macy /*
14*eda14cbcSMatt Macy  * Copyright (c) 2016, Intel Corporation.
15*eda14cbcSMatt Macy  */
16*eda14cbcSMatt Macy 
17*eda14cbcSMatt Macy #ifndef	ZFS_AGENTS_H
18*eda14cbcSMatt Macy #define	ZFS_AGENTS_H
19*eda14cbcSMatt Macy 
20*eda14cbcSMatt Macy #include <libzfs.h>
21*eda14cbcSMatt Macy #include <libnvpair.h>
22*eda14cbcSMatt Macy 
23*eda14cbcSMatt Macy 
24*eda14cbcSMatt Macy #ifdef	__cplusplus
25*eda14cbcSMatt Macy extern "C" {
26*eda14cbcSMatt Macy #endif
27*eda14cbcSMatt Macy 
28*eda14cbcSMatt Macy /*
29*eda14cbcSMatt Macy  * Agent abstraction presented to ZED
30*eda14cbcSMatt Macy  */
31*eda14cbcSMatt Macy extern void zfs_agent_init(libzfs_handle_t *);
32*eda14cbcSMatt Macy extern void zfs_agent_fini(void);
33*eda14cbcSMatt Macy extern void zfs_agent_post_event(const char *, const char *, nvlist_t *);
34*eda14cbcSMatt Macy 
35*eda14cbcSMatt Macy /*
36*eda14cbcSMatt Macy  * ZFS Sysevent Linkable Module (SLM)
37*eda14cbcSMatt Macy  */
38*eda14cbcSMatt Macy extern int zfs_slm_init(void);
39*eda14cbcSMatt Macy extern void zfs_slm_fini(void);
40*eda14cbcSMatt Macy extern void zfs_slm_event(const char *, const char *, nvlist_t *);
41*eda14cbcSMatt Macy 
42*eda14cbcSMatt Macy #ifdef	__cplusplus
43*eda14cbcSMatt Macy }
44*eda14cbcSMatt Macy #endif
45*eda14cbcSMatt Macy 
46*eda14cbcSMatt Macy #endif	/* !ZFS_AGENTS_H */
47