com_err.h revision 505d05c73a6e56769f263d4803b22eddd168ee24
/*
* Header file for common error description library.
*
* Copyright 1988, Student Information Processing Board of the
* Massachusetts Institute of Technology.
*
* Copyright 1995 by Cygnus Support.
*
* For copyright and distribution info, see the documentation supplied
* with this package.
*/
#ifndef __COM_ERR_H
#pragma ident "%Z%%M% %I% %E% SMI"
#if defined(_WIN32)
#include <win-mac.h>
#endif
#ifndef KRB5_CALLCONV
#define KRB5_CALLCONV
#define KRB5_CALLCONV_C
#endif
#include <stdarg.h>
typedef long errcode_t;
typedef void (*et_old_error_hook_func) (const char *, errcode_t,
const char *, va_list ap);
struct error_table {
/*@shared@*/ char const * const * msgs;
long base;
unsigned int n_msgs;
};
#ifdef __cplusplus
extern "C" {
#endif
/* Public interfaces */
extern void KRB5_CALLCONV_C com_err
(const char *, errcode_t, const char *, ...);
extern void KRB5_CALLCONV com_err_va
(const char *whoami, errcode_t code, const char *fmt,
va_list ap);
extern /*@observer@*//*@dependent@*/ const char * KRB5_CALLCONV error_message
(errcode_t)
/*@modifies internalState@*/;
extern errcode_t KRB5_CALLCONV add_error_table
(/*@dependent@*/ const struct error_table *)
/*@modifies internalState@*/;
extern errcode_t KRB5_CALLCONV remove_error_table
(const struct error_table *)
/*@modifies internalState@*/;
#if !defined(_WIN32)
/*
* The display routine should be application specific. A global hook,
* may cause inappropriate display procedures to be called between
* applications under non-Unix environments.
*/
extern et_old_error_hook_func set_com_err_hook (et_old_error_hook_func);
extern et_old_error_hook_func reset_com_err_hook (void);
#endif
#ifdef __cplusplus
}
#endif
#define __COM_ERR_H
#endif /* ! defined(__COM_ERR_H) */