/* * 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 #endif #ifndef KRB5_CALLCONV #define KRB5_CALLCONV #define KRB5_CALLCONV_C #endif #include 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) */