diff options
author | Dr. David Alan Gilbert <dgilbert@redhat.com> | 2015-01-08 11:11:30 +0000 |
---|---|---|
committer | Amit Shah <amit.shah@redhat.com> | 2015-01-16 13:06:17 +0530 |
commit | e1a8c9b67fc97d293211773edcae9e8e2f3367ab (patch) | |
tree | be5d5c5c0e26818e16489bb0d12f0d3fc7cca5a5 /migration/qemu-file.c | |
parent | 8580b06498a5dffe554e7ac627726b1d7775c591 (diff) |
socket shutdown
Add QEMUFile interface to allow a socket to be 'shut down' - i.e. any
reads/writes will fail (and any blocking read/write will be woken).
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Amit Shah <amit.shah@redhat.com>
Signed-off-by: Amit Shah <amit.shah@redhat.com>
Diffstat (limited to 'migration/qemu-file.c')
-rw-r--r-- | migration/qemu-file.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/migration/qemu-file.c b/migration/qemu-file.c index a7f2a34430..edc283073a 100644 --- a/migration/qemu-file.c +++ b/migration/qemu-file.c @@ -30,6 +30,18 @@ #include "migration/qemu-file-internal.h" #include "trace.h" +/* + * Stop a file from being read/written - not all backing files can do this + * typically only sockets can. + */ +int qemu_file_shutdown(QEMUFile *f) +{ + if (!f->ops->shut_down) { + return -ENOSYS; + } + return f->ops->shut_down(f->opaque, true, true); +} + bool qemu_file_mode_is_not_valid(const char *mode) { if (mode == NULL || |