[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

[libvirt] [PATCH 00/13] Add TLS support for migration



Patches 1, 3 -> 9 are primarily quite a bit of code motion in order to allow
reuse of the "core" of the chardev TLS code.

Theoretically speaking of course, these patches should work - I don't
have a TLS and migration environment to test with, so between following
the qemu command model on Daniel's blog and prior experience with the
chardev TLS would 

I added the saving of a flag to the private qemu domain state, although
I'm not 100% sure it was necessary. At one time I created the source TLS
objects during the Begin phase, but later decided to wait until just
before the migration is run. I think the main reason to have the flag
would be a restart of libvirtd to let 'something' know migration using
TLS was configured. I think it may only be "necessary" in order to
repopulate the migSecinfo after libvirtd restart, but it's not entirely
clear. By the time I started thinking more about while writing this cover
letter it was too late to just remove.

Also rather than create the destination host TLS objects on the fly,
I modified the command line generation. That model could change to adding
the TLS objects once the destination is started and before the params are
set for the migration.

This 'model' is also going to be used for the NBD, but I figured I'd get
this posted now since it was already too long of a series.

John Ferlan (13):
  qemu: Create #define for TLS configuration setup.
  conf: Introduce migrate_tls_x509_cert_dir
  qemu: Rename qemuAliasTLSObjFromChardevAlias
  qemu: Introduce qemuDomainSecretMigrate{Prepare|Destroy}
  qemu: Refactor hotplug to introduce qemuDomain{Add|Del}TLSObjects
  qemu: Refactor qemuDomainGetChardevTLSObjects to converge code
  qemu: Move qemuDomainSecretChardevPrepare call
  qemu: Move qemuDomainPrepareChardevSourceTLS call
  qemu: Introduce qemuDomainGetTLSObjects
  qemu: Add TLS params to _qemuMonitorMigrationParams
  Add new migration flag VIR_MIGRATE_TLS
  qemu: Set up the migrate TLS objects for target
  qemu: Set up the migration TLS objects for source

 include/libvirt/libvirt-domain.h   |   8 +
 src/qemu/libvirtd_qemu.aug         |   6 +
 src/qemu/qemu.conf                 |  39 +++++
 src/qemu/qemu_alias.c              |   8 +-
 src/qemu/qemu_alias.h              |   2 +-
 src/qemu/qemu_command.c            |  33 +++-
 src/qemu/qemu_command.h            |   4 +-
 src/qemu/qemu_conf.c               |  43 +++--
 src/qemu/qemu_conf.h               |   5 +
 src/qemu/qemu_domain.c             |  78 ++++++++++
 src/qemu/qemu_domain.h             |  89 ++++++-----
 src/qemu/qemu_hotplug.c            | 312 ++++++++++++++++++++-----------------
 src/qemu/qemu_hotplug.h            |  24 +++
 src/qemu/qemu_migration.c          | 135 ++++++++++++++++
 src/qemu/qemu_migration.h          |   1 +
 src/qemu/qemu_monitor.c            |  12 +-
 src/qemu/qemu_monitor.h            |   7 +
 src/qemu/qemu_monitor_json.c       |  13 +-
 src/qemu/qemu_process.c            |   4 +
 src/qemu/test_libvirtd_qemu.aug.in |   4 +
 tools/virsh-domain.c               |   7 +
 21 files changed, 625 insertions(+), 209 deletions(-)

-- 
2.9.3


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]