chiark / gitweb /
Prep v225: Applying various fixes and changes to src/shared that got lost during...
[elogind.git] / src / shared / path-lookup.h
index 3982974bad9638cfb2253003881cf9aa490f7617..e35c8d3c046a83dd892a977afa1a286fe5a12bdc 100644 (file)
 
 #include "macro.h"
 
-typedef enum UnitFileScope UnitFileScope;
-
 typedef struct LookupPaths {
         char **unit_path;
+#ifdef HAVE_SYSV_COMPAT
+        char **sysvinit_path;
+        char **sysvrcnd_path;
+#endif
 } LookupPaths;
 
-typedef enum SystemdRunningAs {
-        SYSTEMD_SYSTEM,
-        SYSTEMD_USER,
-        _SYSTEMD_RUNNING_AS_MAX,
-        _SYSTEMD_RUNNING_AS_INVALID = -1
-} SystemdRunningAs;
+typedef enum ManagerRunningAs {
+        MANAGER_SYSTEM,
+        MANAGER_USER,
+        _MANAGER_RUNNING_AS_MAX,
+        _MANAGER_RUNNING_AS_INVALID = -1
+} ManagerRunningAs;
 
 int user_config_home(char **config_home);
 int user_runtime_dir(char **runtime_dir);
 
+char **generator_paths(ManagerRunningAs running_as);
+
 int lookup_paths_init(LookupPaths *p,
-                      SystemdRunningAs running_as,
+                      ManagerRunningAs running_as,
                       bool personal,
                       const char *root_dir,
                       const char *generator,
                       const char *generator_early,
                       const char *generator_late);
-void lookup_paths_free(LookupPaths *p);
+
+#include "install.h"
+
 int lookup_paths_init_from_scope(LookupPaths *paths,
                                  UnitFileScope scope,
                                  const char *root_dir);
 
+void lookup_paths_free(LookupPaths *p);
 #define _cleanup_lookup_paths_free_ _cleanup_(lookup_paths_free)