aboutsummaryrefslogtreecommitdiff
path: root/qga/commands-posix.c
diff options
context:
space:
mode:
authorLei Li <lilei@linux.vnet.ibm.com>2013-03-05 17:39:11 +0800
committerMichael Roth <mdroth@linux.vnet.ibm.com>2013-03-11 18:53:47 -0500
commit6912e6a94cb0a1d650271103efbc3ac2299e4fd0 (patch)
tree98107fcb7f066e3a24ffc5fdf566d67526f8e382 /qga/commands-posix.c
parent39097daf15c42243742667607d2cad2c9dc4f764 (diff)
qga: add guest-get-time command
Signed-off-by: Lei Li <lilei@linux.vnet.ibm.com> Reviewed-by: Eric Blake <eblake@redhat.com> Reviewed-by: Michael Roth <mdroth@linux.vnet.ibm.com> *added stub for w32 Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
Diffstat (limited to 'qga/commands-posix.c')
-rw-r--r--qga/commands-posix.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/qga/commands-posix.c b/qga/commands-posix.c
index 1c2aff356a..c83d26d0a5 100644
--- a/qga/commands-posix.c
+++ b/qga/commands-posix.c
@@ -119,6 +119,22 @@ void qmp_guest_shutdown(bool has_mode, const char *mode, Error **err)
/* succeded */
}
+int64_t qmp_guest_get_time(Error **errp)
+{
+ int ret;
+ qemu_timeval tq;
+ int64_t time_ns;
+
+ ret = qemu_gettimeofday(&tq);
+ if (ret < 0) {
+ error_setg_errno(errp, errno, "Failed to get time");
+ return -1;
+ }
+
+ time_ns = tq.tv_sec * 1000000000LL + tq.tv_usec * 1000;
+ return time_ns;
+}
+
typedef struct GuestFileHandle {
uint64_t id;
FILE *fh;