summaryrefslogtreecommitdiffstats
path: root/src/sysinfolibsysfs.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/sysinfolibsysfs.cpp')
-rw-r--r--src/sysinfolibsysfs.cpp55
1 files changed, 55 insertions, 0 deletions
diff --git a/src/sysinfolibsysfs.cpp b/src/sysinfolibsysfs.cpp
index 71d0aec..d9bbac8 100644
--- a/src/sysinfolibsysfs.cpp
+++ b/src/sysinfolibsysfs.cpp
@@ -39,6 +39,61 @@ void SysInfoLibsysfs::getInfoAboutNetworkInterface()
sysfs_close_class_device(class_device);
}
+void SysInfoLibsysfs::getInfoMbSerial()
+{
+ QJson::Serializer serializer;
+ QVariantList listOfDevices;
+
+ struct sysfs_class_device *class_device = sysfs_open_class_device("dmi","id");
+ struct dlist *attrlist = sysfs_get_classdev_attributes(class_device);
+ struct sysfs_device *device = sysfs_get_classdev_device(class_device);
+
+ if(attrlist != NULL){
+ struct sysfs_attribute *attr = NULL;
+ QVariantList list;
+ dlist_for_each_data(attrlist, attr, struct sysfs_attribute) {
+ QVariantMap a;
+ if(QString(attr->name) == QString("board_serial")){
+ a.insert("name", QString(attr->name));
+ a.insert("value", QString(attr->value));
+ a.insert("len", QString(attr->len));
+ a.insert("path", QString(attr->path));
+ a.insert("method", QString(attr->method));
+ list << a;
+ }
+ }
+ QByteArray json = serializer.serialize(list);
+
+ qDebug() << json;
+ return;
+ }
+ qDebug() << "attrlist is null!";
+ sysfs_close_class_device(class_device);
+}
+
+QString SysInfoLibsysfs::getInfoMainboardSerial(){
+ QString out = "";
+ struct sysfs_class_device *class_device = sysfs_open_class_device("dmi","id");
+ struct dlist *attrlist = sysfs_get_classdev_attributes(class_device);
+ struct sysfs_device *device = sysfs_get_classdev_device(class_device);
+
+ if(attrlist != NULL){
+ struct sysfs_attribute *attr = NULL;
+ dlist_for_each_data(attrlist, attr, struct sysfs_attribute) {
+ QVariantMap a;
+ if(QString(attr->name) == QString("board_serial")){
+ out = QString(attr->value);
+ }
+ }
+
+ qDebug() << out;
+ return out;
+ }
+ qDebug() << "attrlist is null!";
+ sysfs_close_class_device(class_device);
+ return null;
+}
+
void SysInfoLibsysfs::getInfoAboutClassNet()
{
QJson::Serializer serializer;