compare: move test_order() → compare-operator.[ch]
This commit is contained in:
@@ -36,3 +36,30 @@ CompareOperator parse_compare_operator(const char **s, bool allow_fnmatch) {
|
||||
|
||||
return _COMPARE_OPERATOR_INVALID;
|
||||
}
|
||||
|
||||
int test_order(int k, CompareOperator op) {
|
||||
|
||||
switch (op) {
|
||||
|
||||
case COMPARE_LOWER:
|
||||
return k < 0;
|
||||
|
||||
case COMPARE_LOWER_OR_EQUAL:
|
||||
return k <= 0;
|
||||
|
||||
case COMPARE_EQUAL:
|
||||
return k == 0;
|
||||
|
||||
case COMPARE_UNEQUAL:
|
||||
return k != 0;
|
||||
|
||||
case COMPARE_GREATER_OR_EQUAL:
|
||||
return k >= 0;
|
||||
|
||||
case COMPARE_GREATER:
|
||||
return k > 0;
|
||||
|
||||
default:
|
||||
return -EINVAL;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -37,3 +37,5 @@ static inline bool COMPARE_OPERATOR_IS_ORDER(CompareOperator c) {
|
||||
}
|
||||
|
||||
CompareOperator parse_compare_operator(const char **s, bool allow_fnmatch);
|
||||
|
||||
int test_order(int k, CompareOperator op);
|
||||
|
||||
@@ -183,33 +183,6 @@ static int condition_test_credential(Condition *c, char **env) {
|
||||
return false;
|
||||
}
|
||||
|
||||
static bool test_order(int k, CompareOperator p) {
|
||||
switch (p) {
|
||||
|
||||
case COMPARE_LOWER:
|
||||
return k < 0;
|
||||
|
||||
case COMPARE_LOWER_OR_EQUAL:
|
||||
return k <= 0;
|
||||
|
||||
case COMPARE_EQUAL:
|
||||
return k == 0;
|
||||
|
||||
case COMPARE_UNEQUAL:
|
||||
return k != 0;
|
||||
|
||||
case COMPARE_GREATER_OR_EQUAL:
|
||||
return k >= 0;
|
||||
|
||||
case COMPARE_GREATER:
|
||||
return k > 0;
|
||||
|
||||
default:
|
||||
assert_not_reached();
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
static int condition_test_kernel_version(Condition *c, char **env) {
|
||||
CompareOperator operator;
|
||||
struct utsname u;
|
||||
|
||||
Reference in New Issue
Block a user