diff options
-rw-r--r-- | src/charon-cmd/charon-cmd.c | 1 | ||||
-rw-r--r-- | src/charon-nm/charon-nm.c | 1 | ||||
-rw-r--r-- | src/charon-tkm/src/charon-tkm.c | 1 | ||||
-rw-r--r-- | src/charon/charon.c | 1 | ||||
-rw-r--r-- | src/conftest/conftest.c | 2 | ||||
-rw-r--r-- | src/frontends/android/jni/libandroidbridge/charonservice.c | 1 | ||||
-rw-r--r-- | src/libcharon/daemon.c | 2 | ||||
-rw-r--r-- | src/libstrongswan/plugins/plugin_loader.c | 10 | ||||
-rw-r--r-- | src/libstrongswan/plugins/plugin_loader.h | 8 | ||||
-rw-r--r-- | src/scepclient/scepclient.c | 3 |
10 files changed, 26 insertions, 4 deletions
diff --git a/src/charon-cmd/charon-cmd.c b/src/charon-cmd/charon-cmd.c index f898fd650..d0e20f9be 100644 --- a/src/charon-cmd/charon-cmd.c +++ b/src/charon-cmd/charon-cmd.c @@ -361,6 +361,7 @@ int main(int argc, char *argv[]) } DBG1(DBG_DMN, "Starting charon-cmd IKE client (strongSwan %s, %s %s, %s)", VERSION, utsname.sysname, utsname.release, utsname.machine); + lib->plugins->status(lib->plugins, LEVEL_CTRL); /* add handler for SEGV and ILL, * INT, TERM and HUP are handled by sigwait() in run() */ diff --git a/src/charon-nm/charon-nm.c b/src/charon-nm/charon-nm.c index 61f2937ce..d61ddee85 100644 --- a/src/charon-nm/charon-nm.c +++ b/src/charon-nm/charon-nm.c @@ -212,6 +212,7 @@ int main(int argc, char *argv[]) DBG1(DBG_DMN, "initialization failed - aborting charon-nm"); goto deinit; } + lib->plugins->status(lib->plugins, LEVEL_CTRL); if (!charon->caps->drop(charon->caps)) { diff --git a/src/charon-tkm/src/charon-tkm.c b/src/charon-tkm/src/charon-tkm.c index 0b39058a6..4e364e7be 100644 --- a/src/charon-tkm/src/charon-tkm.c +++ b/src/charon-tkm/src/charon-tkm.c @@ -311,6 +311,7 @@ int main(int argc, char *argv[]) DBG1(DBG_DMN, "initialization failed - aborting %s", dmn_name); goto deinit; } + lib->plugins->status(lib->plugins, LEVEL_CTRL); /* set global pidfile name depending on daemon name */ if (asprintf(&pidfile_name, IPSEC_PIDDIR"/%s.pid", dmn_name) < 0) diff --git a/src/charon/charon.c b/src/charon/charon.c index 812b7620b..eb7dd58e3 100644 --- a/src/charon/charon.c +++ b/src/charon/charon.c @@ -398,6 +398,7 @@ int main(int argc, char *argv[]) DBG1(DBG_DMN, "initialization failed - aborting charon"); goto deinit; } + lib->plugins->status(lib->plugins, LEVEL_CTRL); if (check_pidfile()) { diff --git a/src/conftest/conftest.c b/src/conftest/conftest.c index c2251effa..56d98bbe2 100644 --- a/src/conftest/conftest.c +++ b/src/conftest/conftest.c @@ -518,6 +518,8 @@ int main(int argc, char *argv[]) { return 1; } + lib->plugins->status(lib->plugins, LEVEL_CTRL); + if (!load_certs(conftest->test, conftest->suite_dir)) { return 1; diff --git a/src/frontends/android/jni/libandroidbridge/charonservice.c b/src/frontends/android/jni/libandroidbridge/charonservice.c index 370c52af9..721c3a4a5 100644 --- a/src/frontends/android/jni/libandroidbridge/charonservice.c +++ b/src/frontends/android/jni/libandroidbridge/charonservice.c @@ -565,6 +565,7 @@ JNI_METHOD(CharonVpnService, initializeCharon, void, library_deinit(); return; } + lib->plugins->status(lib->plugins, LEVEL_CTRL); /* add handler for SEGV and ILL etc. */ action.sa_handler = segv_handler; diff --git a/src/libcharon/daemon.c b/src/libcharon/daemon.c index b27e1776a..70262b736 100644 --- a/src/libcharon/daemon.c +++ b/src/libcharon/daemon.c @@ -538,8 +538,6 @@ METHOD(daemon_t, initialize, bool, { return FALSE; } - DBG1(DBG_DMN, "loaded plugins: %s", - lib->plugins->loaded_plugins(lib->plugins)); this->public.ike_sa_manager = ike_sa_manager_create(); if (this->public.ike_sa_manager == NULL) diff --git a/src/libstrongswan/plugins/plugin_loader.c b/src/libstrongswan/plugins/plugin_loader.c index 2c8eae988..26310645b 100644 --- a/src/libstrongswan/plugins/plugin_loader.c +++ b/src/libstrongswan/plugins/plugin_loader.c @@ -1082,6 +1082,15 @@ METHOD(plugin_loader_t, loaded_plugins, char*, return this->loaded_plugins ?: ""; } +METHOD(plugin_loader_t, status, void, + private_plugin_loader_t *this, level_t level) +{ + if (this->loaded_plugins) + { + dbg(DBG_LIB, level, "loaded plugins: %s", this->loaded_plugins); + } +} + METHOD(plugin_loader_t, destroy, void, private_plugin_loader_t *this) { @@ -1109,6 +1118,7 @@ plugin_loader_t *plugin_loader_create() .create_plugin_enumerator = _create_plugin_enumerator, .has_feature = _has_feature, .loaded_plugins = _loaded_plugins, + .status = _status, .destroy = _destroy, }, .plugins = linked_list_create(), diff --git a/src/libstrongswan/plugins/plugin_loader.h b/src/libstrongswan/plugins/plugin_loader.h index 6bb9d6e75..d4f74b923 100644 --- a/src/libstrongswan/plugins/plugin_loader.h +++ b/src/libstrongswan/plugins/plugin_loader.h @@ -25,6 +25,7 @@ typedef struct plugin_loader_t plugin_loader_t; #include <collections/enumerator.h> +#include <utils/debug.h> /* to avoid circular references we can't include plugin_feature.h */ struct plugin_feature_t; @@ -110,6 +111,13 @@ struct plugin_loader_t { char* (*loaded_plugins)(plugin_loader_t *this); /** + * Log status about loaded plugins and features. + * + * @param level log level to use + */ + void (*status)(plugin_loader_t *this, level_t level); + + /** * Unload loaded plugins, destroy plugin_loader instance. */ void (*destroy)(plugin_loader_t *this); diff --git a/src/scepclient/scepclient.c b/src/scepclient/scepclient.c index 17f4d7c5d..11174c96f 100644 --- a/src/scepclient/scepclient.c +++ b/src/scepclient/scepclient.c @@ -929,8 +929,7 @@ int main(int argc, char **argv) { exit_scepclient("plugin loading failed"); } - DBG1(DBG_APP, " loaded plugins: %s", - lib->plugins->loaded_plugins(lib->plugins)); + lib->plugins->status(lib->plugins, LEVEL_DIAG); if ((filetype_out == 0) && (!request_ca_certificate)) { |