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