1
0
Files
irix-657m-src/eoe/cmd/sss/include/dsm_errors.h
2022-09-29 17:59:04 +03:00

89 lines
3.7 KiB
C

#ifndef __DSM_ERRORS_H_
#define __DSM_ERRORS_H_
#include "seh_errors.h"
/*
* File contains definition of error codes for the DSM only. The error code is
* a 64-bit number. The upper 8 bits are unused for now. Probably can be used
* by higher level modules.
* This is how the error number looks like...
* o 48-55: Major number of error -- these are regular numbers.
* o 0-47 : Minor number of error -- these are bitmaps.
*/
#define DSM_ERROR_MAJOR(X) ((X >> 48) & 0xff)
#define DSM_ERROR_MINOR(X) (X & 0xffFFffFFffFFULL)
#define DSM_ERROR(MAJ,MIN) \
(((MAJ & 0xff) << 48) | (MIN & 0xffFFffFFffFFULL))
/*
* Actual error codes -- MAJ stands for major, MIN stands for minor.
*/
#define DSM_MAJ_MAIN_ERR 0ULL /* Error in the main loop -- unused. */
#define DSM_MAJ_INIT_ERR 1ULL /* Initialization time error */
#define DSM_MAJ_EVENT_ERR 2ULL /* Run-time error associated with events */
/* Run-time error associated with getting event from SEH */
#define DSM_MAJ_SEH_ERR 3ULL
/* Run-time error associated with rules */
#define DSM_MAJ_RULE_ERR 4ULL
#define DSM_MAJ_SSDB_ERR 5ULL /* Run-time error associated with ssdb */
#define DSM_MAJ_ACTION_ERR 6ULL /* Run-time error associated with action */
/*
* Minor codes from now on. First 16 are reserved for common errors.
*/
#define DSM_MIN_ALLOC_MEM SEH_MIN_ALLOC_MEM /* Unable to allocate memory. */
#define DSM_MIN_INVALID_ARG SEH_MIN_INVALID_ARG /* Unexpected argument...*/
/*
* Init errors.
*/
#define DSM_MIN_INIT_SEH (1ULL << 16) /* Error initializing seh interface */
#define DSM_MIN_INIT_DB (1ULL << 17) /* Error initializing ssdb */
#define DSM_MIN_NUM_RULE (1ULL << 18) /* Error reading number of events */
#define DSM_MIN_DB_RULE (1ULL << 19) /* Error reading a particular event. */
#define DSM_MIN_INIT_RULE (1ULL << 20) /* Error with initializing rule(s) */
/*
* errors with SEH communication.
*/
#define DSM_MIN_SEH_RCV (1ULL << 16) /* Error receiving data from SEH */
#define DSM_MIN_SEH_GRB (1ULL << 17) /* Garbage received from SEH */
#define DSM_MIN_SEH_VER (1ULL << 18) /* Bad version number of event */
/*
* SSDB errors.
*/
#define DSM_MIN_DB_XMIT (1ULL << 16) /* Error transmitting data to SSDB */
#define DSM_MIN_DB_RCV (1ULL << 17) /* Error receiving data from SSDB */
#define DSM_MIN_DB_EVENT (1ULL << 18) /* Bad event received from DB */
#define DSM_MIN_DB_EVNUM (1ULL << 19) /* Bad event number received from DB*/
#define DSM_MIN_DB_WRIT_REC (1ULL << 21) /* Error writing record into DB */
#define DSM_MIN_DB_MISS_FLD (1ULL << 22) /* Missing field in DB */
#define DSM_MIN_DB_NORULE (1ULL << 23) /* Rule not found in DB. */
#define DSM_MIN_DB_API_ERR (1ULL << 24) /* DB API error. */
/*
* Event handling errors.
*/
#define DSM_MIN_EV_INVALID (1ULL << 16) /* Got an invalid event */
#define DSM_MIN_EV_FIND (1ULL << 17) /* Error finding event. */
#define DSM_MIN_EV_DUP (1ULL << 18) /* Duplicate event */
#define DSM_MIN_EV_GRB (1ULL << 19) /* Garbage received in event data*/
/*
* Rules related errors.
*/
#define DSM_MIN_RULE_HOST (1ULL << 16) /* Hostname not found in the rule.*/
#define DSM_MIN_RULE_FIND (1ULL << 17) /* Error finding rule. */
#define DSM_MIN_RULE_INVALID (1ULL << 18) /* Invalid rule. */
#define DSM_MIN_RULE_DUP (1ULL << 19) /* Duplicate rule. */
#define DSM_MIN_RULE_DSO (1ULL << 20) /* Error while executing dso. */
#define DSM_MIN_RULE_USER (1ULL << 21) /* Unknown user to execute as. */
#define DSM_MIN_RULE_FILE (1ULL << 22) /* Cannot find executable file. */
#define DSM_MIN_RULE_PERM (1ULL << 23) /* Bad permissions with file. */
#define DSM_MIN_RULE_SUID (1ULL << 24) /* SUID bit was on. */
#endif