Save detailed error messages (usually from the krb5 library) in per-thread storage, mapping each error code to the most recently produced message for it. Return the message from display_status. Currently not implemented for a few cases where the krb5 mechanism returns a minor status code of 0, or another value different from the libkrb5 error code. Other functions are available to store a generic string or formatted message, but aren't used much at present. Tested with these errors in context establishment: * missing ccache (libkrb5 shows pathname if FILE: type) * missing keytab (libkrb5 shows pathname if FILE: type) * server principal unknown (libkrb5 shows server principal) Commit By: raeburn Revision: 19672 Changed Files: U trunk/src/lib/gssapi/gss_libinit.c U trunk/src/lib/gssapi/krb5/Makefile.in U trunk/src/lib/gssapi/krb5/accept_sec_context.c U trunk/src/lib/gssapi/krb5/acquire_cred.c U trunk/src/lib/gssapi/krb5/add_cred.c U trunk/src/lib/gssapi/krb5/context_time.c U trunk/src/lib/gssapi/krb5/copy_ccache.c U trunk/src/lib/gssapi/krb5/delete_sec_context.c U trunk/src/lib/gssapi/krb5/disp_name.c U trunk/src/lib/gssapi/krb5/disp_status.c U trunk/src/lib/gssapi/krb5/duplicate_name.c U trunk/src/lib/gssapi/krb5/export_name.c U trunk/src/lib/gssapi/krb5/export_sec_context.c U trunk/src/lib/gssapi/krb5/gssapiP_krb5.h U trunk/src/lib/gssapi/krb5/gssapi_krb5.c U trunk/src/lib/gssapi/krb5/import_name.c U trunk/src/lib/gssapi/krb5/import_sec_context.c U trunk/src/lib/gssapi/krb5/init_sec_context.c U trunk/src/lib/gssapi/krb5/inq_context.c U trunk/src/lib/gssapi/krb5/inq_cred.c U trunk/src/lib/gssapi/krb5/k5seal.c U trunk/src/lib/gssapi/krb5/k5sealv3.c U trunk/src/lib/gssapi/krb5/k5unseal.c U trunk/src/lib/gssapi/krb5/rel_cred.c U trunk/src/lib/gssapi/krb5/val_cred.c