util/parmlist: Add some more comments.
authorJelmer Vernooij <jelmer@samba.org>
Sun, 27 Sep 2009 12:13:38 +0000 (14:13 +0200)
committerJelmer Vernooij <jelmer@samba.org>
Sun, 27 Sep 2009 12:13:38 +0000 (14:13 +0200)
lib/util/parmlist.c
lib/util/parmlist.h

index 4ab660197d04e85a39bd7297d48d446ea54a4d91..ffcd19a4ab6adaf98c4741d32706fb918b5f85f1 100644 (file)
@@ -41,7 +41,24 @@ int parmlist_get_int(struct parmlist *ctx, const char *name, int default_v)
        return default_v;
 }
 
-const char *parmlist_get_string(struct parmlist *ctx, const char *name, const char *default_v)
+bool parmlist_get_bool(struct parmlist *ctx, const char *name, bool default_v)
+{
+       struct parmlist_entry *p = parmlist_get(ctx, name);
+       bool ret;
+
+       if (p == NULL)
+               return default_v;
+
+       if (!set_boolean(p->value, &ret)) {
+               DEBUG(0,("lp_bool(%s): value is not boolean!\n", p->value));
+               return default_v;
+       }
+
+       return ret;
+}
+
+const char *parmlist_get_string(struct parmlist *ctx, const char *name, 
+                                                               const char *default_v)
 {
        struct parmlist_entry *p = parmlist_get(ctx, name);
 
@@ -51,7 +68,8 @@ const char *parmlist_get_string(struct parmlist *ctx, const char *name, const ch
        return p->value;
 }
 
-const char **parmlist_get_string_list(struct parmlist *ctx, const char *name, const char *separator)
+const char **parmlist_get_string_list(struct parmlist *ctx, const char *name, 
+                                                                         const char *separator)
 {
        struct parmlist_entry *p = parmlist_get(ctx, name);
 
index 0fa518d1c44fe661a16f63a361c31ee6d9791607..47d2f89d63da8977d17b760cc9ab2de227bf2a63 100644 (file)
@@ -31,9 +31,23 @@ struct parmlist {
        struct parmlist_entry *entries;
 };
 
+/** Retrieve an integer from a parameter list. If not found, return default_v. */
 int parmlist_get_int(struct parmlist *ctx, const char *name, int default_v);
-const char *parmlist_get_string(struct parmlist *ctx, const char *name, const char *default_v);
+
+/** Retrieve a string from a parameter list. If not found, return default_v. */
+const char *parmlist_get_string(struct parmlist *ctx, const char *name, 
+                                                               const char *default_v);
+
+/** Retrieve the struct for an entry in a parmlist. */
 struct parmlist_entry *parmlist_get(struct parmlist *ctx, const char *name);
-const char **parmlist_get_string_list(struct parmlist *ctx, const char *name, const char *separator);
+
+/** Retrieve a string list from a parameter list. 
+ * separator can contain characters to consider separators or can be 
+ * NULL for the default set. */
+const char **parmlist_get_string_list(struct parmlist *ctx, const char *name, 
+                                                                         const char *separator);
+
+/** Retrieve boolean from a parameter list. If not set, return default_v. */
+bool parmlist_get_bool(struct parmlist *ctx, const char *name, bool default_v);
 
 #endif /* _PARMLIST_H */