void spice_graphHlpThread::run() { if ( NULL==ptr_ConnPtr || NULL==*ptr_ConnPtr ) { emit ptrIsNull(); return; }; if ( virConnectRef(*ptr_ConnPtr)<0 ) { sendConnErrors(); return; }; QStringList nets; virNetworkPtr *networks = NULL; unsigned int flags = VIR_CONNECT_LIST_NETWORKS_ACTIVE | VIR_CONNECT_LIST_NETWORKS_INACTIVE; int ret = virConnectListAllNetworks(*ptr_ConnPtr, &networks, flags); if ( ret<0 ) { sendConnErrors(); } else { // therefore correctly to use for() command, because networks[0] can not exist. for (int i = 0; i < ret; i++) { nets.append( virNetworkGetName(networks[i]) ); virNetworkFree(networks[i]); }; if (networks) free(networks); }; //int devs = virNodeNumOfDevices(ptr_ConnPtr, NULL, 0); if ( virConnectClose(*ptr_ConnPtr)<0 ) { sendConnErrors(); }; emit result(nets); }
void pci_hostHlpThread::run() { if ( NULL==ptr_ConnPtr || NULL==*ptr_ConnPtr ) { emit ptrIsNull(); return; }; if ( virConnectRef(*ptr_ConnPtr)<0 ) { sendConnErrors(); return; }; QStringList devices; virNodeDevice **nodeDevices = NULL; unsigned int flags = VIR_CONNECT_LIST_NODE_DEVICES_CAP_PCI_DEV; int ret = virConnectListAllNodeDevices(*ptr_ConnPtr, &nodeDevices, flags); if ( ret<0 ) { sendConnErrors(); } else { // therefore correctly to use for() command, because networks[0] can not exist. for (int i = 0; i < ret; i++) { devices.append( QString("%1\n") // flags: extra flags; not used yet, // so callers should always pass 0 .arg(virNodeDeviceGetXMLDesc(nodeDevices[i], 0))); virNodeDeviceFree(nodeDevices[i]); }; if (nodeDevices) free(nodeDevices); }; //int devs = virNodeNumOfDevices(ptr_ConnPtr, NULL, 0); if ( virConnectClose(*ptr_ConnPtr)<0 ) sendConnErrors(); emit result(devices); }
void SetDisksDataThread::run() { if ( nullptr==ptr_ConnPtr || nullptr==*ptr_ConnPtr ) { emit ptrIsNull(); return; }; // NOTE: currConnName == domainName virDomainPtr domain = virDomainLookupByName( *ptr_ConnPtr, currConnName.toUtf8().data()); if ( nullptr!=domain ) { char *xmlDesc = virDomainGetXMLDesc(domain, 0); virDomainFree(domain); if ( nullptr!=xmlDesc ) { QDomDocument doc; doc.setContent(QString(xmlDesc)); free(xmlDesc); QDomElement _devices = doc .firstChildElement("domain") .firstChildElement("devices"); QDomElement _disk = _devices .firstChildElement("disk"); while ( !_disk.isNull() ) { emit diskData(_disk); _disk = _disk.nextSiblingElement("disk"); }; }; } else sendConnErrors(); }
HostDevice_Edit::HostDevice_Edit( QWidget *parent, virConnectPtr *connPtrPtr) : HostDevice(parent, connPtrPtr) { info->setVisible(false); infoEdit = new QStackedWidget(this); QString connType; if ( NULL!=ptr_ConnPtr && NULL!=*ptr_ConnPtr ) { connType = QString(virConnectGetType(*ptr_ConnPtr)).toLower(); } else emit ptrIsNull(); if ( connType=="qemu" ) { infoEdit->addWidget(new USB_Host_Device_Edit(this)); infoEdit->addWidget(new PCI_Host_Device_Edit(this)); infoEdit->addWidget(new SCSI_Host_Device_Edit(this, ptr_ConnPtr)); } else if ( connType=="lxc" ) { infoEdit->addWidget(new USB_Host_Device_Edit(this)); infoEdit->addWidget(new BCh_Host_Device_Edit(this)); }; commonLayout->insertWidget(2, infoEdit); connect(type, SIGNAL(currentIndexChanged(int)), infoEdit, SLOT(setCurrentIndex(int))); for (int i=0; i<infoEdit->count(); i++) { connect(infoEdit->widget(i), SIGNAL(dataChanged()), this, SLOT(stateChanged())); }; }
void SnapshotActionDialog::setDomainSnapshots() { if ( nullptr==ptr_ConnPtr || nullptr==*ptr_ConnPtr ) { emit ptrIsNull(); return; }; domain = virDomainLookupByName( *ptr_ConnPtr, domName.toUtf8().data()); int namesLen = virDomainSnapshotNum( domain, VIR_DOMAIN_SNAPSHOT_LIST_ROOTS); if ( namesLen>0 ) { char *names; int ret = virDomainSnapshotListNames( domain, &names, namesLen, VIR_DOMAIN_SNAPSHOT_LIST_ROOTS); if ( ret>0 ) { for (int i = 0; i<ret; i++) { addSnapshotChild( i, snapshotTree->rootIndex(), (&names)[i]); }; }; }; }
void qwdHelpThread::run() { if ( nullptr==ptr_ConnPtr || nullptr==*ptr_ConnPtr ) { emit ptrIsNull(); return; }; if ( virConnectRef(*ptr_ConnPtr)<0 ) { sendConnErrors(); return; }; connType = QString::fromUtf8( virConnectGetType(*ptr_ConnPtr)) .toLower(); if ( virConnectClose(*ptr_ConnPtr)<0 ) sendConnErrors(); }