Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
ndiswan.h
00001 /* 00002 * ndiswan.h 00003 * 00004 * Definitions for NDIS WAN miniport drivers 00005 * 00006 * This file is part of the w32api package. 00007 * 00008 * Contributors: 00009 * Created by Casper S. Hornstrup <chorns@users.sourceforge.net> 00010 * 00011 * THIS SOFTWARE IS NOT COPYRIGHTED 00012 * 00013 * This source code is offered for use in the public domain. You may 00014 * use, modify or distribute it freely. 00015 * 00016 * This code is distributed in the hope that it will be useful but 00017 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY 00018 * DISCLAIMED. This includes but is not limited to warranties of 00019 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 00020 * 00021 */ 00022 00023 #ifndef __NDISWAN_H 00024 #define __NDISWAN_H 00025 00026 #if __GNUC__ >=3 00027 #pragma GCC system_header 00028 #endif 00029 00030 #ifdef __cplusplus 00031 extern "C" { 00032 #endif 00033 00034 #include "ndis.h" 00035 00036 #define NDIS_USE_WAN_WRAPPER 0x00000001 00037 00038 #define NDIS_STATUS_TAPI_INDICATION ((NDIS_STATUS)0x40010080L) 00039 00040 /* NDIS_WAN_INFO.FramingBits constants */ 00041 #define RAS_FRAMING 0x00000001 00042 #define RAS_COMPRESSION 0x00000002 00043 00044 #define ARAP_V1_FRAMING 0x00000004 00045 #define ARAP_V2_FRAMING 0x00000008 00046 #define ARAP_FRAMING (ARAP_V1_FRAMING | ARAP_V2_FRAMING) 00047 00048 #define PPP_MULTILINK_FRAMING 0x00000010 00049 #define PPP_SHORT_SEQUENCE_HDR_FORMAT 0x00000020 00050 #define PPP_MC_MULTILINK_FRAMING 0x00000040 00051 00052 #define PPP_FRAMING 0x00000100 00053 #define PPP_COMPRESS_ADDRESS_CONTROL 0x00000200 00054 #define PPP_COMPRESS_PROTOCOL_FIELD 0x00000400 00055 #define PPP_ACCM_SUPPORTED 0x00000800 00056 00057 #define SLIP_FRAMING 0x00001000 00058 #define SLIP_VJ_COMPRESSION 0x00002000 00059 #define SLIP_VJ_AUTODETECT 0x00004000 00060 00061 #define MEDIA_NRZ_ENCODING 0x00010000 00062 #define MEDIA_NRZI_ENCODING 0x00020000 00063 #define MEDIA_NLPID 0x00040000 00064 00065 #define RFC_1356_FRAMING 0x00100000 00066 #define RFC_1483_FRAMING 0x00200000 00067 #define RFC_1490_FRAMING 0x00400000 00068 #define LLC_ENCAPSULATION 0x00800000 00069 00070 #define SHIVA_FRAMING 0x01000000 00071 #define NBF_PRESERVE_MAC_ADDRESS 0x01000000 00072 00073 #define PASS_THROUGH_MODE 0x10000000 00074 #define RAW_PASS_THROUGH_MODE 0x20000000 00075 00076 #define TAPI_PROVIDER 0x80000000 00077 00078 typedef struct _NDIS_WAN_INFO { 00079 /*OUT*/ ULONG MaxFrameSize; 00080 /*OUT*/ ULONG MaxTransmit; 00081 /*OUT*/ ULONG HeaderPadding; 00082 /*OUT*/ ULONG TailPadding; 00083 /*OUT*/ ULONG Endpoints; 00084 /*OUT*/ UINT MemoryFlags; 00085 /*OUT*/ NDIS_PHYSICAL_ADDRESS HighestAcceptableAddress; 00086 /*OUT*/ ULONG FramingBits; 00087 /*OUT*/ ULONG DesiredACCM; 00088 } NDIS_WAN_INFO, *PNDIS_WAN_INFO; 00089 00090 typedef struct _NDIS_WAN_GET_LINK_INFO { 00091 /*IN*/ NDIS_HANDLE NdisLinkHandle; 00092 /*OUT*/ ULONG MaxSendFrameSize; 00093 /*OUT*/ ULONG MaxRecvFrameSize; 00094 /*OUT*/ ULONG HeaderPadding; 00095 /*OUT*/ ULONG TailPadding; 00096 /*OUT*/ ULONG SendFramingBits; 00097 /*OUT*/ ULONG RecvFramingBits; 00098 /*OUT*/ ULONG SendCompressionBits; 00099 /*OUT*/ ULONG RecvCompressionBits; 00100 /*OUT*/ ULONG SendACCM; 00101 /*OUT*/ ULONG RecvACCM; 00102 } NDIS_WAN_GET_LINK_INFO, *PNDIS_WAN_GET_LINK_INFO; 00103 00104 typedef struct _NDIS_WAN_SET_LINK_INFO { 00105 /*IN*/ NDIS_HANDLE NdisLinkHandle; 00106 /*IN*/ ULONG MaxSendFrameSize; 00107 /*IN*/ ULONG MaxRecvFrameSize; 00108 /*IN*/ ULONG HeaderPadding; 00109 /*IN*/ ULONG TailPadding; 00110 /*IN*/ ULONG SendFramingBits; 00111 /*IN*/ ULONG RecvFramingBits; 00112 /*IN*/ ULONG SendCompressionBits; 00113 /*IN*/ ULONG RecvCompressionBits; 00114 /*IN*/ ULONG SendACCM; 00115 /*IN*/ ULONG RecvACCM; 00116 } NDIS_WAN_SET_LINK_INFO, *PNDIS_WAN_SET_LINK_INFO; 00117 00118 /* NDIS_WAN_COMPRESS_INFO.MSCompType constants */ 00119 #define NDISWAN_COMPRESSION 0x00000001 00120 #define NDISWAN_ENCRYPTION 0x00000010 00121 #define NDISWAN_40_ENCRYPTION 0x00000020 00122 #define NDISWAN_128_ENCRYPTION 0x00000040 00123 #define NDISWAN_56_ENCRYPTION 0x00000080 00124 #define NDISWAN_HISTORY_LESS 0x01000000 00125 00126 /* NDIS_WAN_COMPRESS_INFO.CompType constants */ 00127 #define COMPTYPE_OUI 0 00128 #define COMPTYPE_NT31RAS 254 00129 #define COMPTYPE_NONE 255 00130 00131 typedef struct _NDIS_WAN_COMPRESS_INFO { 00132 UCHAR SessionKey[8]; 00133 ULONG MSCompType; 00134 UCHAR CompType; 00135 USHORT CompLength; 00136 _ANONYMOUS_UNION union { 00137 struct { 00138 UCHAR CompOUI[3]; 00139 UCHAR CompSubType; 00140 UCHAR CompValues[32]; 00141 } Proprietary; 00142 struct { 00143 UCHAR CompValues[32]; 00144 } Public; 00145 } DUMMYUNIONNAME; 00146 } NDIS_WAN_COMPRESS_INFO; 00147 00148 typedef NDIS_WAN_COMPRESS_INFO *PNDIS_WAN_COMPRESS_INFO; 00149 00150 typedef struct _NDIS_WAN_GET_COMP_INFO { 00151 /*IN*/ NDIS_HANDLE NdisLinkHandle; 00152 /*OUT*/ NDIS_WAN_COMPRESS_INFO SendCapabilities; 00153 /*OUT*/ NDIS_WAN_COMPRESS_INFO RecvCapabilities; 00154 } NDIS_WAN_GET_COMP_INFO, *PNDIS_WAN_GET_COMP_INFO; 00155 00156 typedef struct _NDIS_WAN_SET_COMP_INFO { 00157 /*IN*/ NDIS_HANDLE NdisLinkHandle; 00158 /*IN*/ NDIS_WAN_COMPRESS_INFO SendCapabilities; 00159 /*IN*/ NDIS_WAN_COMPRESS_INFO RecvCapabilities; 00160 } NDIS_WAN_SET_COMP_INFO, *PNDIS_WAN_SET_COMP_INFO; 00161 00162 typedef struct _NDIS_WAN_GET_STATS_INFO { 00163 /*IN*/ NDIS_HANDLE NdisLinkHandle; 00164 /*OUT*/ ULONG BytesSent; 00165 /*OUT*/ ULONG BytesRcvd; 00166 /*OUT*/ ULONG FramesSent; 00167 /*OUT*/ ULONG FramesRcvd; 00168 /*OUT*/ ULONG CRCErrors; 00169 /*OUT*/ ULONG TimeoutErrors; 00170 /*OUT*/ ULONG AlignmentErrors; 00171 /*OUT*/ ULONG SerialOverrunErrors; 00172 /*OUT*/ ULONG FramingErrors; 00173 /*OUT*/ ULONG BufferOverrunErrors; 00174 /*OUT*/ ULONG BytesTransmittedUncompressed; 00175 /*OUT*/ ULONG BytesReceivedUncompressed; 00176 /*OUT*/ ULONG BytesTransmittedCompressed; 00177 /*OUT*/ ULONG BytesReceivedCompressed; 00178 } NDIS_WAN_GET_STATS_INFO, *PNDIS_WAN_GET_STATS_INFO; 00179 00180 #define NdisMWanInitializeWrapper(NdisWrapperHandle, \ 00181 SystemSpecific1, \ 00182 SystemSpecific2, \ 00183 SystemSpecific3) \ 00184 { \ 00185 NdisMInitializeWrapper(NdisWrapperHandle, \ 00186 SystemSpecific1, \ 00187 SystemSpecific2, \ 00188 SystemSpecific3); \ 00189 } 00190 00191 typedef struct _NDIS_WAN_CO_INFO { 00192 /*OUT*/ ULONG MaxFrameSize; 00193 /*OUT*/ ULONG MaxSendWindow; 00194 /*OUT*/ ULONG FramingBits; 00195 /*OUT*/ ULONG DesiredACCM; 00196 } NDIS_WAN_CO_INFO, *PNDIS_WAN_CO_INFO; 00197 00198 typedef struct _NDIS_WAN_CO_GET_LINK_INFO { 00199 /*OUT*/ ULONG MaxSendFrameSize; 00200 /*OUT*/ ULONG MaxRecvFrameSize; 00201 /*OUT*/ ULONG SendFramingBits; 00202 /*OUT*/ ULONG RecvFramingBits; 00203 /*OUT*/ ULONG SendCompressionBits; 00204 /*OUT*/ ULONG RecvCompressionBits; 00205 /*OUT*/ ULONG SendACCM; 00206 /*OUT*/ ULONG RecvACCM; 00207 } NDIS_WAN_CO_GET_LINK_INFO, *PNDIS_WAN_CO_GET_LINK_INFO; 00208 00209 typedef struct _NDIS_WAN_CO_SET_LINK_INFO { 00210 /*IN*/ ULONG MaxSendFrameSize; 00211 /*IN*/ ULONG MaxRecvFrameSize; 00212 /*IN*/ ULONG SendFramingBits; 00213 /*IN*/ ULONG RecvFramingBits; 00214 /*IN*/ ULONG SendCompressionBits; 00215 /*IN*/ ULONG RecvCompressionBits; 00216 /*IN*/ ULONG SendACCM; 00217 /*IN*/ ULONG RecvACCM; 00218 } NDIS_WAN_CO_SET_LINK_INFO, *PNDIS_WAN_CO_SET_LINK_INFO; 00219 00220 typedef struct _NDIS_WAN_CO_GET_COMP_INFO { 00221 /*OUT*/ NDIS_WAN_COMPRESS_INFO SendCapabilities; 00222 /*OUT*/ NDIS_WAN_COMPRESS_INFO RecvCapabilities; 00223 } NDIS_WAN_CO_GET_COMP_INFO, *PNDIS_WAN_CO_GET_COMP_INFO; 00224 00225 typedef struct _NDIS_WAN_CO_SET_COMP_INFO { 00226 /*IN*/ NDIS_WAN_COMPRESS_INFO SendCapabilities; 00227 /*IN*/ NDIS_WAN_COMPRESS_INFO RecvCapabilities; 00228 } NDIS_WAN_CO_SET_COMP_INFO, *PNDIS_WAN_CO_SET_COMP_INFO; 00229 00230 typedef struct _NDIS_WAN_CO_GET_STATS_INFO { 00231 /*OUT*/ ULONG BytesSent; 00232 /*OUT*/ ULONG BytesRcvd; 00233 /*OUT*/ ULONG FramesSent; 00234 /*OUT*/ ULONG FramesRcvd; 00235 /*OUT*/ ULONG CRCErrors; 00236 /*OUT*/ ULONG TimeoutErrors; 00237 /*OUT*/ ULONG AlignmentErrors; 00238 /*OUT*/ ULONG SerialOverrunErrors; 00239 /*OUT*/ ULONG FramingErrors; 00240 /*OUT*/ ULONG BufferOverrunErrors; 00241 /*OUT*/ ULONG BytesTransmittedUncompressed; 00242 /*OUT*/ ULONG BytesReceivedUncompressed; 00243 /*OUT*/ ULONG BytesTransmittedCompressed; 00244 /*OUT*/ ULONG BytesReceivedCompressed; 00245 } NDIS_WAN_CO_GET_STATS_INFO, *PNDIS_WAN_CO_GET_STATS_INFO; 00246 00247 #ifdef __cplusplus 00248 } 00249 #endif 00250 00251 #endif /* __NDISWAN_H */
Generated on Tue Jul 12 2022 19:59:54 by
1.7.2