chiark / gitweb /
units: get rid of no_requires unit flag, and make crypto disks require cryptsetup...
authorLennart Poettering <lennart@poettering.net>
Mon, 15 Nov 2010 17:26:37 +0000 (18:26 +0100)
committerLennart Poettering <lennart@poettering.net>
Mon, 15 Nov 2010 17:26:37 +0000 (18:26 +0100)
src/cryptsetup-generator.c
src/device.c
src/unit.c
src/unit.h

index b8db0d5..a2b398d 100644 (file)
@@ -163,7 +163,7 @@ static int create_disk(
         to = NULL;
 
         e = unit_name_escape(name);
-        if (asprintf(&to, "%s/dev-mapper-%s.device.wants/%s", arg_dest, e, n) < 0) {
+        if (asprintf(&to, "%s/dev-mapper-%s.device.requires/%s", arg_dest, e, n) < 0) {
                 r = -ENOMEM;
                 goto fail;
         }
index 7cb4ff6..5c18d99 100644 (file)
@@ -562,7 +562,6 @@ DEFINE_STRING_TABLE_LOOKUP(device_state, DeviceState);
 const UnitVTable device_vtable = {
         .suffix = ".device",
 
-        .no_requires = true,
         .no_instances = true,
         .no_snapshots = true,
         .no_isolate = true,
index b3a8210..edc6364 100644 (file)
@@ -1456,15 +1456,6 @@ int unit_add_dependency(Unit *u, UnitDependency d, Unit *other, bool add_referen
         if (u == other)
                 return 0;
 
-        if (UNIT_VTABLE(u)->no_requires &&
-            (d == UNIT_REQUIRES ||
-             d == UNIT_REQUIRES_OVERRIDABLE ||
-             d == UNIT_REQUISITE ||
-             d == UNIT_REQUISITE_OVERRIDABLE ||
-             d == UNIT_BIND_TO)) {
-                    return -EINVAL;
-        }
-
         if ((r = set_ensure_allocated(&u->meta.dependencies[d], trivial_hash_func, trivial_compare_func)) < 0)
                 return r;
 
index b260dd5..fbe88c2 100644 (file)
@@ -353,11 +353,6 @@ struct UnitVTable {
         /* Can units of this type have multiple names? */
         bool no_alias:1;
 
-        /* If true units of this types can never have "Requires"
-         * dependencies, because state changes can only be observed,
-         * not triggered */
-        bool no_requires:1;
-
         /* Instances make no sense for this type */
         bool no_instances:1;