summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/config')
-rw-r--r--src/config/debug.c37
-rw-r--r--src/config/parameters/parameters.c42
2 files changed, 79 insertions, 0 deletions
diff --git a/src/config/debug.c b/src/config/debug.c
new file mode 100644
index 0000000..277307f
--- /dev/null
+++ b/src/config/debug.c
@@ -0,0 +1,37 @@
+
+/**** RELABSD *****************************************************************/
+#include <relabsd/debug.h>
+
+#ifndef RELABSD_USE_MACRO_DEBUG
+/******************************************************************************/
+/**** LOCAL FUNCTIONS *********************************************************/
+/******************************************************************************/
+int RELABSD_DEBUG_PROGRAM_FLOW = 0;
+int RELABSD_DEBUG_CONFIG = 0;
+int RELABSD_DEBUG_REAL_EVENTS = 0;
+int RELABSD_DEBUG_VIRTUAL_EVENTS = 0;
+
+/******************************************************************************/
+/**** EXPORTED FUNCTIONS ******************************************************/
+/******************************************************************************/
+void relabsd_debug_toggle_program_flow (void)
+{
+ RELABSD_DEBUG_PROGRAM_FLOW = !RELABSD_DEBUG_PROGRAM_FLOW;
+}
+
+void relabsd_debug_toggle_config (void)
+{
+ RELABSD_DEBUG_CONFIG = !RELABSD_DEBUG_CONFIG;
+}
+
+void relabsd_debug_toggle_real_event (void)
+{
+ RELABSD_DEBUG_REAL_EVENTS = !RELABSD_DEBUG_REAL_EVENTS;
+}
+
+void relabsd_debug_toggle_virtual_event (void)
+{
+ RELABSD_DEBUG_VIRTUAL_EVENTS = !RELABSD_DEBUG_VIRTUAL_EVENTS;
+}
+
+#endif
diff --git a/src/config/parameters/parameters.c b/src/config/parameters/parameters.c
index d9a3d46..aca6fab 100644
--- a/src/config/parameters/parameters.c
+++ b/src/config/parameters/parameters.c
@@ -238,6 +238,26 @@ int relabsd_parameters_parse_options
}
else if
(
+ RELABSD_STRING_EQUALS("-v", argv[i])
+ || RELABSD_STRING_EQUALS("--verbose", argv[i])
+ )
+ {
+ relabsd_debug_toggle_real_event();
+ relabsd_debug_toggle_virtual_event();
+ }
+ else if
+ (
+ RELABSD_STRING_EQUALS("-vv", argv[i])
+ || RELABSD_STRING_EQUALS("--very-verbose", argv[i])
+ )
+ {
+ relabsd_debug_toggle_config();
+ relabsd_debug_toggle_program_flow();
+ relabsd_debug_toggle_real_event();
+ relabsd_debug_toggle_virtual_event();
+ }
+ else if
+ (
RELABSD_STRING_EQUALS("-t", argv[i])
|| RELABSD_STRING_EQUALS("--timeout", argv[i])
)
@@ -368,6 +388,22 @@ int relabsd_parameters_argument_count_for
}
else if
(
+ RELABSD_STRING_EQUALS("-v", option)
+ || RELABSD_STRING_EQUALS("--verbose", option)
+ )
+ {
+ *result = 0;
+ }
+ else if
+ (
+ RELABSD_STRING_EQUALS("-vv", option)
+ || RELABSD_STRING_EQUALS("--very-verbose", option)
+ )
+ {
+ *result = 0;
+ }
+ else if
+ (
RELABSD_STRING_EQUALS("-t", option)
|| RELABSD_STRING_EQUALS("--timeout", option)
)
@@ -442,6 +478,12 @@ void relabsd_parameters_print_usage (const char exec [const restrict static 1])
"\t[-t | --timeout] <timeout_in_ms>\n"
"\t\tSets a zeroing timeout (0 to disable).\n\n"
+ "\t[-v | --verbose]\n"
+ "\t\tPrint incoming and outgoing events to stdout.\n\n"
+
+ "\t[-vv | --very-verbose]\n"
+ "\t\tPrint program flow, incoming and outgoing events to stdout.\n\n"
+
"<CONF_OPTION>:\n"
"\t<GLOBAL_CONF_OPTION>\n\n"