adding Ludo's gnunet-download-manager.scm back to SVN HEAD
[oweals/gnunet.git] / src / include / gnunet_os_lib.h
index ff324e18ab71901e4df6987a10f83c2752e981d3..c56947431e49889afa1e2c71bd3f4c105f531879 100644 (file)
@@ -66,12 +66,12 @@ enum GNUNET_OS_InstallationPathKind
   GNUNET_OS_IPK_BINDIR,
 
   /**
-   * Return the directory where libraries are installed. (lib/)
+   * Return the directory where libraries are installed. (lib/gnunet/)
    */
   GNUNET_OS_IPK_LIBDIR,
 
   /**
-   * Return the directory where data is installed (share/)
+   * Return the directory where data is installed (share/gnunet/)
    */
   GNUNET_OS_IPK_DATADIR,
 
@@ -88,9 +88,15 @@ enum GNUNET_OS_InstallationPathKind
   GNUNET_OS_IPK_SELF_PREFIX,
 
   /**
-   * Return the prefix of the path with application icons.
+   * Return the prefix of the path with application icons (share/icons/).
    */
-  GNUNET_OS_IPK_ICONDIR
+  GNUNET_OS_IPK_ICONDIR,
+
+  /**
+   * Return the prefix of the path with documentation files, including the
+   * license (share/doc/gnunet/).
+   */
+  GNUNET_OS_IPK_DOCDIR
 };
 
 
@@ -235,6 +241,23 @@ GNUNET_OS_set_process_priority (struct GNUNET_OS_Process *proc,
                                 enum GNUNET_SCHEDULER_Priority prio);
 
 
+
+/**
+ * Start a process.
+ *
+ * @param pipe_stdin pipe to use to send input to child process (or NULL)
+ * @param pipe_stdout pipe to use to get output from child process (or NULL)
+ * @param filename name of the binary
+ * @param argv NULL-terminated array of arguments to the process
+ * @return pointer to process structure of the new process, NULL on error
+ */
+struct GNUNET_OS_Process *
+GNUNET_OS_start_process_vap (struct GNUNET_DISK_PipeHandle *pipe_stdin,
+                            struct GNUNET_DISK_PipeHandle *pipe_stdout,
+                            const char *filename, 
+                            char *const argv[]);
+
+
 /**
  * Start a process.
  *