some basic talloc related vty commands
Change-Id: Id7c99e0c1d6b7421667425d38b512ad959142132
diff --git a/sysmoOCTSIM/main.c b/sysmoOCTSIM/main.c
index 6ab8bc8..6381a80 100644
--- a/sysmoOCTSIM/main.c
+++ b/sysmoOCTSIM/main.c
@@ -707,6 +707,26 @@
extern void testmode_init(void);
+#include "talloc.h"
+void *g_tall_ctx;
+
+DEFUN(_talloc_report, cmd_talloc_report, "talloc-report", "Generate a talloc report")
+{
+ talloc_report_full(g_tall_ctx, stdout);
+}
+
+DEFUN(talloc_test, cmd_talloc_test, "talloc-test", "Test the talloc allocator")
+{
+ for (int i = 0; i < 10; i++)
+ talloc_named_const(g_tall_ctx, 10, "sibling");
+}
+
+DEFUN(v_talloc_free, cmd_talloc_free, "talloc-free", "Release all memory")
+{
+ talloc_free(g_tall_ctx);
+ g_tall_ctx = NULL;
+}
+
int main(void)
{
atmel_start_init();
@@ -724,9 +744,16 @@
command_register(&cmd_sim_atr);
command_register(&cmd_sim_iccid);
testmode_init();
+ command_register(&cmd_talloc_test);
+ command_register(&cmd_talloc_report);
+ command_register(&cmd_talloc_free);
printf("\r\n\r\nsysmocom sysmoOCTSIM\r\n");
+ talloc_enable_null_tracking();
+ g_tall_ctx = talloc_named_const(NULL, 0, "global");
+ printf("g_tall_ctx=%p\r\n", g_tall_ctx);
+
command_print_prompt();
while (true) { // main loop
command_try_recv();