Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/*++
Copyright (c) 1998-2001 Microsoft Corporation
Module Name:
endp.c
Abstract:
Dumps UL_ENDPOINT structures.
Author:
Keith Moore (keithmo) 26-Jun-1998
Environment:
User Mode.
Revision History:
--*/
#include "precomp.h"
//
// Public functions.
//
DECLARE_API( endp )
/*++
Routine Description:
Dumps UL_ENDPOINT structures.
Arguments:
None.
Return Value:
None.
--*/
{ ULONG_PTR address = 0; ULONG result; UL_ENDPOINT endpoint; ENDPOINT_CONNS Verbosity = ENDPOINT_NO_CONNS;
SNAPSHOT_EXTENSION_DATA();
//
// Skip leading blanks.
//
while (*args == ' ' || *args == '\t') { args++; }
while ((*args == '*') || (*args == '-')) { if (*args == '*') { DumpAllEndpoints(Verbosity); return; } else if (*args == '-') { args++;
switch (*args) { case 'c' : case 'C' : Verbosity = ENDPOINT_BRIEF_CONNS; args++; break;
case 'v' : case 'V' : Verbosity = ENDPOINT_VERBOSE_CONNS; args++; break;
default : PrintUsage( "endp" ); return; } }
while (*args == ' ' || *args == '\t') { args++; } }
//
// Snag the address from the command line.
//
address = GetExpression( args );
if (address == 0) { PrintUsage( "endp" ); return; }
//
// Read the endpoint.
//
if (!ReadMemory( address, &endpoint, sizeof(endpoint), &result )) { dprintf( "endp: cannot read UL_ENDPOINT @ %p\n", address ); return; }
//
// Dump it.
//
DumpUlEndpoint( "", "endp: ", address, &endpoint, Verbosity );
} // endp
|