Index: /branch/joao/umitCore/NmapParser.py
===================================================================
--- /branch/joao/umitCore/NmapParser.py (revision 449)
+++ /branch/joao/umitCore/NmapParser.py (revision 834)
@@ -362,5 +362,5 @@
                 return host.comment
         else:
-            raise Exception("Comment could not be saved! Host not found at NmapParser!")
+            raise Exception("Comment could not be loaded! Host not found at NmapParser!")
 
     def get_profile(self):
@@ -862,4 +862,12 @@
     def _parse_host_ipidsequence(self, attrs):
         self.host_info.set_ipidsequence(self._parsing(attrs, ['class', 'values']))
+
+    # NOTE: Added by ignotus
+    def _parse_host_trace(self, attrs):
+        self.host_info.set_trace(self._parsing(attrs, ['port', 'proto']))
+
+    # NOTE: Added by ignotus
+    def _parse_host_trace_hop(self, attrs):
+        self.list_hop.append(self._parsing(attrs, ['ttl', 'rtt', 'ipaddr', 'host']))
 
     def startElement(self, name, attrs):
@@ -923,4 +931,14 @@
             self._parse_host_ipidsequence(attrs)
 
+        # Creating a traceroute condition
+        # NOTE: Added by ignotus
+        elif self.in_host and name == "trace":
+            self.in_trace = True
+            self.list_hop = []
+            self._parse_host_trace(attrs)
+
+        elif self.in_trace and name == "hop":
+            self._parse_host_trace_hop(attrs)
+
 
     def endElement(self, name):
@@ -949,4 +967,13 @@
             del(self.list_portused)
             del(self.list_osclass)
+
+        # Creating a traceroute condition
+        # NOTE: Added by ignotus
+        elif self.in_host and name == "trace":
+            self.in_trace = False
+            self.host_info.set_hops(self.list_hop)
+
+            del(self.list_hop)
+
 
     def write_xml(self, xml_file):
