+/*
+ * Note: the enctype-less OID is used as the mechanism OID in exported
+ * names. There is no public symbol for it. This is consistent with
+ * the krb5 mechanism which, whilst known by many OIDs, always uses a
+ * canonical OID for exported names. (This OID is also returned by
+ * gss_inquire_name.)
+ */
- /* 1.3.6.1.4.1.5322.21.1 */
- { 9, "\x2B\x06\x01\x04\x01\xA9\x4A\x15\x01" },
- /* 1.3.6.1.4.1.5322.21.1.17 */
- { 10, "\x2B\x06\x01\x04\x01\xA9\x4A\x15\x01\x11" },
- /* 1.3.6.1.4.1.5322.21.1.18 */
- { 10, "\x2B\x06\x01\x04\x01\xA9\x4A\x15\x01\x12" }
+ /* 1.3.6.1.4.1.5322.22.1 */
+ { 9, "\x2B\x06\x01\x04\x01\xA9\x4A\x16\x01" },
+ /* 1.3.6.1.4.1.5322.22.1.17 */
+ { 10, "\x2B\x06\x01\x04\x01\xA9\x4A\x16\x01\x11" },
+ /* 1.3.6.1.4.1.5322.22.1.18 */
+ { 10, "\x2B\x06\x01\x04\x01\xA9\x4A\x16\x01\x12" }
};
gss_OID GSS_EAP_MECHANISM = &gssEapMechOids[0];
gss_OID GSS_EAP_AES128_CTS_HMAC_SHA1_96_MECHANISM = &gssEapMechOids[1];
gss_OID GSS_EAP_AES256_CTS_HMAC_SHA1_96_MECHANISM = &gssEapMechOids[2];
};
gss_OID GSS_EAP_MECHANISM = &gssEapMechOids[0];
gss_OID GSS_EAP_AES128_CTS_HMAC_SHA1_96_MECHANISM = &gssEapMechOids[1];
gss_OID GSS_EAP_AES256_CTS_HMAC_SHA1_96_MECHANISM = &gssEapMechOids[2];
+OM_uint32
+gssEapReleaseOid(OM_uint32 *minor, gss_OID *oid)
+{
+ gss_OID internalizedOid = GSS_C_NO_OID;
+
+ *minor = 0;
+
+ if (gssEapInternalizeOid(*oid, &internalizedOid)) {
+ /* OID was internalized, so we can mark it as "freed" */
+ *oid = GSS_C_NO_OID;
+ return GSS_S_COMPLETE;
+ }
+
+ /* we don't know about this OID */
+ return GSS_S_CONTINUE_NEEDED;
+}
+
- { sizeof("GS2-EAP"), "GS2-EAP", },
- { sizeof("GS2-EAP-AES128"), "GS2-EAP-AES128" },
- { sizeof("GS2-EAP-AES256"), "GS2-EAP-AES256" },
+ { sizeof("EAP") - 1, "EAP", }, /* not used */
+ { sizeof("EAP-AES128") - 1, "EAP-AES128" },
+ { sizeof("EAP-AES256") - 1, "EAP-AES256" },
if (oidEqual(&gssEapMechOids[i], oid))
return &gssEapSaslMechs[i];
}
if (oidEqual(&gssEapMechOids[i], oid))
return &gssEapSaslMechs[i];
}
if (bufferEqual(&gssEapSaslMechs[i], name))
return &gssEapMechOids[i];
}
if (bufferEqual(&gssEapSaslMechs[i], name))
return &gssEapMechOids[i];
}