chiark / gitweb /
install: allow specifiers in WantedBy/RequiredBy/Alias
[elogind.git] / src / shared / install.h
index d365c01bc75836ea6c4651bd76101972e6cdf8cf..5a351254bb3e21a6172eca232748c240cd95a84b 100644 (file)
@@ -1,7 +1,6 @@
 /*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
 
-#ifndef fooinstallhfoo
-#define fooinstallhfoo
+#pragma once
 
 /***
   This file is part of systemd.
@@ -41,6 +40,7 @@ typedef enum UnitFileState {
         UNIT_FILE_MASKED_RUNTIME,
         UNIT_FILE_STATIC,
         UNIT_FILE_DISABLED,
+        UNIT_FILE_INVALID,
         _UNIT_FILE_STATE_MAX,
         _UNIT_FILE_STATE_INVALID = -1
 } UnitFileState;
@@ -63,6 +63,15 @@ typedef struct UnitFileList {
         UnitFileState state;
 } UnitFileList;
 
+typedef struct {
+        char *name;
+        char *path;
+
+        char **aliases;
+        char **wanted_by;
+        char **required_by;
+} InstallInfo;
+
 int unit_file_enable(UnitFileScope scope, bool runtime, const char *root_dir, char *files[], bool force, UnitFileChange **changes, unsigned *n_changes);
 int unit_file_disable(UnitFileScope scope, bool runtime, const char *root_dir, char *files[], UnitFileChange **changes, unsigned *n_changes);
 int unit_file_reenable(UnitFileScope scope, bool runtime, const char *root_dir, char *files[], bool force, UnitFileChange **changes, unsigned *n_changes);
@@ -85,5 +94,3 @@ UnitFileState unit_file_state_from_string(const char *s);
 
 const char *unit_file_change_type_to_string(UnitFileChangeType s);
 UnitFileChangeType unit_file_change_type_from_string(const char *s);
-
-#endif