check if console/channel PTY is null before attempting to open

Console/channel devices have their pty devices assigned when the emulator is
actually started. If time is spent in guest preparation, someone attempts
to open the console/channel, the libvirt crashes in virChrdevLockFilePath().
The patch attempts to fix the crash by adding a check before attempting to
open.

Signed-off-by: Shivaprasad G Bhat <sbhat@linux.vnet.ibm.com>
This commit is contained in:
Shivaprasad G Bhat 2015-05-31 21:25:59 +05:30 committed by Michal Privoznik
parent 81b19ce46a
commit eac9445e40

View File

@ -350,6 +350,11 @@ int virChrdevOpen(virChrdevsPtr devs,
switch (source->type) {
case VIR_DOMAIN_CHR_TYPE_PTY:
path = source->data.file.path;
if (!path) {
virReportError(VIR_ERR_OPERATION_FAILED, "%s",
_("PTY device is not yet assigned"));
return -1;
}
break;
case VIR_DOMAIN_CHR_TYPE_UNIX:
path = source->data.nix.path;