Home | History | Annotate | Download | only in qemu

Lines Matching refs:opt

492     QemuOpt *opt;
494 QTAILQ_FOREACH_REVERSE(opt, &opts->head, QemuOptHead, next) {
495 if (strcmp(opt->name, name) != 0)
497 return opt;
504 QemuOpt *opt = qemu_opt_find(opts, name);
505 return opt ? opt->str : NULL;
510 QemuOpt *opt = qemu_opt_find(opts, name);
512 if (opt == NULL)
514 assert(opt->desc && opt->desc->type == QEMU_OPT_BOOL);
515 return opt->value.boolean;
520 QemuOpt *opt = qemu_opt_find(opts, name);
522 if (opt == NULL)
524 assert(opt->desc && opt->desc->type == QEMU_OPT_NUMBER);
525 return opt->value.uint;
530 QemuOpt *opt = qemu_opt_find(opts, name);
532 if (opt == NULL)
534 assert(opt->desc && opt->desc->type == QEMU_OPT_SIZE);
535 return opt->value.uint;
538 static int qemu_opt_parse(QemuOpt *opt)
540 if (opt->desc == NULL)
542 switch (opt->desc->type) {
547 return parse_option_bool(opt->name, opt->str, &opt->value.boolean);
549 return parse_option_number(opt->name, opt->str, &opt->value.uint);
551 return parse_option_size(opt->name, opt->str, &opt->value.uint);
557 static void qemu_opt_del(QemuOpt *opt)
559 QTAILQ_REMOVE(&opt->opts->head, opt, next);
560 qemu_free((/* !const */ char*)opt->name);
561 qemu_free((/* !const */ char*)opt->str);
562 qemu_free(opt);
567 QemuOpt *opt;
586 opt = qemu_mallocz(sizeof(*opt));
587 opt->name = qemu_strdup(name);
588 opt->opts = opts;
589 QTAILQ_INSERT_TAIL(&opts->head, opt, next);
591 opt->desc = desc+i;
594 opt->str = qemu_strdup(value);
596 if (qemu_opt_parse(opt) < 0) {
597 fprintf(stderr, "Failed to parse \"%s\" for \"%s.%s\"\n", opt->str,
598 opts->list->name, opt->name);
599 qemu_opt_del(opt);
608 QemuOpt *opt;
611 QTAILQ_FOREACH(opt, &opts->head, next) {
612 rc = func(opt->name, opt->str, opaque);
680 QemuOpt *opt;
683 opt = QTAILQ_FIRST(&opts->head);
684 if (opt == NULL)
686 qemu_opt_del(opt);
695 QemuOpt *opt;
699 QTAILQ_FOREACH(opt, &opts->head, next) {
700 fprintf(stderr, " %s=\"%s\"", opt->name, opt->str);
782 QemuOpt *opt;
786 QTAILQ_FOREACH(opt, &opts->head, next) {
790 if (strcmp(desc[i].name, opt->name) == 0) {
796 opt->name, opts->list->name);
800 opt->desc = &desc[i];
802 if (qemu_opt_parse(opt) < 0) {