library/src/exploitation/WebExploitation/BP-WebExploitation.cc
/*
 * Explanation:
 * These routines are used for the generation of request strings used with
 * either the GET or POST methods.  These routines take into account the values
 * set within the assessment structure, and based upon them either generate a
 * valid request string, or return NULL to indicate that an exclusion has
 * occured.  These routines are primarily utilized within the Run*Tests() series
 * of functions which are most often ran from RunAssessment().
 */
These routines are used for the generation of request strings used with
either the GET or POST methods.  These routines take into account the values
set within the assessment structure, and based upon them either generate a
valid request string, or return NULL to indicate that an exclusion has
occured.  These routines are primarily utilized within the Run*Tests() series
of functions which are most often ran from RunAssessment().
These routines are used for the generation of request strings used with either the GET or POST methods . These routines take into account the values set within the assessment structure and based upon them either generate a valid request string or return NULL to indicate that an exclusion has occured . These routines are primarily utilized within the Run * Tests () series of functions which are most often ran from RunAssessment () .
char * BP_WebAssessmentGenerateAnchorRequest(P_BP_WEB_ASSESSMENT assessment, P_BP_HTML_ANCHOR_LIST anchor)
{
	return NULL;
}
char * BP_WebAssessmentGenerateAnchorRequest ( P_BP_WEB_ASSESSMENT assessment , P_BP_HTML_ANCHOR_LIST anchor ) { return NULL ; }
Explanation:
 These routines are used for the generation of request strings used with
 either the GET or POST methods.
Explanation : These routines are used for the generation of request strings used with either the GET or POST methods .
/*
	 * Step 1) Check anchor protocol to determine if its http/https.
	 * 		a) If anchor is http/https (non-relative) check to make sure
	 * 		   its in the same domain.  If not, return NULL.
	 *         note: Domain is considered, not subdomain.
	 *
	 */ /*

	 // IMPORTANT: if the anchor protocol is http, and is not found to
	 // be the same as the base URL, then omit it from evaluation. A
	 // relative anchor always has a type of NONE because it is identified
	 // without a http:// prefix.
	 if((anchors->proto == BP_ANCHOR_PROTO_HTTP || anchors->proto == BP_ANCHOR_PROTO_HTTPS) &&
	 memcmp(assessment->baseAssessmentURL, anchors->href, bpstrlen(assessment->baseAssessmentURL)) != 0)
	 continue;

	 // If the protocol is not 0, then its offsite (change later)
	 if((anchors->proto == BP_ANCHOR_PROTO_HTTP || anchors->proto == BP_ANCHOR_PROTO_HTTPS) &&
	 memcmp(assessment->baseAssessmentURL, anchors->href, bpstrlen(assessment->baseAssessmentURL)) == 0){


	 snprintf(anchorTest, anchorLen, "%s",
	 anchors->relativePath);

	 } else {

	 baseTestURL = HTTPStripScript(assessment->baseAssessmentURL, bpstrlen(assessment->baseAssessmentURL));
	 snprintf(anchorTest, anchorLen, "%s%s", baseTestURL, anchors->relativePath);

	 }

	 // destroy test url if set then nullify for loop
	 if(baseTestURL){
	 bpfree(baseTestURL);
	 baseTestURL = NULL;
	 }

	 */