]> git.decadent.org.uk Git - nfs-utils.git/blobdiff - utils/mount/parse_opt.h
text-based mount command: make po_rightmost() work for N options
[nfs-utils.git] / utils / mount / parse_opt.h
index e7924ddf078ade1c0c337c00f96d66f468b89973..e132b1cd979961cb534608d5721cbf38fa21781a 100644 (file)
@@ -21,6 +21,9 @@
  *
  */
 
+#ifndef _NFS_UTILS_PARSE_OPT_H
+#define _NFS_UTILS_PARSE_OPT_H
+
 typedef enum {
        PO_FAILED = 0,
        PO_SUCCEEDED = 1,
@@ -29,14 +32,9 @@ typedef enum {
 typedef enum {
        PO_NOT_FOUND = 0,
        PO_FOUND = 1,
+       PO_BAD_VALUE = 2,
 } po_found_t;
 
-typedef enum {
-       PO_KEY1_RIGHTMOST = -1,
-       PO_NEITHER_FOUND = 0,
-       PO_KEY2_RIGHTMOST = 1,
-} po_rightmost_t;
-
 struct mount_options;
 
 struct mount_options * po_split(char *);
@@ -47,6 +45,11 @@ po_return_t          po_join(struct mount_options *, char **);
 po_return_t            po_append(struct mount_options *, char *);
 po_found_t             po_contains(struct mount_options *, char *);
 char *                 po_get(struct mount_options *, char *);
-po_rightmost_t         po_rightmost(struct mount_options *, char *, char *);
+po_found_t             po_get_numeric(struct mount_options *,
+                                       char *, long *);
+unsigned int           po_rightmost(struct mount_options *,
+                                       const char *keys[]);
 po_found_t             po_remove_all(struct mount_options *, char *);
 void                   po_destroy(struct mount_options *);
+
+#endif /* _NFS_UTILS_PARSE_OPT_H */