summaryrefslogtreecommitdiffstats
path: root/lib/libgssapi/gss_indicate_mechs.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libgssapi/gss_indicate_mechs.c')
-rw-r--r--lib/libgssapi/gss_indicate_mechs.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/libgssapi/gss_indicate_mechs.c b/lib/libgssapi/gss_indicate_mechs.c
index 87a34f4..ec4350f 100644
--- a/lib/libgssapi/gss_indicate_mechs.c
+++ b/lib/libgssapi/gss_indicate_mechs.c
@@ -37,7 +37,7 @@ gss_indicate_mechs(OM_uint32 *minor_status,
struct _gss_mech_switch *m;
OM_uint32 major_status;
gss_OID_set set;
- int i;
+ size_t i;
_gss_load_mech();
@@ -50,6 +50,12 @@ gss_indicate_mechs(OM_uint32 *minor_status,
major_status = m->gm_indicate_mechs(minor_status, &set);
if (major_status)
continue;
+ if (set == GSS_C_NO_OID_SET) {
+ major_status = gss_add_oid_set_member(
+ minor_status,
+ &m->gm_mech_oid, mech_set);
+ continue;
+ }
for (i = 0; i < set->count; i++)
major_status = gss_add_oid_set_member(minor_status,
&set->elements[i], mech_set);
OpenPOWER on IntegriCloud