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) 1990-1998 Microsoft Corporation, All Rights Reserved.
Module Name:
atmsmapp.h
Abstract:
Header file of the user mode app that controls the sample driver.
Author:
Anil Francis Thomas (10/98)
Environment:
User mode
Revision History:
--*/
#ifndef _ATMSMAPP_H_
#define _ATMSMAPP_H_
#define NSAP_ADDR_LEN 20
#define MAX_DESTINATIONS 0
#define DELIMITOR_CHARS " ,;"
typedef struct _ProgramOptions { BOOLEAN fLocalIntf; // Local Interface Specified
BOOLEAN fEnumInterfaces; // Enumerate all interfaces
BOOLEAN fPMP; // Is point to multipoint
USHORT usDrvAction; // Start. Stop
USHORT usSendRecvAction; // Send or Recv
DWORD dwPktSize; // Send Pkts Size
DWORD dwPktInterval; // Send Pkt Interval
DWORD dwNumPkts; // Send Number of Pkts
DWORD dwNumDsts; // Send to destinations
HANDLE hDriver; // Handle - to the driver
HANDLE hReceive; // Handle - open for recv
HANDLE hSend; // Handle - send to dsts
UCHAR ucLocalIntf[NSAP_ADDR_LEN]; // Local Interface
UCHAR ucDstAddrs[MAX_DESTINATIONS][NSAP_ADDR_LEN]; // destinations
} PROGRAM_OPTIONS, *PPROGRAM_OPTIONS;
// usDrvAction
#define START_DRV 1
#define STOP_DRV 2
// usSendRecvAction
#define RECEIVE_PKTS 1
#define SEND_PKTS 2
#define DEFAULT_PKT_SIZE 512
#define MAX_PKT_SIZE 9180
#define DEFAULT_PKT_INTERVAL 10 // millisecs
#define DEFAULT_NUM_OF_PKTS 10
#define MAX_BYTE_VALUE 0xFF
#define CharToHex(c, ucRet) { \
\ if(c >= '0' && c <= '9') \ ucRet = (UCHAR)(c - '0'); \ else \ if(c >= 'A' && c <= 'F') \ ucRet = (UCHAR)(10 + (c - 'A')); \ else \ if(c >= 'a' && c <= 'f') \ ucRet = (UCHAR)(10 + (c - 'a')); \ else \ ucRet = (UCHAR)-1; \ \ }
extern PROGRAM_OPTIONS g_ProgramOptions;
void Usage( );
BOOL ParseCommandLine( int argc, char *argv[] );
void EnumerateInterfaces( );
DWORD DoSendPacketsToDestinations( );
DWORD DoRecvPacketsOnAdapter( );
BOOL WINAPI CtrlCHandler( DWORD dwCtrlType );
BOOL GetSpecifiedDstAddrs( char *pStr );
BOOL GetATMAddrs( char *pStr, UCHAR ucAddr[] );
UINT FindOption( char *lptOpt, char **ppVal );
char * FormatATMAddr( UCHAR ucAddr[] );
#endif // _ATMSMAPP_H_
|