| Current File : //usr/include/libv12n.h |
/*
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
*/
#ifndef _LIBV12N_H
#define _LIBV12N_H
#include <sys/types.h>
#if defined(__sparc)
#include <libv12n_ldoms.h>
#endif
#ifdef __cplusplus
extern "C" {
#endif
/* Max length of an v12n property */
#define V12N_PROP_MAX_LEN 1024
typedef struct v12n_env v12n_env_t;
typedef enum {
/* Generic properties always supported */
V12N_PROP_NAME = 1,
V12N_PROP_CLASS,
/* 3 - 1023 unused */
/* LDoms properties */
V12N_PROP_LDOMS_ROLE_CONTROL = 1024,
V12N_PROP_LDOMS_ROLE_IO,
V12N_PROP_LDOMS_ROLE_ROOT,
V12N_PROP_LDOMS_ROLE_SERVICE,
V12N_PROP_LDOMS_NAME,
V12N_PROP_LDOMS_UUID,
V12N_PROP_LDOMS_CONTROL_NAME,
V12N_PROP_LDOMS_CHASSIS,
/* Kernel Zone properties */
V12N_PROP_KZ_ZONENAME = 2048
} v12n_prop_t;
v12n_env_t *v12n_get_current_env(void);
v12n_env_t *v12n_get_parent_env(void);
char *v12n_get_env_prop(v12n_env_t *, v12n_prop_t);
v12n_env_t **v12n_list_supported_envs(void);
v12n_env_t **v12n_list_envs(void);
v12n_prop_t *v12n_list_env_props(v12n_env_t *);
const char *v12n_get_prop_name(v12n_prop_t);
void v12n_free_env(v12n_env_t *);
v12n_env_t *v12n_copy_env(v12n_env_t *);
#ifdef __cplusplus
}
#endif
#endif /* _LIBV12N_H */