'This method is called when the plugin wont be used anymore.
The real job of this plugin is done here, where I will try to see if
one of the error_500 responses were not identified as a vuln by some
of my audit plugins'

def end(self):

    all_vuln_ids = set()
    for info in kb.kb.get_all_findings():
        for _id in info.get_id():
            all_vuln_ids.add(_id)
    for (request, error_500_response_id) in self._error_500_responses:
        if (error_500_response_id not in all_vuln_ids):
            desc = 'An    unidentified    web    application    error    (HTTP    response    code    500)    was    found    at:    "%s".    Enable    all    plugins    and    try    again,    if    the    vulnerability    still    is    not    identified,    please    verify    manually    and    report    it    to    the    w3af    developers.'
            desc = (desc % request.get_url())
            v = Vuln('Unhandled    error    in    web    application', desc, severity.MEDIUM, error_500_response_id, self.get_name())
            v.set_uri(request.get_uri())
            self.kb_append_uniq(self, 'error_500', v, 'VAR')
    self._error_500_responses.cleanup()
