# HG changeset patch
# User Heidi Eckhart <heidieck(a)linux.vnet.ibm.com>
# Date 1201696056 -3600
# Node ID 06f194fc249857f9d523583873065d3417ea5784
# Parent 0a2eafae729edda6f4cd12171fd28d7fbf5b1c16
Device: SystemCreationClassName not set in key properties
Signed-off-by: Heidi Eckhart <heidieck(a)linux.vnet.ibm.com>
diff -r 0a2eafae729e -r 06f194fc2498 src/Virt_Device.c
--- a/src/Virt_Device.c Wed Jan 30 12:58:24 2008 +0100
+++ b/src/Virt_Device.c Wed Jan 30 13:27:36 2008 +0100
@@ -84,15 +84,6 @@ static int net_set_hwaddr(CMPIInstance *
return 1;
}
-static int net_set_systemname(CMPIInstance *instance,
- const char *domain)
-{
- CMSetProperty(instance, "SystemName",
- (CMPIValue *)domain, CMPI_chars);
-
- return 1;
-}
-
static CMPIInstance *net_instance(const CMPIBroker *broker,
struct net_device *dev,
const virDomainPtr dom,
@@ -111,9 +102,6 @@ static CMPIInstance *net_instance(const
return NULL;
if (!net_set_hwaddr(inst, dev, broker))
- return NULL;
-
- if (!net_set_systemname(inst, virDomainGetName(dom)))
return NULL;
return inst;
@@ -224,8 +212,19 @@ static int device_set_systemname(CMPIIns
static int device_set_systemname(CMPIInstance *instance,
const virDomainPtr dom)
{
+ virConnectPtr conn = NULL;
+
CMSetProperty(instance, "SystemName",
(CMPIValue *)virDomainGetName(dom), CMPI_chars);
+
+ conn = virDomainGetConnect(dom);
+ if (conn) {
+ char *sccn = NULL;
+ sccn = get_typed_class(pfx_from_conn(conn), "ComputerSystem");
+ CMSetProperty(instance, "SystemCreationClassName",
+ (CMPIValue *)sccn, CMPI_chars);
+ free(sccn);
+ }
return 1;
}