@@ -306,7 +306,7 @@ def getPage(**kwargs):
306306
307307 # Return response object
308308 if response :
309- return conn , None
309+ return conn , None , None
310310
311311 # Get HTTP response
312312 page = conn .read ()
@@ -369,7 +369,7 @@ def getPage(**kwargs):
369369 warnMsg = "connection timed out while trying "
370370 warnMsg += "to get error page information (%d)" % e .code
371371 logger .warn (warnMsg )
372- return None , None
372+ return None , None , None
373373 except :
374374 pass
375375
@@ -409,7 +409,7 @@ def getPage(**kwargs):
409409 processResponse (page , responseHeaders )
410410 elif e .code == 504 :
411411 if ignoreTimeout :
412- return None , None
412+ return None , None , None
413413 else :
414414 warnMsg = "unable to connect to the target url (%d - %s)" % (e .code , httplib .responses [e .code ])
415415 if threadData .retriesCount < conf .retries and not kb .threadException and not conf .realTest :
@@ -418,14 +418,14 @@ def getPage(**kwargs):
418418 return Connect .__retryProxy (** kwargs )
419419 elif kb .testMode :
420420 logger .critical (warnMsg )
421- return None , None
421+ return None , None , None
422422 else :
423423 raise sqlmapConnectionException , warnMsg
424424 else :
425425 debugMsg = "got HTTP error code: %d (%s)" % (code , status )
426426 logger .debug (debugMsg )
427427 processResponse (page , responseHeaders )
428- return page , responseHeaders
428+ return page , responseHeaders , code
429429
430430 except (urllib2 .URLError , socket .error , socket .timeout , httplib .BadStatusLine , httplib .IncompleteRead ), e :
431431 tbMsg = traceback .format_exc ()
@@ -454,16 +454,16 @@ def getPage(**kwargs):
454454
455455 if "forcibly closed" in tbMsg :
456456 logger .critical (warnMsg )
457- return None , None
457+ return None , None , None
458458 elif silent or (ignoreTimeout and any (map (lambda x : x in tbMsg , ["timed out" , "IncompleteRead" ]))):
459- return None , None
459+ return None , None , None
460460 elif threadData .retriesCount < conf .retries and not kb .threadException and not conf .realTest :
461461 warnMsg += ", sqlmap is going to retry the request"
462462 logger .critical (warnMsg )
463463 return Connect .__retryProxy (** kwargs )
464464 elif kb .testMode :
465465 logger .critical (warnMsg )
466- return None , None
466+ return None , None , None
467467 else :
468468 raise sqlmapConnectionException , warnMsg
469469
@@ -485,7 +485,7 @@ def getPage(**kwargs):
485485
486486 logger .log (7 , responseMsg )
487487
488- return page , responseHeaders
488+ return page , responseHeaders , code
489489
490490 @staticmethod
491491 def queryPage (value = None , place = None , content = False , getRatioValue = False , silent = False , method = None , timeBasedCompare = False , noteResponseTime = True , auxHeaders = None , response = False , raise404 = None ):
@@ -613,7 +613,7 @@ def queryPage(value=None, place=None, content=False, getRatioValue=False, silent
613613
614614 auxHeaders [HTTPHEADER .RANGE ] = "bytes=-1"
615615
616- _ , headers = Connect .getPage (url = uri , get = get , post = post , cookie = cookie , ua = ua , referer = referer , silent = silent , method = method , auxHeaders = auxHeaders , raise404 = raise404 )
616+ _ , headers , code = Connect .getPage (url = uri , get = get , post = post , cookie = cookie , ua = ua , referer = referer , silent = silent , method = method , auxHeaders = auxHeaders , raise404 = raise404 )
617617
618618 if headers :
619619 if kb .nullConnection == NULLCONNECTION .HEAD and HTTPHEADER .CONTENT_LENGTH in headers :
@@ -622,7 +622,7 @@ def queryPage(value=None, place=None, content=False, getRatioValue=False, silent
622622 pageLength = int (headers [HTTPHEADER .CONTENT_RANGE ][headers [HTTPHEADER .CONTENT_RANGE ].find ('/' ) + 1 :])
623623
624624 if not pageLength :
625- page , headers = Connect .getPage (url = uri , get = get , post = post , cookie = cookie , ua = ua , referer = referer , silent = silent , method = method , auxHeaders = auxHeaders , response = response , raise404 = raise404 , ignoreTimeout = timeBasedCompare )
625+ page , headers , code = Connect .getPage (url = uri , get = get , post = post , cookie = cookie , ua = ua , referer = referer , silent = silent , method = method , auxHeaders = auxHeaders , response = response , raise404 = raise404 , ignoreTimeout = timeBasedCompare )
626626
627627 threadData .lastQueryDuration = calculateDeltaSeconds (start )
628628
@@ -643,8 +643,8 @@ def queryPage(value=None, place=None, content=False, getRatioValue=False, silent
643643 page = removeReflectiveValues (page , payload )
644644
645645 if getRatioValue :
646- return comparison (page , headers , getRatioValue = False , pageLength = pageLength ), comparison (page , headers , getRatioValue = True , pageLength = pageLength )
646+ return comparison (page , headers , code , getRatioValue = False , pageLength = pageLength ), comparison (page , headers , code , getRatioValue = True , pageLength = pageLength )
647647 elif pageLength or page :
648- return comparison (page , headers , getRatioValue , pageLength )
648+ return comparison (page , headers , code , getRatioValue , pageLength )
649649 else :
650650 return False
0 commit comments