Section: C Library Functions (3)Local indexUp BSD mandoc
HEIMDAL
NAME
krb5_abortkrb5_abortxkrb5_clear_error_stringkrb5_errkrb5_errxkrb5_free_error_stringkrb5_get_err_textkrb5_get_error_messagekrb5_get_error_stringkrb5_have_error_stringkrb5_set_error_stringkrb5_set_warn_destkrb5_get_warn_destkrb5_vabortkrb5_vabortxkrb5_verrkrb5_verrxkrb5_vset_error_stringkrb5_vwarnkrb5_vwarnxkrb5_warnkrb5_warnx
- Heimdal warning and error functions
LIBRARY
Kerberos 5 Library (libkrb5, -lkrb5)
SYNOPSIS
In krb5.h
Ft krb5_error_code
Fn krb5_abort krb5_context context krb5_error_code code const char *fmt ...
Ft krb5_error_code
Fn krb5_abortx krb5_context context krb5_error_code code const char *fmt ...
Ft void
Fn krb5_clear_error_string krb5_context context
Ft krb5_error_code
Fn krb5_err krb5_context context int eval krb5_error_code code const char *format ...
Ft krb5_error_code
Fn krb5_errx krb5_context context int eval const char *format ...
Ft void
Fn krb5_free_error_string krb5_context context char *str
Ft krb5_error_code
Fn krb5_verr krb5_context context int eval krb5_error_code code const char *format va_list ap
Ft krb5_error_code
Fn krb5_verrx krb5_context context int eval const char *format va_list ap
Ft krb5_error_code
Fn krb5_vset_error_string krb5_context context const char *fmt va_list args
Ft krb5_error_code
Fn krb5_vwarn krb5_context context krb5_error_code code const char *format va_list ap
Ft krb5_error_code
Fn krb5_vwarnx krb5_context context const char *format va_list ap
Ft krb5_error_code
Fn krb5_warn krb5_context context krb5_error_code code const char *format ...
Ft krb5_error_code
Fn krb5_warnx krb5_context context const char *format ...
Ft krb5_error_code
Fn krb5_set_error_string krb5_context context const char *fmt ...
Ft krb5_error_code
Fn krb5_set_warn_dest krb5_context context krb5_log_facility *facility
Ft char *
Ft krb5_log_facility *
Fo krb5_get_warn_dest
Fa krb5_context context
Fc Fn krb5_get_err_text krb5_context context krb5_error_code code
Ft char*
Fn krb5_get_error_string krb5_context context
Ft char*
Fn krb5_get_error_message krb5_context context, krb5_error_code code
Ft krb5_boolean
Fn krb5_have_error_string krb5_context context
Ft krb5_error_code
Fn krb5_vabortx krb5_context context const char *fmt va_list ap
Ft krb5_error_code
Fn krb5_vabort krb5_context context const char *fmt va_list ap
DESCRIPTION
These functions print a warning message to some destination.
Fa format
is a printf style format specifying the message to print. The forms not ending in an
``x''
print the error string associated with
Fa code
along with the message.
The
``err''
functions exit with exit status
Fa eval
after printing the message.
Applications that want to get the error message to report it to a user
or store it in a log want to use
Fn krb5_get_error_message .
The
Fn krb5_set_warn_func
function sets the destination for warning messages to the specified
Fa facility .
Messages logged with the
``warn''
functions have a log level of 1, while the
``err''
functions log with level 0.
Fn krb5_get_err_text
fetches the human readable strings describing the error-code.
Fn krb5_abort
and
krb5_abortx
behaves like
krb5_err
and
krb5_errx
but instead of exiting using the
exit(3)
call,
abort(3)
is used.
Fn krb5_free_error_string
frees the error string
Fa str
returned by
Fn krb5_get_error_string .
Fn krb5_clear_error_string
clears the error string from the
Fa context .
Fn krb5_set_error_string
and
Fn krb5_vset_error_string
sets an verbose error string in
Fa context .
Fn krb5_get_error_string
fetches the error string from
Fa context .
The error message in the context is consumed and must be freed using
Fn krb5_free_error_string
by the caller.
See also
Fn krb5_get_error_message ,
what is usually less verbose to use.
Fn krb5_have_error_string
returns
TRUE
if there is a verbose error message in the
Fa context .
Fn krb5_get_error_message
fetches the error string from the context, or if there
is no customized error string in
Fa context ,
uses
Fa code
to return a error string.
In either case, the error message in the context is consumed and must
be freed using
Fn krb5_free_error_string
by the caller.
Fn krb5_set_warn_dest
and
Fn krb5_get_warn_dest
sets and get the log context that is used by
Fn krb5_warn
and friends. By using this the application can control where the
output should go. For example, this is imperative to inetd servers
where logging status and error message will end up on the output
stream to the client.
EXAMPLES
Below is a simple example how to report error messages from the
Kerberos library in an application.
#include <krb5.h>
krb5_error_code
function (krb5_context context)
{
krb5_error_code ret;
ret = krb5_function (context, arg1, arg2);
if (ret) {
char *s = krb5_get_error_message(context, ret);
if (s == NULL)
errx(1, "kerberos error: %d (and out of memory)", ret);
application_logger("krb5_function failed: %s", s);
krb5_free_error_string(context, s);
return ret;
}
return 0;
}