commit 8f49943459564a59ca7f60476aef6b0ddd79a56c
parent 3f6e37b1bcb9e5ec70f228a9cb6b01db0b9ad8d5
Author: Nick Mathewson <nickm@torproject.org>
Date: Mon, 30 Sep 2019 10:05:42 -0400
Implement a function to list the subsystems to stdout.
Diffstat:
2 files changed, 15 insertions(+), 0 deletions(-)
diff --git a/src/app/main/subsysmgr.c b/src/app/main/subsysmgr.c
@@ -294,6 +294,19 @@ subsystems_thread_cleanup(void)
}
/**
+ * Dump a human- and machine-readable list of all the subsystems to stdout,
+ * in their initialization order, prefixed with their level.
+ **/
+void
+subsystems_dump_list(void)
+{
+ for (unsigned i = 0; i < n_tor_subsystems - 1; ++i) {
+ const subsys_fns_t *sys = tor_subsystems[i];
+ printf("% 4d\t%s\n", sys->level, sys->name);
+ }
+}
+
+/**
* Register all subsystem-declared options formats in <b>mgr</b>.
*
* Return 0 on success, -1 on failure.
diff --git a/src/app/main/subsysmgr.h b/src/app/main/subsysmgr.h
@@ -31,6 +31,8 @@ void subsystems_prefork(void);
void subsystems_postfork(void);
void subsystems_thread_cleanup(void);
+void subsystems_dump_list(void);
+
struct config_mgr_t;
int subsystems_register_options_formats(struct config_mgr_t *mgr);
int subsystems_register_state_formats(struct config_mgr_t *mgr);