windows-nt/Source/XPSP1/NT/inetsrv/iis/iisrearc/ul/ulkd/conn.c
2020-09-26 16:20:57 +08:00

242 lines
3 KiB
C

/*++
Copyright (c) 1998-2001 Microsoft Corporation
Module Name:
conn.c
Abstract:
Dumps UL_CONNECTION and HTTP_CONNECTION structures.
Author:
Keith Moore (keithmo) 26-Jun-1998
Environment:
User Mode.
Revision History:
--*/
#include "precomp.h"
//
// Public functions.
//
DECLARE_API( ulconn )
/*++
Routine Description:
Dumps UL_CONNECTION structures.
Arguments:
None.
Return Value:
None.
--*/
{
ULONG_PTR address = 0;
ULONG result;
UL_CONNECTION connection;
SNAPSHOT_EXTENSION_DATA();
//
// Snag the address from the command line.
//
address = GetExpression( args );
if (address == 0)
{
PrintUsage( "ulconn" );
return;
}
//
// Read the connection.
//
if (!ReadMemory(
address,
&connection,
sizeof(connection),
&result
))
{
dprintf(
"ulconn: cannot read UL_CONNECTION @ %p\n",
address
);
return;
}
//
// Dump it.
//
DumpUlConnection(
"",
"ulconn: ",
address,
&connection
);
} // ulconn
DECLARE_API( httpconn )
/*++
Routine Description:
Dumps HTTP_CONNECTION structures.
Arguments:
None.
Return Value:
None.
--*/
{
ULONG_PTR address = 0;
ULONG result;
UL_HTTP_CONNECTION connection;
SNAPSHOT_EXTENSION_DATA();
//
// Snag the address from the command line.
//
address = GetExpression( args );
if (address == 0)
{
PrintUsage( "httpconn" );
return;
}
//
// Read the connection.
//
if (!ReadMemory(
address,
&connection,
sizeof(connection),
&result
))
{
dprintf(
"httpconn: cannot read HTTP_CONNECTION @ %p\n",
address
);
return;
}
//
// Dump it.
//
DumpHttpConnection(
"",
"httpconn: ",
address,
&connection
);
} // httpconn
DECLARE_API( httpreq )
/*++
Routine Description:
Dumps UL_INTERNAL_REQUEST structures.
Arguments:
None.
Return Value:
None.
--*/
{
ULONG_PTR address = 0;
ULONG result;
UL_INTERNAL_REQUEST request;
SNAPSHOT_EXTENSION_DATA();
//
// Snag the address from the command line.
//
address = GetExpression( args );
if (address == 0)
{
PrintUsage( "httpreq" );
return;
}
//
// Read the connection.
//
if (!ReadMemory(
address,
&request,
sizeof(request),
&result
))
{
dprintf(
"httpreq: cannot read HTTP_REQUEST @ %p\n",
address
);
return;
}
//
// Dump it.
//
DumpHttpRequest(
"",
"httpreq: ",
address,
&request
);
} // httpreq