#ifndef _NSCD_ADMIN_H
#define _NSCD_ADMIN_H
#ifdef __cplusplus
extern "C" {
#endif
#include "cache.h"
#include "nscd_common.h"
#include "nscd_config.h"
#define NSCD_LOGFILE_LEN 128
typedef struct nscd_admin {
int debug_level;
char logfile[NSCD_LOGFILE_LEN];
nscd_cfg_cache_t cache_cfg[CACHE_CTX_COUNT];
nscd_cfg_stat_cache_t cache_stats[CACHE_CTX_COUNT];
} nscd_admin_t;
typedef struct nscd_admin_mod {
int total_size;
nscd_bool_t debug_level_set;
nscd_bool_t logfile_set;
uint8_t cache_cfg_set[CACHE_CTX_COUNT];
uint8_t cache_flush_set[CACHE_CTX_COUNT];
nscd_bool_t global_cfg_set;
uint8_t cache_cfg_num;
uint8_t cache_flush_num;
int debug_level;
char logfile[NSCD_LOGFILE_LEN];
nscd_cfg_cache_t cache_cfg[CACHE_CTX_COUNT];
} nscd_admin_mod_t;
#ifdef __cplusplus
}
#endif
int _nscd_client_getadmin(char opt);
int _nscd_client_setadmin();
void _nscd_client_showstats();
nscd_rc_t _nscd_server_setadmin(nscd_admin_mod_t *set);
int _nscd_door_getadmin(void *outbuf);
void _nscd_door_setadmin(void *buf);
int _nscd_add_admin_mod(char *dbname, char opt,
char *val, char *msg, int msglen);
#endif