/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License (the "License").
* You may not use this file except in compliance with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
*/
#ifndef _SYS_FM_PROTOCOL_H
#define _SYS_FM_PROTOCOL_H
#ifdef __cplusplus
extern "C" {
#endif
#ifdef _KERNEL
#else
#include <libnvpair.h>
#include <stdarg.h>
#endif
#include <sys/processor.h>
/* FM common member names */
/* FM protocol category 1 class names */
/* FM list.* event class values */
/* ereport class subcategory values */
/* ereport version and payload member names */
#define FM_EREPORT_VERS0 0
/* ereport payload member names */
/* list.* event payload member names */
/* ireport.* event payload member names */
/*
* list.suspect, isolated, updated, repaired and resolved
*/
#define FM_SUSPECT_VERS0 0
/* fault event versions and payload member names */
#define FM_FAULT_VERS0 0
/* resource event versions and payload member names */
#define FM_RSRC_VERS0 0
/* resource.fm.asru.* payload member names */
/* resource.fm.xprt.* versions and payload member names */
#define FM_RSRC_XPRT_VERS0 0
/*
* FM ENA Format Macros
*/
/* ENA format types */
#define FM_ENA_FMT0 0
/* Format 1 */
/* Format 2 */
/* Common FMRI type names */
/* FMRI authority-type member names */
#define FM_AUTH_VERS0 0
/* scheme name values */
/* Scheme versions */
#define FMD_SCHEME_VERSION0 0
#define DEV_SCHEME_VERSION0 0
#define FM_HC_VERS0 0
#define CPU_SCHEME_VERSION0 0
#define MEM_SCHEME_VERSION0 0
#define MOD_SCHEME_VERSION0 0
#define PKG_SCHEME_VERSION0 0
#define LEGACY_SCHEME_VERSION0 0
#define SVC_SCHEME_VERSION0 0
#define ZFS_SCHEME_VERSION0 0
#define SW_SCHEME_VERSION0 0
/* hc scheme member names */
/* facility member names */
/* hc-list version and member names */
#define HC_LIST_VERSION0 0
/* hc-specific member names */
/* fmd module scheme member names */
/* dev scheme member names */
/* pkg scheme member names */
/* svc scheme member names */
/* svc-authority member names */
/* cpu scheme member names */
#define FM_FMRI_CPU_CACHE_TYPE_L2 0
/* legacy-hc scheme member names */
/* mem scheme member names */
/* mod scheme member names */
/* zfs scheme member names */
/* sw scheme member names - extra indentation for members of an nvlist */
extern void fm_nva_xdestroy(nv_alloc_t *);
extern void fm_nvlist_destroy(nvlist_t *, int);
const nvlist_t *, ...);
extern void fm_payload_set(nvlist_t *, ...);
int, ...);
const char *, const char *);
uint8_t *, const char *);
const char *, uint64_t);
extern void fm_authority_set(nvlist_t *, int, const char *, const char *,
const char *, const char *);
nvlist_t *, int, ...);
#ifdef __cplusplus
}
#endif
#endif /* _SYS_FM_PROTOCOL_H */