/* Generated by IDL compiler version OSF DCE T1.1.0-03 */
#ifndef DCEAPI 
# include <dce/dcedef.h> 
#endif 
#ifndef audit_control_v1_0_included
#define audit_control_v1_0_included
#ifndef IDLBASE_H
#include <dce/idlbase.h>
#endif
#include <dce/rpc.h>

#ifdef __cplusplus
    extern "C" {
#endif

#ifndef nbase_v0_0_included
#include <dce/nbase.h>
#endif
#ifndef rgynbase_v0_0_included
#include <dce/rgynbase.h>
#endif
typedef enum {aud_e_esl_princ,
aud_e_esl_foreign_princ,
aud_e_esl_group,
aud_e_esl_foreign_group,
aud_e_esl_cell,
aud_e_esl_cell_overridable,
aud_e_esl_world,
aud_e_esl_world_overridable,
aud_e_esl_max} aud_esl_type_t;
typedef unsigned32 aud_esl_cond_t;
#define aud_c_esl_cond_success (1)
#define aud_c_esl_cond_failure (2)
#define aud_c_esl_cond_denial (4)
#define aud_c_esl_cond_pending (8)
#define aud_c_esl_cond_all (15)
#define aud_c_esl_cond_number (5)
#define aud_c_esl_cond_unknown (0)
typedef unsigned32 aud_esl_act_t;
#define aud_c_esl_act_none (0)
#define aud_c_esl_act_log (1)
#define aud_c_esl_act_alarm (2)
#define aud_c_esl_act_ems (4)
#define aud_c_esl_act_all (7)
#define aud_c_dmn_state_enabled (0)
#define aud_c_dmn_state_disabled (1)
typedef struct aud_esl_evt_classes {
unsigned32 evt_class;
struct aud_esl_evt_classes *next;
} aud_esl_evt_classes_t;
typedef aud_esl_evt_classes_t *aud_esl_evt_classes_p_t;
typedef struct aud_esl_guides {
aud_esl_evt_classes_p_t ec_list;
aud_esl_cond_t audit_condition;
aud_esl_act_t audit_action;
struct aud_esl_guides *next;
} aud_esl_guides_t;
typedef aud_esl_guides_t *aud_esl_guides_p_t;
typedef struct aud_esl_entry {
uuid_t subject_uuid;
aud_esl_guides_p_t guides;
struct aud_esl_entry *next;
} aud_esl_entry_t;
typedef aud_esl_entry_t *aud_esl_entry_p_t;
typedef struct aud_esl_foreign_entry {
uuid_t subject_uuid;
uuid_t cell_uuid;
aud_esl_guides_p_t guides;
struct aud_esl_foreign_entry *next;
} aud_esl_foreign_entry_t;
typedef aud_esl_foreign_entry_t *aud_esl_foreign_entry_p_t;
extern void  DCEAPI audit_control_show_filter(
#ifdef IDL_PROTOTYPES
    /* [in] */ handle_t h,
    /* [in] */ aud_esl_type_t esl_type,
    /* [in] */ sec_rgy_name_t subject_name,
    /* [out] */ aud_esl_guides_p_t *guides,
    /* [out] */ error_status_t *st
#endif
);
extern void  DCEAPI audit_control_add_filter(
#ifdef IDL_PROTOTYPES
    /* [in] */ handle_t h,
    /* [in] */ aud_esl_type_t esl_type,
    /* [in] */ sec_rgy_name_t subject_name,
    /* [in] */ aud_esl_guides_p_t *guides,
    /* [out] */ error_status_t *st
#endif
);
extern void  DCEAPI audit_control_remove_filter(
#ifdef IDL_PROTOTYPES
    /* [in] */ handle_t h,
    /* [in] */ aud_esl_type_t esl_type,
    /* [in] */ sec_rgy_name_t subject_name,
    /* [in] */ aud_esl_guides_p_t *guides,
    /* [out] */ error_status_t *st
#endif
);
extern void  DCEAPI audit_control_delete_filter(
#ifdef IDL_PROTOTYPES
    /* [in] */ handle_t h,
    /* [in] */ aud_esl_type_t esl_type,
    /* [in] */ sec_rgy_name_t subject_name,
    /* [out] */ error_status_t *st
#endif
);
extern void  DCEAPI audit_control_list_filter(
#ifdef IDL_PROTOTYPES
    /* [in] */ handle_t h,
    /* [in] */ aud_esl_type_t esl_type,
    /* [in, out] */ unsigned16 *cursor,
    /* [out] */ aud_esl_entry_p_t *first_entry,
    /* [out] */ aud_esl_foreign_entry_p_t *first_foreign_entry,
    /* [out] */ error_status_t *st
#endif
);
extern void  DCEAPI audit_control_modify_sstrategy(
#ifdef IDL_PROTOTYPES
    /* [in] */ handle_t h,
    /* [in] */ unsigned32 strgy,
    /* [out] */ error_status_t *st
#endif
);
extern void  DCEAPI audit_control_show_sstrategy(
#ifdef IDL_PROTOTYPES
    /* [in] */ handle_t h,
    /* [out] */ unsigned32 *strgy,
    /* [out] */ error_status_t *st
#endif
);
extern void  DCEAPI audit_control_modify_state(
#ifdef IDL_PROTOTYPES
    /* [in] */ handle_t h,
    /* [in] */ unsigned32 state,
    /* [out] */ error_status_t *st
#endif
);
extern void  DCEAPI audit_control_show_state(
#ifdef IDL_PROTOTYPES
    /* [in] */ handle_t h,
    /* [out] */ unsigned32 *state,
    /* [out] */ error_status_t *st
#endif
);
extern void  DCEAPI audit_control_rewind(
#ifdef IDL_PROTOTYPES
    /* [in] */ handle_t h,
    /* [out] */ error_status_t *st
#endif
);
extern void  DCEAPI audit_control_stop(
#ifdef IDL_PROTOTYPES
    /* [in] */ handle_t h,
    /* [out] */ error_status_t *st
#endif
);
typedef struct audit_control_v1_0_epv_t {
void (* DCEAPI audit_control_show_filter)(
#ifdef IDL_PROTOTYPES
    /* [in] */ handle_t h,
    /* [in] */ aud_esl_type_t esl_type,
    /* [in] */ sec_rgy_name_t subject_name,
    /* [out] */ aud_esl_guides_p_t *guides,
    /* [out] */ error_status_t *st
#endif
);
void (* DCEAPI audit_control_add_filter)(
#ifdef IDL_PROTOTYPES
    /* [in] */ handle_t h,
    /* [in] */ aud_esl_type_t esl_type,
    /* [in] */ sec_rgy_name_t subject_name,
    /* [in] */ aud_esl_guides_p_t *guides,
    /* [out] */ error_status_t *st
#endif
);
void (* DCEAPI audit_control_remove_filter)(
#ifdef IDL_PROTOTYPES
    /* [in] */ handle_t h,
    /* [in] */ aud_esl_type_t esl_type,
    /* [in] */ sec_rgy_name_t subject_name,
    /* [in] */ aud_esl_guides_p_t *guides,
    /* [out] */ error_status_t *st
#endif
);
void (* DCEAPI audit_control_delete_filter)(
#ifdef IDL_PROTOTYPES
    /* [in] */ handle_t h,
    /* [in] */ aud_esl_type_t esl_type,
    /* [in] */ sec_rgy_name_t subject_name,
    /* [out] */ error_status_t *st
#endif
);
void (* DCEAPI audit_control_list_filter)(
#ifdef IDL_PROTOTYPES
    /* [in] */ handle_t h,
    /* [in] */ aud_esl_type_t esl_type,
    /* [in, out] */ unsigned16 *cursor,
    /* [out] */ aud_esl_entry_p_t *first_entry,
    /* [out] */ aud_esl_foreign_entry_p_t *first_foreign_entry,
    /* [out] */ error_status_t *st
#endif
);
void (* DCEAPI audit_control_modify_sstrategy)(
#ifdef IDL_PROTOTYPES
    /* [in] */ handle_t h,
    /* [in] */ unsigned32 strgy,
    /* [out] */ error_status_t *st
#endif
);
void (* DCEAPI audit_control_show_sstrategy)(
#ifdef IDL_PROTOTYPES
    /* [in] */ handle_t h,
    /* [out] */ unsigned32 *strgy,
    /* [out] */ error_status_t *st
#endif
);
void (* DCEAPI audit_control_modify_state)(
#ifdef IDL_PROTOTYPES
    /* [in] */ handle_t h,
    /* [in] */ unsigned32 state,
    /* [out] */ error_status_t *st
#endif
);
void (* DCEAPI audit_control_show_state)(
#ifdef IDL_PROTOTYPES
    /* [in] */ handle_t h,
    /* [out] */ unsigned32 *state,
    /* [out] */ error_status_t *st
#endif
);
void (* DCEAPI audit_control_rewind)(
#ifdef IDL_PROTOTYPES
    /* [in] */ handle_t h,
    /* [out] */ error_status_t *st
#endif
);
void (* DCEAPI audit_control_stop)(
#ifdef IDL_PROTOTYPES
    /* [in] */ handle_t h,
    /* [out] */ error_status_t *st
#endif
);
} audit_control_v1_0_epv_t;
extern rpc_if_handle_t DCEVAR audit_control_v1_0_c_ifspec;
extern rpc_if_handle_t DCEVAR audit_control_v1_0_s_ifspec;

#ifdef __cplusplus
    }
#endif

#endif
