Beispiel #1
0
bool Pdb::SingleStep()
{
	LLOG("SINGLE STEP 0");
#if CPU_64
	if(win64)
		context.context64.EFlags |= 0x100;
	else
#endif
		context.context32.EFlags |= 0x100;
	WriteContext();
	running = true;
	ContinueDebugEvent(event.dwProcessId, event.dwThreadId, DBG_CONTINUE);
	if(!RunToException())
		return false;
#if CPU_64
	if(win64)
		context.context64.EFlags &= ~0x100;
	else
#endif
		context.context32.EFlags &= ~0x100;
	WriteContext();
	return true;
}
Beispiel #2
0
DWORD WINAPI HttpExtensionProc(EXTENSION_CONTROL_BLOCK *pECB)
{
	StartHeaders(pECB);

	// Show that we've received the request

	WriteContext(pECB, "<p><b><font face='Verdana' color='#A00000'>Success!</font></b></p>");
	WriteContext(pECB, "<p><font size='2' face='Verdana'>The uploaded file is now available to the ISAPI extension.</font></p>\r\n", pECB->lpszQueryString);

	//const char* ccVerb = pECB->lpszQueryString; // this is the command being executed

	if ( "DoPOC" == std::string(pECB->lpszQueryString) ) {
		//TODO: this needs to be changed to a different verb
	    WriteContext(pECB, "<p><font size='2' face='Verdana'>The following 'verb' was detected by ISAPI: %s.</font></p>\r\n", pECB->lpszQueryString);

		// good point to load the CpMagickLibrary
		// TODO: this needs to go to a more appropriate place
		CpLoadMagickLibrary();
	}

	EndHeaders(pECB);

	return HSE_STATUS_SUCCESS;
}
Beispiel #3
0
void Pdb::WriteContext()
{
	WriteContext(threads.Get(event.dwThreadId).hThread, context);
}
Beispiel #4
0
void EndHeaders(EXTENSION_CONTROL_BLOCK *pECB)
{
	WriteContext(pECB, "</body>\r\n</html>");
}
Beispiel #5
0
void StartHeaders(EXTENSION_CONTROL_BLOCK *pECB)
{
	WriteContext(pECB, "<html>\r\n<body>\r\n");
}