|
Packit |
db01ca |
/* -*- linux-c -*-
|
|
Packit |
db01ca |
*
|
|
Packit |
db01ca |
* (C) Copyright IBM Corp. 2003-2006
|
|
Packit |
db01ca |
*
|
|
Packit |
db01ca |
* This program is distributed in the hope that it will be useful,
|
|
Packit |
db01ca |
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
Packit |
db01ca |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. This
|
|
Packit |
db01ca |
* file and program are licensed under a BSD style license. See
|
|
Packit |
db01ca |
* the Copying file included with the OpenHPI distribution for
|
|
Packit |
db01ca |
* full licensing terms.
|
|
Packit |
db01ca |
*
|
|
Packit |
db01ca |
* Authors:
|
|
Packit |
db01ca |
* Sean Dague <http://dague.net/sean>
|
|
Packit |
db01ca |
* Renier Morales <renier@openhpi.org>
|
|
Packit |
db01ca |
* Bryan Sutula <sutula@users.sourceforge.net>
|
|
Packit |
db01ca |
*/
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
#ifndef __OH_CONFIG_H
|
|
Packit |
db01ca |
#define __OH_CONFIG_H
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
#include <glib.h>
|
|
Packit |
db01ca |
#include <SaHpi.h>
|
|
Packit |
db01ca |
#include <oh_utils.h>
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
#ifdef __cplusplus
|
|
Packit |
db01ca |
extern "C" {
|
|
Packit |
db01ca |
#endif
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
struct oh_parsed_config {
|
|
Packit |
db01ca |
GSList *handler_configs;
|
|
Packit |
db01ca |
guint handlers_defined;
|
|
Packit |
db01ca |
guint handlers_loaded;
|
|
Packit |
db01ca |
};
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
typedef enum {
|
|
Packit |
db01ca |
OPENHPI_ON_EP = 1,
|
|
Packit |
db01ca |
OPENHPI_LOG_ON_SEV,
|
|
Packit |
db01ca |
OPENHPI_EVT_QUEUE_LIMIT,
|
|
Packit |
db01ca |
OPENHPI_DEL_SIZE_LIMIT,
|
|
Packit |
db01ca |
OPENHPI_DEL_SAVE,
|
|
Packit |
db01ca |
OPENHPI_DAT_SIZE_LIMIT,
|
|
Packit |
db01ca |
OPENHPI_DAT_USER_LIMIT,
|
|
Packit |
db01ca |
OPENHPI_DAT_SAVE,
|
|
Packit |
db01ca |
OPENHPI_PATH,
|
|
Packit |
db01ca |
OPENHPI_VARPATH,
|
|
Packit |
db01ca |
OPENHPI_CONF,
|
|
Packit |
db01ca |
OPENHPI_UNCONFIGURED,
|
|
Packit |
db01ca |
OPENHPI_AUTOINSERT_TIMEOUT,
|
|
Packit |
db01ca |
OPENHPI_AUTOINSERT_TIMEOUT_READONLY
|
|
Packit |
db01ca |
} oh_global_param_type;
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
typedef union {
|
|
Packit |
db01ca |
SaHpiEntityPathT on_ep;
|
|
Packit |
db01ca |
SaHpiSeverityT log_on_sev;
|
|
Packit |
db01ca |
SaHpiUint32T evt_queue_limit;
|
|
Packit |
db01ca |
SaHpiUint32T del_size_limit;
|
|
Packit |
db01ca |
SaHpiBoolT del_save;
|
|
Packit |
db01ca |
SaHpiUint32T dat_size_limit;
|
|
Packit |
db01ca |
SaHpiUint32T dat_user_limit;
|
|
Packit |
db01ca |
SaHpiBoolT dat_save;
|
|
Packit |
db01ca |
char path[OH_MAX_TEXT_BUFFER_LENGTH];
|
|
Packit |
db01ca |
char varpath[OH_MAX_TEXT_BUFFER_LENGTH];
|
|
Packit |
db01ca |
char conf[OH_MAX_TEXT_BUFFER_LENGTH];
|
|
Packit |
db01ca |
SaHpiBoolT unconfigured;
|
|
Packit |
db01ca |
SaHpiTimeoutT ai_timeout;
|
|
Packit |
db01ca |
SaHpiBoolT ai_timeout_readonly;
|
|
Packit |
db01ca |
} oh_global_param_union;
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
struct oh_global_param {
|
|
Packit |
db01ca |
oh_global_param_type type;
|
|
Packit |
db01ca |
oh_global_param_union u;
|
|
Packit |
db01ca |
};
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
/* Plugin configuration information prototypes */
|
|
Packit |
db01ca |
int oh_load_config(char *filename, struct oh_parsed_config *config);
|
|
Packit |
db01ca |
SaErrorT oh_process_config(struct oh_parsed_config *config);
|
|
Packit |
db01ca |
void oh_clean_config(struct oh_parsed_config *config);
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
/* For handling global parameters */
|
|
Packit |
db01ca |
int oh_get_global_param(struct oh_global_param *param);
|
|
Packit |
db01ca |
int oh_get_global_param2(oh_global_param_type type, struct oh_global_param *param);
|
|
Packit |
db01ca |
int oh_set_global_param(const struct oh_global_param *param);
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
#ifdef __cplusplus
|
|
Packit |
db01ca |
}
|
|
Packit |
db01ca |
#endif
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
#endif/*__OH_CONFIG_H*/
|