chiark / gitweb /
Support negated fstab options
[elogind.git] / src / shared / fstab-util.h
index 39ddb71..9f6b32e 100644 (file)
@@ -23,6 +23,7 @@
 
 #include <stdbool.h>
 #include <stddef.h>
+#include "macro.h"
 
 int fstab_filter_options(const char *opts, const char *names,
                          const char **namefound, char **value, char **filtered);
@@ -32,3 +33,16 @@ static inline bool fstab_test_option(const char *opts, const char *names) {
 }
 
 int fstab_find_pri(const char *options, int *ret);
+
+static inline bool fstab_test_yes_no_option(const char *opts, const char *yes_no) {
+        int r;
+        const char *opt;
+
+        /* If first name given is last, return 1.
+         * If second name given is last or neither is found, return 0. */
+
+        r = fstab_filter_options(opts, yes_no, &opt, NULL, NULL);
+        assert(r >= 0);
+
+        return opt == yes_no;
+}