Search in sources :

Example 1 with HostPorts

use of com.xebia.vulnmanager.models.nmap.objects.HostPorts in project vulnmanager by xebia-research.

the class HostsParserHelper method getPortDetails.

private HostPorts getPortDetails(NodeList portsAttributes) {
    List<HostPorts.Port> hostPortsDetailsList = new ArrayList<>();
    List<HostPorts.ExtraPort> extraPortsDetailsList = new ArrayList<>();
    for (int x = 0; x < portsAttributes.getLength(); x++) {
        Node currentNode = portsAttributes.item(x);
        if (currentNode.getNodeName().equals(NMapConstants.PARSER_LITERAL_PORT)) {
            HostPorts.Port currentPort = getPort(currentNode);
            hostPortsDetailsList.add(currentPort);
        } else if (currentNode.getNodeName().equals(NMapConstants.PARSER_LITERAL_EXTRA_PORTS)) {
            HostPorts.ExtraPort extraPort = getExtraPorts(currentNode);
            extraPortsDetailsList.add(extraPort);
        }
    }
    return new HostPorts(hostPortsDetailsList, extraPortsDetailsList);
}
Also used : HostPorts(com.xebia.vulnmanager.models.nmap.objects.HostPorts) Node(org.w3c.dom.Node) ArrayList(java.util.ArrayList)

Example 2 with HostPorts

use of com.xebia.vulnmanager.models.nmap.objects.HostPorts in project vulnmanager by xebia-research.

the class HostsParserHelper method parseHostDataFromNodeList.

private Host parseHostDataFromNodeList(NodeList hostDataList) {
    StateDetails stateDetails = null;
    AddressDetails addressDetails = null;
    HostNamesDetails hostNamesDetails = null;
    HostPorts hostPorts = null;
    TimingData timingData = null;
    for (int x = 0; x < hostDataList.getLength(); x++) {
        Node currentHostDetail = hostDataList.item(x);
        NamedNodeMap currentChildAttributes = currentHostDetail.getAttributes();
        String currentNodeName = currentHostDetail.getNodeName();
        switch(currentNodeName) {
            case NMapConstants.PARSER_LITERAL_STATUS:
                stateDetails = getStatusDetails(currentChildAttributes);
                break;
            case NMapConstants.PARSER_LITERAL_ADDRESS:
                addressDetails = getAddressDetails(currentChildAttributes);
                break;
            case NMapConstants.PARSER_LITERAL_HOST_NAMES:
                hostNamesDetails = getHostNamesDetails(currentHostDetail.getChildNodes());
                break;
            case NMapConstants.PARSER_LITERAL_PORTS:
                hostPorts = getPortDetails(currentHostDetail.getChildNodes());
                break;
            case NMapConstants.PARSER_LITERAL_TIMES:
                timingData = getTimingData(currentChildAttributes);
                break;
            default:
                break;
        }
    }
    return new Host(stateDetails, addressDetails, hostNamesDetails, hostPorts, timingData);
}
Also used : HostPorts(com.xebia.vulnmanager.models.nmap.objects.HostPorts) NamedNodeMap(org.w3c.dom.NamedNodeMap) AddressDetails(com.xebia.vulnmanager.models.nmap.objects.AddressDetails) Node(org.w3c.dom.Node) StateDetails(com.xebia.vulnmanager.models.nmap.objects.StateDetails) Host(com.xebia.vulnmanager.models.nmap.objects.Host) HostNamesDetails(com.xebia.vulnmanager.models.nmap.objects.HostNamesDetails) TimingData(com.xebia.vulnmanager.models.nmap.objects.TimingData)

Aggregations

HostPorts (com.xebia.vulnmanager.models.nmap.objects.HostPorts)2 Node (org.w3c.dom.Node)2 AddressDetails (com.xebia.vulnmanager.models.nmap.objects.AddressDetails)1 Host (com.xebia.vulnmanager.models.nmap.objects.Host)1 HostNamesDetails (com.xebia.vulnmanager.models.nmap.objects.HostNamesDetails)1 StateDetails (com.xebia.vulnmanager.models.nmap.objects.StateDetails)1 TimingData (com.xebia.vulnmanager.models.nmap.objects.TimingData)1 ArrayList (java.util.ArrayList)1 NamedNodeMap (org.w3c.dom.NamedNodeMap)1