X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fcondition.h;h=71b1c6761e58d14a54d56d6ff79a26b6e7e6116c;hb=b8b5e648cacc8d73c55fdffbb3466ecd8146131a;hp=f4903d76d98ce5a36e37b7114a7b0e89215c748e;hpb=039655a40c77f88e4f9ccc00824f2f483f22f2c1;p=elogind.git diff --git a/src/condition.h b/src/condition.h index f4903d76d..71b1c6761 100644 --- a/src/condition.h +++ b/src/condition.h @@ -28,9 +28,16 @@ typedef enum ConditionType { CONDITION_PATH_EXISTS, + CONDITION_PATH_EXISTS_GLOB, + CONDITION_PATH_IS_DIRECTORY, + CONDITION_PATH_IS_SYMBOLIC_LINK, + CONDITION_PATH_IS_MOUNT_POINT, CONDITION_DIRECTORY_NOT_EMPTY, + CONDITION_FILE_IS_EXECUTABLE, CONDITION_KERNEL_COMMAND_LINE, CONDITION_VIRTUALIZATION, + CONDITION_SECURITY, + CONDITION_CAPABILITY, CONDITION_NULL, _CONDITION_TYPE_MAX, _CONDITION_TYPE_INVALID = -1 @@ -39,12 +46,14 @@ typedef enum ConditionType { typedef struct Condition { ConditionType type; char *parameter; - bool negate; + + bool trigger:1; + bool negate:1; LIST_FIELDS(struct Condition, conditions); } Condition; -Condition* condition_new(ConditionType type, const char *parameter, bool negate); +Condition* condition_new(ConditionType type, const char *parameter, bool trigger, bool negate); void condition_free(Condition *c); void condition_free_list(Condition *c);