]> git.ipfire.org Git - thirdparty/krb5.git/commitdiff
Load cred store functions from GSS modules
authorSimo Sorce <simo@redhat.com>
Sat, 20 Jul 2013 17:19:19 +0000 (13:19 -0400)
committerGreg Hudson <ghudson@mit.edu>
Sun, 21 Jul 2013 06:24:00 +0000 (02:24 -0400)
When the credential store feature was implement the related functions
were added to struct gss_config, but the initialization function that
dynamically loads modules was not changed to see if the plugin being
loaded provided such functions.

This will allow non-builtin mechanism and interposer mechanism to
implement custom credential store extensions if they wish.

ticket: 7682

src/lib/gssapi/mechglue/g_initialize.c

index f5b8b1588b07acee041dcd89c6e28d4f1113a0ee..70cc4eed7434a6fb0831915053087b52fb55667f 100644 (file)
@@ -680,6 +680,8 @@ build_dynamicMech(void *dl, const gss_OID mech_type)
         GSS_ADD_DYNAMIC_METHOD_NOLOOP(dl, mech, gss_inquire_mech_for_saslname);
         /* RFC 5587 */
         GSS_ADD_DYNAMIC_METHOD_NOLOOP(dl, mech, gss_inquire_attrs_for_mech);
+       GSS_ADD_DYNAMIC_METHOD(dl, mech, gss_acquire_cred_from);
+       GSS_ADD_DYNAMIC_METHOD(dl, mech, gss_store_cred_into);
        GSS_ADD_DYNAMIC_METHOD(dl, mech, gssspi_acquire_cred_with_password);
        GSS_ADD_DYNAMIC_METHOD(dl, mech, gssspi_import_sec_context_by_mech);
        GSS_ADD_DYNAMIC_METHOD(dl, mech, gssspi_import_name_by_mech);
@@ -778,6 +780,8 @@ build_interMech(void *dl, const gss_OID mech_type)
        RESOLVE_GSSI_SYMBOL(dl, mech, gss, _inquire_mech_for_saslname);
        /* RFC 5587 */
        RESOLVE_GSSI_SYMBOL(dl, mech, gss, _inquire_attrs_for_mech);
+       RESOLVE_GSSI_SYMBOL(dl, mech, gss, _acquire_cred_from);
+       RESOLVE_GSSI_SYMBOL(dl, mech, gss, _store_cred_into);
        RESOLVE_GSSI_SYMBOL(dl, mech, gssspi, _acquire_cred_with_password);
        RESOLVE_GSSI_SYMBOL(dl, mech, gssspi, _import_sec_context_by_mech);
        RESOLVE_GSSI_SYMBOL(dl, mech, gssspi, _import_name_by_mech);