gnunetutil: add 2d and 3d allocation including tests
[oweals/gnunet.git] / src / include / gnunet_os_lib.h
index 8cd4a4578f31edfde513988df716bf9daf808850..39c70c8bd4db09c78ef3ccff7d7075e8ed6ac62f 100644 (file)
@@ -240,6 +240,33 @@ struct GNUNET_OS_ProjectData
    */
   const char *env_varname_alt;
 
+  /**
+   * Name of an environment variable that can be used to override
+   * the location from which default configuration files are loaded
+   * from, for example "GNUNET_BASE_CONFIG".
+   */
+  const char *base_config_varname;
+
+  /**
+   * E-mail address for reporting bugs.
+   */
+  const char *bug_email;
+
+  /**
+   * Project homepage.
+   */
+  const char *homepage;
+
+  /**
+   * Configuration file name (in $XDG_CONFIG_HOME) to use.
+   */
+  const char *config_file;
+
+  /**
+   * Configuration file name to use (if $XDG_CONFIG_HOME is not set).
+   */
+  const char *user_config_file;
+
 };
 
 
@@ -250,6 +277,13 @@ const struct GNUNET_OS_ProjectData *
 GNUNET_OS_project_data_default (void);
 
 
+/**
+ * @return current (actual) project data.
+ */
+const struct GNUNET_OS_ProjectData *
+GNUNET_OS_project_data_get (void);
+
+
 /**
  * Setup OS subsystem with project data.
  *
@@ -555,12 +589,9 @@ GNUNET_OS_process_wait (struct GNUNET_OS_Process *proc);
  * variable) and raise those signals.
  *
  * @param cls closure (unused)
- * @param tc scheduler context (unused)
  */
 void
-GNUNET_OS_install_parent_control_handler (void *cls,
-                                          const struct
-                                          GNUNET_SCHEDULER_TaskContext *tc);
+GNUNET_OS_install_parent_control_handler (void *cls);
 
 
 /**