/*
* 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 _ZONESTAT_IMPL_H
#define _ZONESTAT_IMPL_H
#include <zonestat.h>
#include <sys/priv_const.h>
#include <paths.h>
#include <libdllink.h>
#ifdef __cplusplus
extern "C" {
#endif
/*
* INTERFACES DEFINED IN THIS FILE DO NOT CONSTITUTE A PUBLIC INTERFACE.
*
* Do not consume these interfaces; your program will break in the future
* (even in a patch) if you do.
*/
/*
* This file defines the private interface used between zonestatd and
* libzonestat.
*/
/* The following read commands are unimplemented */
#define ZSD_STATUS_OK 0
{ \
} \
}
{ \
} \
}
{ \
} \
} \
}
struct zs_property {
union zsp_value_union {
char *zsv_string;
double zsv_double;
int zsv_int;
} zsp_v;
};
struct zs_system {
/* The following provide space for the given properties */
/* ZS_RESOURCE_PROP_CPU_TOTAL */
/* ZS_RESOURCE_PROP_CPU_ONLINE */
/* ZS_RESOURCE_PROP_CPU_LOAD_1MIN */
/* ZS_RESOURCE_PROP_CPU_LOAD_5MIN */
/* ZS_RESOURCE_PROP_CPU_LOAD_15MIN */
};
struct zs_pset;
struct zs_zone;
struct zs_pset_zone {
/* The following provide space for the given properties */
/* ZS_PZ_PROP_SCHEDULERS */
/* ZS_PZ_PROP_CPU_SHARES */
/* ZS_PZ_PROP_CPU_CAP */
};
struct zs_link_zone {
/* The following provide space for the given properties */
/* ZLZ_PROP_NAME */
/* ZLZ_PROP_BW */
/* ZLZ_PROP_BYTES */
/* ZLZ_PROP_RBYTES */
/* ZLZ_PROP_OBYTES */
/* ZLZ_PROP_PRBYTES */
/* ZLZ_PROP_POBYTES */
/* ZLZ_PROP_PARTBW */
};
struct zs_datalink {
/* The following provide space for the given properties */
/* ZSL_PROP_LINKNAME */
/* ZSL_PROP_DEVNAME */
/* ZSL_PROP_ZONENAME */
/* ZSL_PROP_STATE */
/* ZSL_PROP_CLASS */
/* ZSL_PROP_RBYTES */
/* ZSL_PROP_OBYTES */
/* ZSL_PROP_PRBYTES */
/* ZSL_PROP_POBYTES */
/* ZSL_PROP_SPEED */
/* ZSL_PROP_TOT_BYTES */
/* ZSL_PROP_TOT_RBYTES */
/* ZSL_PROP_TOT_OBYTES */
/* ZSL_PROP_TOT_PRBYTES */
/* ZSL_PROP_TOT_POBYTES */
/* ZSL_PROP_MAXBW */
};
struct zs_ctl {
int zsctl_door;
};
struct zs_zone {
int zsz_default_sched;
/* The following provide space for the given properties */
/* ZS_ZONE_PROP_NAME */
/* ZS_ZONE_PROP_ID */
/* ZS_ZONE_PROP_IPTYPE */
/* ZS_ZONE_PROP_CPUTYPE */
/* ZS_ZONE_PROP_DEFAULT_SCHED */
/* ZS_ZONE_PROP_SCHEDULERS */
/* ZS_ZONE_PROP_CPU_SHARES */
/* ZS_ZONE_PROP_POOLNAME */
/* ZS_ZONE_PROP_PSETNAME */
};
struct zs_pset {
/* The following provide space for the given propeties */
/* ZS_PSET_PROP_NAME */
/* ZS_PSET_PROP_ID */
/* ZS_PSET_PROP_CPUTYPE */
/* ZS_PSET_PROP_SIZE */
/* ZS_PSET_PROP_ONLINE */
/* ZS_PSET_PROP_MIN */
/* ZS_PSET_PROP_MAX */
/* ZS_PSET_PROP_CPU_SHARES */
/* ZS_PSET_PROP_SCHEDULERS */
/* ZS_PSET_PROP_LOAD_1MIN */
/* ZS_PSET_PROP_LOAD_5MIN */
/* ZS_PSET_PROP_LOAD_15MIN */
};
struct zs_usage {
};
struct zs_usage_set {
};
struct zs_usage_cache {
int zsuc_ref;
};
#ifdef __cplusplus
}
#endif
#endif /* _ZONESTAT_IMPL_H */