Skip to content
  • Luiz Capitulino's avatar
    monitor: New format for handlers argument types · 4d76d2ba
    Luiz Capitulino authored
    
    
    Current handlers argument types, as defined in qemu-monitor.hx file,
    are a sequence of chars where each one represents one argument type
    of the command handler. The number of chars is also used to know how
    many arguments a given handler accepts.
    
    This commit defines a new format, which makes mandatory the use of
    a name for each argument.
    
    For example, do_eject() command handler is currently defined as:
    
    { "eject", "-fB", do_eject, ... }
    
    With the new format it becomes:
    
    { "eject", "force:-f,filename:B", do_eject, ... }
    
    This way the Monitor will be capable of setting up a dictionary, using
    each argument's name as the key and the argument itself as the value.
    
    This commit also adds two new functions: key_get_info() and
    next_arg_type(), both are used to parse the new format.
    
    Currently key_get_info() consumes the 'key' part of the new format and
    discards it, this way the current parsing code is not affected by this
    change.
    
    Signed-off-by: default avatarLuiz Capitulino <lcapitulino@redhat.com>
    Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
    4d76d2ba