def checkDynamicContent(firstPage, secondPage):
 if kb.nullConnection:
  debugMsg = 'dynamic content checking skipped '
  debugMsg += 'because NULL connection used'
  logger.debug(debugMsg)
  return
 if any(((page is None) for page in (firstPage, secondPage))):
  warnMsg = "can't check dynamic content "
  warnMsg += 'because of lack of page content'
  logger.critical(warnMsg)
  return
 seqMatcher = getCurrentThreadData().seqMatcher
 seqMatcher.set_seq1(firstPage)
 seqMatcher.set_seq2(secondPage)
 if (seqMatcher.quick_ratio() <= UPPER_RATIO_BOUND):
  findDynamicContent(firstPage, secondPage)
  count = 0
  while (not Request.queryPage()):
   count += 1
   if (count > conf.retries):
    warnMsg = 'target URL is too dynamic. '
    warnMsg += "Switching to '--text-only' "
    logger.warn(warnMsg)
    conf.textOnly = True
    return
   warnMsg = 'target URL is heavily dynamic'
   warnMsg += '. sqlmap is going to retry the request'
   logger.critical(warnMsg)
   (secondPage, _) = Request.queryPage(content=True)
   findDynamicContent(firstPage, secondPage)

def checkDynamicContent ( firstPage , secondPage ) : if kb . nullConnection : debugMsg = 'dynamic content checking skipped ' debugMsg += 'because NULL connection used' logger . debug ( debugMsg ) return if any ( ( ( page is None ) for page in ( firstPage , secondPage ) ) ) : warnMsg = "can't check dynamic content " warnMsg += 'because of lack of page content' logger . critical ( warnMsg ) return seqMatcher = getCurrentThreadData ( ) . seqMatcher seqMatcher . set_seq1 ( firstPage ) seqMatcher . set_seq2 ( secondPage ) if ( seqMatcher . quick_ratio ( ) <= UPPER_RATIO_BOUND ) : findDynamicContent ( firstPage , secondPage ) count = 0 while ( not Request . queryPage ( ) ) : count += 1 if ( count > conf . retries ) : warnMsg = 'target URL is too dynamic. ' warnMsg += "Switching to '--text-only' " logger . warn ( warnMsg ) conf . textOnly = True return warnMsg = 'target URL is heavily dynamic' warnMsg += '. sqlmap is going to retry the request' logger . critical ( warnMsg ) ( secondPage , _ ) = Request . queryPage ( content = True ) findDynamicContent ( firstPage , secondPage )
this function checks for the dynamic content in the provided pages .