':param name: The vulnerability name, will be checked against the values
in core.data.constants.vulns.
:param desc: The vulnerability description
:param response_ids: A list of response ids associated with this vuln
:param plugin_name: The name of the plugin which identified the vuln
:param vulndb_id: The vulnerability ID in the vulndb that is associated
with this Info instance. If set it will override the
vulndb_id which we get from vulns.py using the
mandatory name attribute.
:see: https://github.com/vulndb/data'

def __init__(self, name, desc, response_ids, plugin_name, vulndb_id=None):

    super(Info, self).__init__()
    self._string_matches = set()
    self._mutant = EmptyMutant()
    self._name = None
    self._desc = None
    self._id = []
    self._plugin_name = None
    self._vulndb_id = None
    self._vulndb = None
    self._uniq_id = str(uuid.uuid4())
    self.set_vulndb_id(vulndb_id)
    self.set_name(name)
    self.set_desc(desc)
    self.set_id(response_ids)
    self.set_plugin_name(plugin_name)
