This repository has been archived on 2025-02-13. You can view files and clone it, but cannot push or open issues or pull requests.
lanScan2/to_xml.php
2023-04-13 15:46:47 +02:00

33 lines
886 B
PHP

<?php
$file = $argv[1];
$site = basename($file, ".yaml");
$conf = yaml_parse_file($file);
$xml = new SimpleXMLElement(<<<XML
<?xml version="1.0"?>
<?xml-stylesheet href='../results.xsl' type='text/xsl'?>
<lanScanConf scanpath="scans/$site.xml"/>
XML
);
foreach ($conf as $key => $value) {
if ($key == "site") {
$xml->addAttribute("site", $value);
} else {
$xmlGroup = $xml->addChild("group");
$xmlGroup->addAttribute("name", $key);
foreach($value as $hostaddress => $servicesList) {
$xmlHost = $xmlGroup->addChild("host");
$xmlHost->addAttribute("address", $hostaddress);
if ($servicesList) foreach ($servicesList as $service) {
$xmlService = $xmlHost->addChild("service");
$xmlService->addAttribute("name", $service);
}
}
}
}
echo $xml->asXML();
?>