commit af677ab893247004125ada249ebb84479b37df0c
parent e2a036bf6e9916d00462d4f783e7ac34324c6971
Author: t3sserakt <t3ss@posteo.de>
Date: Thu, 15 Aug 2024 14:46:54 +0200
Added start code for daemons to libgnunetutil, and their usage in native-lib.cpp
Diffstat:
3 files changed, 31 insertions(+), 2 deletions(-)
diff --git a/android_studio/app/src/main/cpp/native-lib.cpp b/android_studio/app/src/main/cpp/native-lib.cpp
@@ -322,7 +322,7 @@ Java_org_gnu_gnunet_MainActivity_stringFromJNI(
}
AAsset_close(asset);
- GNUNET_SERVICE_main (1,
+ GNUNET_PROGRAM_monolith_main (1,
argvx,
cfg);
diff --git a/android_studio/distribution/libgnunetutil/lib/arm64-v8a/include/gnunet_program_lib.h b/android_studio/distribution/libgnunetutil/lib/arm64-v8a/include/gnunet_program_lib.h
@@ -125,7 +125,15 @@ GNUNET_PROGRAM_run (int argc,
enum GNUNET_GenericReturnValue
GNUNET_DAEMON_register (const char *daemon_name,
const char *daemon_desc,
- GNUNET_PROGRAM_Main task);
+ GNUNET_SCHEDULER_TaskCallback task);
+
+/**
+ * Start all services and daemons in a single prozess.
+ */
+void
+GNUNET_PROGRAM_monolith_main (int argc,
+ char *const *argv,
+ struct GNUNET_CONFIGURATION_Handle *cfg);
#ifndef HAVE_GNUNET_MONOLITH
#define GNUNET_DAEMON_MAIN(daemon_name, daemon_help, init_cb) \
@@ -162,6 +170,27 @@ GNUNET_DAEMON_register (const char *daemon_name,
#endif
+/**
+ * Create configuration handle from options and configuration file.
+ */
+enum GNUNET_GenericReturnValue
+GNUNET_PROGRAM_conf_and_options (int argc,
+ char *const *argv,
+ struct GNUNET_CONFIGURATION_Handle *cfg);
+
+
+/**
+ * Run the mainloop in a monolithic libgnunet.
+ * Must be called such that services are actually launched.
+ */
+void
+GNUNET_DAEMON_main (int argc,
+ char *const *argv,
+ struct GNUNET_CONFIGURATION_Handle *cfg,
+ enum GNUNET_GenericReturnValue with_scheduler);
+
+
+
#if 0 /* keep Emacsens' auto-indent happy */
{
#endif
diff --git a/android_studio/distribution/libgnunetutil/lib/arm64-v8a/libgnunetutil.so b/android_studio/distribution/libgnunetutil/lib/arm64-v8a/libgnunetutil.so
Binary files differ.