aboutsummaryrefslogtreecommitdiff
path: root/lib/libgssapi/gss_display_status.c
diff options
context:
space:
mode:
authorDoug Rabson <dfr@FreeBSD.org>2007-07-05 13:40:07 +0000
committerDoug Rabson <dfr@FreeBSD.org>2007-07-05 13:40:07 +0000
commit41ec3746604d7b1a2f7ed1dd492f738b65c28361 (patch)
treeb6030228c894f70ad7debb0048731729229b6edd /lib/libgssapi/gss_display_status.c
parent458f818f4711ca8bfde212d04294f10eb384437f (diff)
downloadsrc-41ec3746604d7b1a2f7ed1dd492f738b65c28361.tar.gz
src-41ec3746604d7b1a2f7ed1dd492f738b65c28361.zip
If the mech_type argument to gss_display_status is null, use a default
mechanism. Approved by: re (kensmith)
Notes
Notes: svn path=/head/; revision=171254
Diffstat (limited to 'lib/libgssapi/gss_display_status.c')
-rw-r--r--lib/libgssapi/gss_display_status.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/lib/libgssapi/gss_display_status.c b/lib/libgssapi/gss_display_status.c
index 96f68609c5f6..f87cc9eeade7 100644
--- a/lib/libgssapi/gss_display_status.c
+++ b/lib/libgssapi/gss_display_status.c
@@ -144,11 +144,20 @@ OM_uint32
gss_display_status(OM_uint32 *minor_status,
OM_uint32 status_value,
int status_type,
- const gss_OID mech_type,
+ const gss_OID input_mech_type,
OM_uint32 *message_content,
gss_buffer_t status_string)
{
OM_uint32 major_status;
+ gss_OID mech_type;
+
+ mech_type = input_mech_type;
+ if (mech_type == GSS_C_NO_OID) {
+ _gss_load_mech();
+ mech_type = &SLIST_FIRST(&_gss_mechs)->gm_mech_oid;
+ if (mech_type == NULL)
+ return (GSS_S_BAD_MECH);
+ }
*minor_status = 0;
switch (status_type) {