{
STRING PromptBuffer, ResponseBuffer;
BOOLEANEnable, Resend;
/* Normalize the lengths */
PromptLength = min(PromptLength, 512);
MaximumResponseLength = min(MaximumResponseLength, 512);
/* Check if we need to verify the string */if (PreviousMode != KernelMode)
{
/* FIXME: Handle user-mode */
}
/* Setup the prompt and response buffers */
PromptBuffer.Buffer = PromptString;
PromptBuffer.Length = PromptLength;
ResponseBuffer.Buffer = ResponseString;
ResponseBuffer.Length = 0;
ResponseBuffer.MaximumLength = MaximumResponseLength;
/* Log the print *///KdLogDbgPrint(&PromptBuffer);/* Enter the debugger */
Enable = KdEnterDebugger(TrapFrame, ExceptionFrame);
/* Enter prompt loop */do
{
/* Send the prompt and receive the response */
Resend = KdpPromptString(&PromptBuffer, &ResponseBuffer);
/* Loop while we need to resend */
} while (Resend);
/* Exit the debugger */KdExitDebugger(Enable);
/* Return the number of characters received */return ResponseBuffer.Length;
}
Generated on Mon May 28 2012 06:07:54 for ReactOS by
1.7.6.1
ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.