diff options
author | Greg Kurz <gkurz@linux.vnet.ibm.com> | 2016-02-05 09:33:26 +0100 |
---|---|---|
committer | Amit Shah <amit.shah@redhat.com> | 2016-02-05 19:09:51 +0530 |
commit | 15d61692da651fc79b3fc40050b986c5a73055c0 (patch) | |
tree | 1ed2c16f95bcc6d5268afde9ca2a8321930b47a6 /migration | |
parent | 1483e0d74dcfd183ff46dd63cc57e1fe8b775bf8 (diff) |
migration: fix bad string passed to error_report()
state->name does not contain a terminating '\0' and you may get:
Machine type received is 'pseries-2.3y�?' and local is 'pseries-2.4'
load of migration failed: Invalid argument
Let's add a precision modifier to fix this.
Reviewed-by: Amit Shah <amit.shah@redhat.com>
Signed-off-by: Greg Kurz <gkurz@linux.vnet.ibm.com>
Message-Id: <20160205083201.2201.76109.stgit@bahia.huguette.org>
Signed-off-by: Amit Shah <amit.shah@redhat.com>
Diffstat (limited to 'migration')
-rw-r--r-- | migration/savevm.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/migration/savevm.c b/migration/savevm.c index 00be5fed89..94f2894243 100644 --- a/migration/savevm.c +++ b/migration/savevm.c @@ -299,8 +299,8 @@ static int configuration_post_load(void *opaque, int version_id) const char *current_name = MACHINE_GET_CLASS(current_machine)->name; if (strncmp(state->name, current_name, state->len) != 0) { - error_report("Machine type received is '%s' and local is '%s'", - state->name, current_name); + error_report("Machine type received is '%.*s' and local is '%s'", + (int) state->len, state->name, current_name); return -EINVAL; } return 0; |