qemu

FORK: QEMU emulator
git clone https://git.neptards.moe/neptards/qemu.git
Log | Files | Refs | Submodules | LICENSE

qemu-print.c (1443B)


      1 /*
      2  * Print to stream or current monitor
      3  *
      4  * Copyright (C) 2019 Red Hat Inc.
      5  *
      6  * Authors:
      7  *  Markus Armbruster <armbru@redhat.com>,
      8  *
      9  * This work is licensed under the terms of the GNU GPL, version 2 or later.
     10  * See the COPYING file in the top-level directory.
     11  */
     12 
     13 #include "qemu/osdep.h"
     14 #include "monitor/monitor.h"
     15 #include "qemu/qemu-print.h"
     16 
     17 /*
     18  * Print like vprintf().
     19  * Print to current monitor if we have one, else to stdout.
     20  */
     21 int qemu_vprintf(const char *fmt, va_list ap)
     22 {
     23     Monitor *cur_mon = monitor_cur();
     24     if (cur_mon) {
     25         return monitor_vprintf(cur_mon, fmt, ap);
     26     }
     27     return vprintf(fmt, ap);
     28 }
     29 
     30 /*
     31  * Print like printf().
     32  * Print to current monitor if we have one, else to stdout.
     33  */
     34 int qemu_printf(const char *fmt, ...)
     35 {
     36     va_list ap;
     37     int ret;
     38 
     39     va_start(ap, fmt);
     40     ret = qemu_vprintf(fmt, ap);
     41     va_end(ap);
     42     return ret;
     43 }
     44 
     45 /*
     46  * Print like vfprintf()
     47  * Print to @stream if non-null, else to current monitor.
     48  */
     49 int qemu_vfprintf(FILE *stream, const char *fmt, va_list ap)
     50 {
     51     if (!stream) {
     52         return monitor_vprintf(monitor_cur(), fmt, ap);
     53     }
     54     return vfprintf(stream, fmt, ap);
     55 }
     56 
     57 /*
     58  * Print like fprintf().
     59  * Print to @stream if non-null, else to current monitor.
     60  */
     61 int qemu_fprintf(FILE *stream, const char *fmt, ...)
     62 {
     63     va_list ap;
     64     int ret;
     65 
     66     va_start(ap, fmt);
     67     ret = qemu_vfprintf(stream, fmt, ap);
     68     va_end(ap);
     69     return ret;
     70 }