From: Tobias Brunner Date: Tue, 11 Jun 2013 09:18:33 +0000 (+0200) Subject: Merge branch 'plugin-loader' X-Git-Tag: 5.1.0dr1~128 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5744226e92127f074e7623865bc94ecc12ba22ee;p=thirdparty%2Fstrongswan.git Merge branch 'plugin-loader' Improves how plugin loader resolves dependencies between plugins. The old loader had problems if plugins had dependencies on features provided by plugins listed later in the plugin list. For instance, it was not possible to use the X.509 implementation provided by the x509 plugin while using all the crypto primitives provided by the openssl plugin. Because the x509 plugin has a dependency on SHA1, the old loader skipped that plugin until it loaded a SHA1 implementation. Because the loader also loaded all features with resolved dependencies provided by a specific plugin it would, while loading the openssl plugin's SHA1 implementation, also load its X.509 implementation. So to use the x509 plugin it was necessary to load the sha1 plugin before it so that its dependencies could be properly resolved. With the new implementation the plugins don't have to be in a specific order to resolve dependencies. But the order still matters if two plugins provide the same feature. Also, support for the get_features() interface was added to all plugins. --- 5744226e92127f074e7623865bc94ecc12ba22ee