summaryrefslogtreecommitdiff
path: root/options.c
diff options
context:
space:
mode:
authorJens Axboe <jens.axboe@oracle.com>2010-04-13 10:38:16 +0200
committerJens Axboe <jens.axboe@oracle.com>2010-04-13 10:38:16 +0200
commit17af15d46a9bfa3109321ecddfd4a649e36ffac9 (patch)
tree58cfba78ff44776258f8f5b41ab6090ae2778115 /options.c
parentd091d099aa867596745f2fa0d58631a14a746520 (diff)
downloadfio-17af15d46a9bfa3109321ecddfd4a649e36ffac9.tar.gz
Make sure that alias names are also valid on the command line
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Diffstat (limited to 'options.c')
-rw-r--r--options.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/options.c b/options.c
index 994f2a19..2369191c 100644
--- a/options.c
+++ b/options.c
@@ -1841,9 +1841,10 @@ static struct fio_option options[FIO_MAX_OPTS] = {
},
};
-static void add_to_lopt(struct option *lopt, struct fio_option *o)
+static void add_to_lopt(struct option *lopt, struct fio_option *o,
+ const char *name)
{
- lopt->name = (char *) o->name;
+ lopt->name = (char *) name;
lopt->val = FIO_GETOPT_JOB;
if (o->type == FIO_OPT_STR_SET)
lopt->has_arg = no_argument;
@@ -1864,7 +1865,11 @@ void fio_options_dup_and_init(struct option *long_options)
o = &options[0];
while (o->name) {
- add_to_lopt(&long_options[i], o);
+ add_to_lopt(&long_options[i], o, o->name);
+ if (o->alias) {
+ i++;
+ add_to_lopt(&long_options[i], o, o->alias);
+ }
i++;
o++;