@@ -92,6 +92,7 @@ InventoryFormat::Build(bool noSoftware)
92
92
fContent ->LinkEndChild (versionClient);
93
93
_AddAccountInfo ();
94
94
_AddBIOSInfo ();
95
+ _AddOperatingSystemInfo ();
95
96
_AddCPUsInfo ();
96
97
_AddStoragesInfo ();
97
98
_AddDrivesInfo ();
@@ -445,6 +446,54 @@ InventoryFormat::_AddBIOSInfo()
445
446
}
446
447
447
448
449
+ void
450
+ InventoryFormat::_AddOperatingSystemInfo ()
451
+ {
452
+ tinyxml2::XMLElement* os = fDocument ->NewElement (" OPERATINGSYSTEM" );
453
+ fContent ->LinkEndChild (os);
454
+
455
+ tinyxml2::XMLElement* arch = fDocument ->NewElement (" ARCH" );
456
+ arch->LinkEndChild (fDocument ->NewText (gComponents [" OS" ].fields [" architecture" ].c_str ()));
457
+ os->LinkEndChild (arch);
458
+
459
+ tinyxml2::XMLElement* name = fDocument ->NewElement (" NAME" );
460
+ name->LinkEndChild (fDocument ->NewText (gComponents [" OS" ].fields [" description" ].c_str ()));
461
+ os->LinkEndChild (name);
462
+
463
+ tinyxml2::XMLElement* kernelName = fDocument ->NewElement (" KERNEL_NAME" );
464
+ kernelName->LinkEndChild (fDocument ->NewText (gComponents [" OS" ].fields [" kernelname" ].c_str ()));
465
+ os->LinkEndChild (kernelName);
466
+
467
+ tinyxml2::XMLElement* kernelVersion = fDocument ->NewElement (" KERNEL_VERSION" );
468
+ kernelVersion->LinkEndChild (fDocument ->NewText (gComponents [" OS" ].fields [" release" ].c_str ()));
469
+ os->LinkEndChild (kernelVersion);
470
+
471
+ tinyxml2::XMLElement* dnsDomain = fDocument ->NewElement (" DNS_DOMAIN" );
472
+ dnsDomain->LinkEndChild (fDocument ->NewText (gComponents [" OS" ].fields [" domainname" ].c_str ()));
473
+ os->LinkEndChild (dnsDomain);
474
+
475
+ tinyxml2::XMLElement* fqdn = fDocument ->NewElement (" FQDN" );
476
+ std::string fqdnString;
477
+ fqdnString.append (gComponents [" OS" ].fields [" hostname" ]).append (gComponents [" OS" ].fields [" domainname" ]);
478
+ fqdn->LinkEndChild (fDocument ->NewText (fqdnString.c_str ()));
479
+ os->LinkEndChild (fqdn);
480
+
481
+ #if 0
482
+ // TODO: Impelement these
483
+ <BOOT_TIME>2024-03-26 07:58:04</BOOT_TIME>
484
+ <FULL_NAME>
485
+ <HOSTID>
486
+ <INSTALL_DATE>
487
+ <NAME>
488
+ <SSH_KEY>
489
+ <TIMEZONE>
490
+ <NAME>Europe/Rome</NAME>
491
+ <OFFSET>+0100</OFFSET>
492
+ </TIMEZONE>
493
+ #endif
494
+ }
495
+
496
+
448
497
void
449
498
InventoryFormat::_AddCPUsInfo ()
450
499
{
0 commit comments