summaryrefslogtreecommitdiffstats
path: root/arguments.c
diff options
context:
space:
mode:
authornicm <nicm>2021-08-20 18:59:53 +0000
committernicm <nicm>2021-08-20 18:59:53 +0000
commit90dd474c3ea8bf10bde6ee15eaaf9f3af3fb46f6 (patch)
treed7a208a65eaa5d17da7f7b764cfcf94ebfe01366 /arguments.c
parent6cbc83c6a64f272575aac1ee32cc0a0b1cb75c7b (diff)
Expose args_value struct (will be needed soon) and add some missing frees.
Diffstat (limited to 'arguments.c')
-rw-r--r--arguments.c25
1 files changed, 6 insertions, 19 deletions
diff --git a/arguments.c b/arguments.c
index 91141b99..142f86d8 100644
--- a/arguments.c
+++ b/arguments.c
@@ -29,10 +29,6 @@
* Manipulate command arguments.
*/
-struct args_value {
- char *value;
- TAILQ_ENTRY(args_value) entry;
-};
TAILQ_HEAD(args_values, args_value);
struct args_entry {
@@ -335,30 +331,21 @@ args_next(struct args_entry **entry)
}
/* Get first value in argument. */
-const char *
-args_first_value(struct args *args, u_char flag, struct args_value **value)
+struct args_value *
+args_first_value(struct args *args, u_char flag)
{
struct args_entry *entry;
if ((entry = args_find(args, flag)) == NULL)
return (NULL);
-
- *value = TAILQ_FIRST(&entry->values);
- if (*value == NULL)
- return (NULL);
- return ((*value)->value);
+ return (TAILQ_FIRST(&entry->values));
}
/* Get next value in argument. */
-const char *
-args_next_value(struct args_value **value)
+struct args_value *
+args_next_value(struct args_value *value)
{
- if (*value == NULL)
- return (NULL);
- *value = TAILQ_NEXT(*value, entry);
- if (*value == NULL)
- return (NULL);
- return ((*value)->value);
+ return (TAILQ_NEXT(value, entry));
}
/* Convert an argument value to a number. */