'Expects to find
\'<os>..<osclass type="general purpose" vendor="Microsoft"
osfamily="Windows" osgen="2003" accuracy="96" />..</os>\' in the node
@return A list of (os_vendor_family_gen, accuracy)'

def get_os_guesses(self):

    osclasses = self.node.findall('os/osclass')
    if (osclasses == []):
        osclasses = self.node.findall('os/osmatch/osclass')
    for osclass in osclasses:
        os_vendor = osclass.get('vendor')
        os_family = osclass.get('osfamily')
        os_gen = osclass.get('osgen')
        accuracy = osclass.get('accuracy')
        (yield (('%s    %s    %s' % (os_vendor, os_family, os_gen)), accuracy))
    if (osclasses == []):
        services = self.node.findall('ports/port/service')
        for service in services:
            ostype = service.get('ostype')
            (yield (('%s' % ostype), 0))
