nvioctl.h

来自「在ARM7和UC/OSII的平台上实现了GPS自动报站的功能,涉及GPS模块LE」· C头文件 代码 · 共 49 行

H
49
字号
/* nvioctl.h
 *
 * External entry info for calls to NDISHOOK VxD
 */


/* macro to build Windows DeviceIoControl() command codes for NDIS hook VxD */
#define MK_IOCTL_CMD(access, func, method)	(0x40000000 | (access << 14) | (func << 2) | method)

/* IO codes for calls to NDISHOOK VxD */
#define	ND_IOCTL_BIND					   MK_IOCTL_CMD(0, 1, 0)
#define  ND_IOCTL_GET_DESC             MK_IOCTL_CMD(0, 2, 0)
#define	ND_IOCTL_MACADDR  			   MK_IOCTL_CMD(0, 3, 0)
#define  ND_IOCTL_RECEIVE 				   MK_IOCTL_CMD(0, 4, 0)
#define  ND_IOCTL_SEND					   MK_IOCTL_CMD(0, 5, 0)
#define	ND_IOCTL_CLEAR_PEND			   MK_IOCTL_CMD(0, 6, 0)
#define	ND_IOCTL_SET_FILTER	         MK_IOCTL_CMD(0, 7, 0)
#define	ND_IOCTL_GET_STATS		      MK_IOCTL_CMD(0, 8, 0)
#define  ND_IOCTL_FLUSH					   MK_IOCTL_CMD(0, 9, 0)
#define	ND_IOCTL_UNBIND				   MK_IOCTL_CMD(0, 10, 0)


/* definition for VxD statistics structure returned from IOCTL_GET_STATS */

struct ndis_vxd_stats
{
   long  rx_indications;   /* total "receive indication" calls */
   long  rx_big;           /* bigger than lookahead size */
   long  rx_small;         /* smaller than lookahead size */
   long  rxrej_flushing;   /* list of rxindicate reject errors */
   long  rxrej_recvq;
   long  rxrej_hdrsz;
   long  rxrej_nopkt;
   long  rxrej_buffer;
   long  rxerr_inst;       /* list of receive_ioctl errors */
   long  rxerr_flushing;
   long  rxerr_maxq;
   long  rxerr_appbuf1;
   long  rxerr_appbuf2;
   long  rx_ok_pend;       /* indicate did a pend */
   long  rx_ok;            /* indicate completed OK */
   long  rx_empty;         /* called rx ioctl and no packet was ready */
   long  rx_data;          /* called rx ioctl and data WAS ready */
};

extern struct ndis_vxd_stats nvstats;


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?