Skip to content
Snippets Groups Projects
  • Peter Maydell's avatar
    5b18a6bf
    chardev: Allow setting file chardev input file on the command line · 5b18a6bf
    Peter Maydell authored
    
    Our 'file' chardev backend supports both "output from this chardev
    is written to a file" and "input from this chardev should be read
    from a file" (except on Windows). However, you can only set up
    the input file if you're using the QMP interface -- there is no
    command line syntax to do it.
    
    Add command line syntax to allow specifying an input file
    as well as an output file, using a new 'input-path' suboption.
    
    The specific use case I have is that I'd like to be able to
    feed fuzzer reproducer input into qtest without having to use
    '-qtest stdio' and put the input onto stdin. Being able to
    use a file chardev like this:
     -chardev file,id=repro,path=/dev/null,input-path=repro.txt -qtest chardev:repro
    means that stdio is free for use by gdb.
    
    Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
    Message-Id: <20230413150724.404304-3-peter.maydell@linaro.org>
    Reviewed-by: default avatarPhilippe Mathieu-Daudé <philmd@linaro.org>
    Reviewed-by: default avatarMarc-André Lureau <marcandre.lureau@redhat.com>
    [thuth: Replace "input-file=" typo with "input-path="]
    Signed-off-by: default avatarThomas Huth <thuth@redhat.com>
    5b18a6bf
    History
    chardev: Allow setting file chardev input file on the command line
    Peter Maydell authored
    
    Our 'file' chardev backend supports both "output from this chardev
    is written to a file" and "input from this chardev should be read
    from a file" (except on Windows). However, you can only set up
    the input file if you're using the QMP interface -- there is no
    command line syntax to do it.
    
    Add command line syntax to allow specifying an input file
    as well as an output file, using a new 'input-path' suboption.
    
    The specific use case I have is that I'd like to be able to
    feed fuzzer reproducer input into qtest without having to use
    '-qtest stdio' and put the input onto stdin. Being able to
    use a file chardev like this:
     -chardev file,id=repro,path=/dev/null,input-path=repro.txt -qtest chardev:repro
    means that stdio is free for use by gdb.
    
    Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
    Message-Id: <20230413150724.404304-3-peter.maydell@linaro.org>
    Reviewed-by: default avatarPhilippe Mathieu-Daudé <philmd@linaro.org>
    Reviewed-by: default avatarMarc-André Lureau <marcandre.lureau@redhat.com>
    [thuth: Replace "input-file=" typo with "input-path="]
    Signed-off-by: default avatarThomas Huth <thuth@redhat.com>