/*++ Copyright (c) 1998 Microsoft Corporation Module Name: irioctl.h Abstract: Contains definitions for private ioctls for the IrDA TDI driver used by irmon and the IrDA winsock helper dll. Author: mbert 9-98 --*/ typedef struct { ULONG Flags; #define LF_CONNECTED 0x00000001 #define LF_TX 0x00000002 #define LF_RX 0x00000004 #define LF_INTERRUPTED 0x00000008 #define LF_NO_UI 0x80000000 ULONG ConnectSpeed; CHAR ConnectedDeviceId[4]; } IRLINK_STATUS, *PIRLINK_STATUS; #define FSCTL_IRDA_BASE FILE_DEVICE_NETWORK #define _IRDA_CTL_CODE(function, method, access) \ CTL_CODE(FSCTL_IRDA_BASE, function, method, access) #define IOCTL_IRDA_GET_INFO_ENUM_DEV \ _IRDA_CTL_CODE(0, METHOD_BUFFERED, FILE_ANY_ACCESS) #define IOCTL_IRDA_SET_OPTIONS \ _IRDA_CTL_CODE(1, METHOD_BUFFERED, FILE_ANY_ACCESS) #define IOCTL_IRDA_GET_SEND_PDU_LEN \ _IRDA_CTL_CODE(2, METHOD_BUFFERED, FILE_ANY_ACCESS) #define IOCTL_IRDA_QUERY_IAS \ _IRDA_CTL_CODE(3, METHOD_BUFFERED, FILE_ANY_ACCESS) #define IOCTL_IRDA_SET_IAS \ _IRDA_CTL_CODE(4, METHOD_BUFFERED, FILE_ANY_ACCESS) #define IOCTL_IRDA_DEL_IAS_ATTRIB \ _IRDA_CTL_CODE(5, METHOD_BUFFERED, FILE_ANY_ACCESS) #define IOCTL_IRDA_LAZY_DISCOVERY \ _IRDA_CTL_CODE(6, METHOD_BUFFERED, FILE_ANY_ACCESS) #define IOCTL_IRDA_LINK_STATUS \ _IRDA_CTL_CODE(10, METHOD_BUFFERED, FILE_ANY_ACCESS) #define IOCTL_IRDA_SET_LAZY_DISCOVERY_INTERVAL \ _IRDA_CTL_CODE(11, METHOD_BUFFERED, FILE_ANY_ACCESS) #define IOCTL_IRDA_LINK_STATUS_NB \ _IRDA_CTL_CODE(12, METHOD_BUFFERED, FILE_ANY_ACCESS) #define IOCTL_IRDA_FLUSH_DISCOVERY_CACHE \ _IRDA_CTL_CODE(13, METHOD_BUFFERED, FILE_ANY_ACCESS) #define IOCTL_IRDA_GET_DBG_MSGS \ _IRDA_CTL_CODE(20, METHOD_BUFFERED, FILE_ANY_ACCESS) #define IOCTL_IRDA_GET_DBG_SETTINGS \ _IRDA_CTL_CODE(21, METHOD_BUFFERED, FILE_ANY_ACCESS) #define IOCTL_IRDA_SET_DBG_SETTINGS \ _IRDA_CTL_CODE(22, METHOD_BUFFERED, FILE_ANY_ACCESS) #define OPT_IRLPT_MODE 0x01 #define OPT_9WIRE_MODE 0x02 #define LINK_STATUS_IDLE 0 #define LINK_STATUS_DISCOVERING 1 #define LINK_STATUS_CONNECTED 2 #define LINK_STATUS_INTERRUPTED 3