[144] in pc-kerberos
Re: Error message texts in krbv4win.dll
daemon@ATHENA.MIT.EDU (Michael Oltz)
Tue Aug 8 09:40:18 1995
Date: Tue, 08 Aug 1995 09:36:53 -0400
To: pc-kerberos@MIT.EDU
From: mdo1@cornell.edu (Michael Oltz)
>Is there some problem with the get_krb_err_txt_entry( int i) function? The
>argument is the index into the static array. Please let us know if you are
>looking for an interface with some different functionality, I may have
>misunderstood your message.
From what I can see from my somewhat cursory examination of the source,
kerberos functions return a four-byte error code. The high-order three
bytes are used for one of four arbitrary but distinct error base
values, for the four different kinds of errors: KRB, KADM, LSH, or
COM (the latter base value being zero); the low-order byte indicates
the specific error encountered. Each of the first three kinds of error
has a *separate* error text table. get_krb_err_text_entry indexes
only the first of these. As far as I can tell, I could expect any of
the four kinds of error codes, for example, from kadm_change_your_password.
I don't know if there is an exported function for each of the other
three kinds of error that will return the appropriate *text string*,
but I didn't find them in the time I spent looking. All I want is
a single FAR PASCAL exported function to which I can send a *four byte*
error value, that I got from a kerberos function, and get back the
appropriate text string from the appropriate table, at least raw (as
the "error_message" function does) or maybe amplified (as "err_describe"
does).
Perhaps this problem is already solved. What am I overlooking?
P.S. This kerbie-newbie found this out when we, or rather our users,
discovered that passing for example a COM (that is, socket) error to
get_krb_err_text_entry does not return a text string, it returns a
GPF, because the value is larger than 255, as are all kerberos errors
in their raw form. Like they say in the comic books, KERBLOOSH. :)