'Analyze if the HTTP response reason messages are strange.
:param request: The HTTP request object.
:param response: The HTTP response object
:return: None, all results are saved in the kb.'

def grep(self, request, response):

    response_code = response.get_code()
    msg_list = W3C_REASONS.get(response_code, None)
    if (msg_list is None):
        return
    response_reason = response.get_msg().lower()
    if (response_reason in msg_list):
        return
    desc = 'The    remote    Web    server    sent    a    strange    HTTP    reason    message    "%s",    manual    inspection    is    recommended.'
    desc %= response.get_msg()
    i = Info('Strange    HTTP    Reason    message', desc, response.id, self.get_name())
    i.set_url(response.get_url())
    i.add_to_highlight(response.get_msg())
    i[StrangeHeaderInfoSet.ITAG] = response.get_msg()
    self.kb_append_uniq_group(self, 'strange_reason', i, group_klass=StrangeHeaderInfoSet)
