00001 
#include <afilter.h>
00002 
#include <efilter.h>
00003 
#include <tfilter.h>
00004 
#include <ffilter.h>
00005 
00006 #define NDIS_M_MAX_LOOKAHEAD 526
00007 
00008 
00009 
00010 
00011 
00012 typedef struct _NDIS_M_DRIVER_BLOCK             NDIS_M_DRIVER_BLOCK, *
PNDIS_M_DRIVER_BLOCK;
00013 typedef struct _NDIS_MINIPORT_BLOCK             NDIS_MINIPORT_BLOCK,*
PNDIS_MINIPORT_BLOCK;
00014 typedef struct _CO_CALL_PARAMETERS              CO_CALL_PARAMETERS, *
PCO_CALL_PARAMETERS;
00015 typedef struct _CO_MEDIA_PARAMETERS             CO_MEDIA_PARAMETERS, *
PCO_MEDIA_PARAMETERS;
00016 typedef struct _NDIS_CALL_MANAGER_CHARACTERISTICS *
PNDIS_CALL_MANAGER_CHARACTERISTICS;
00017 typedef struct _NDIS_AF_LIST                    NDIS_AF_LIST, *
PNDIS_AF_LIST;
00018 typedef struct _NULL_FILTER                             NULL_FILTER, *
PNULL_FILTER;
00019 
00020 
00021 
00022 
00023 
00024 
00025 
typedef
00026 BOOLEAN
00027 (*W_CHECK_FOR_HANG_HANDLER)(
00028         IN      
NDIS_HANDLE                             MiniportAdapterContext
00029         );
00030 
00031 
typedef
00032 
VOID
00033 (*W_DISABLE_INTERRUPT_HANDLER)(
00034         IN      
NDIS_HANDLE                             MiniportAdapterContext
00035         );
00036 
00037 
typedef
00038 
VOID
00039 (*W_ENABLE_INTERRUPT_HANDLER)(
00040         IN      
NDIS_HANDLE                             MiniportAdapterContext
00041         );
00042 
00043 
typedef
00044 
VOID
00045 (*W_HALT_HANDLER)(
00046         IN      
NDIS_HANDLE                             MiniportAdapterContext
00047         );
00048 
00049 
typedef
00050 
VOID
00051 (*W_HANDLE_INTERRUPT_HANDLER)(
00052         IN      
NDIS_HANDLE                             MiniportAdapterContext
00053         );
00054 
00055 
typedef
00056 
NDIS_STATUS
00057 (*W_INITIALIZE_HANDLER)(
00058         OUT 
PNDIS_STATUS                        OpenErrorStatus,
00059         OUT 
PUINT                                       SelectedMediumIndex,
00060         IN      PNDIS_MEDIUM                    MediumArray,
00061         IN      
UINT                                    MediumArraySize,
00062         IN      
NDIS_HANDLE                             MiniportAdapterContext,
00063         IN      
NDIS_HANDLE                             WrapperConfigurationContext
00064         );
00065 
00066 
typedef
00067 
VOID
00068 (*W_ISR_HANDLER)(
00069         OUT PBOOLEAN                            InterruptRecognized,
00070         OUT PBOOLEAN                            QueueMiniportHandleInterrupt,
00071         IN      
NDIS_HANDLE                             MiniportAdapterContext
00072         );
00073 
00074 
typedef
00075 
NDIS_STATUS
00076 (*W_QUERY_INFORMATION_HANDLER)(
00077         IN      
NDIS_HANDLE                             MiniportAdapterContext,
00078         IN      NDIS_OID                                Oid,
00079         IN      PVOID                                   InformationBuffer,
00080         IN      ULONG                                   InformationBufferLength,
00081         OUT PULONG                                      BytesWritten,
00082         OUT PULONG                                      BytesNeeded
00083         );
00084 
00085 
typedef
00086 
NDIS_STATUS
00087 (*W_RECONFIGURE_HANDLER)(
00088         OUT 
PNDIS_STATUS                        OpenErrorStatus,
00089         IN      
NDIS_HANDLE                             MiniportAdapterContext  OPTIONAL,
00090         IN      
NDIS_HANDLE                             WrapperConfigurationContext
00091         );
00092 
00093 
typedef
00094 
NDIS_STATUS
00095 (*W_RESET_HANDLER)(
00096         OUT PBOOLEAN                            AddressingReset,
00097         IN      
NDIS_HANDLE                             MiniportAdapterContext
00098         );
00099 
00100 
typedef
00101 
NDIS_STATUS
00102 (*W_SEND_HANDLER)(
00103         IN      
NDIS_HANDLE                             MiniportAdapterContext,
00104         IN      
PNDIS_PACKET                    Packet,
00105         IN      
UINT                                    Flags
00106         );
00107 
00108 
typedef
00109 
NDIS_STATUS
00110 (*WM_SEND_HANDLER)(
00111         IN      
NDIS_HANDLE                             MiniportAdapterContext,
00112         IN      
NDIS_HANDLE                             NdisLinkHandle,
00113         IN      
PNDIS_WAN_PACKET                Packet
00114         );
00115 
00116 
typedef
00117 
NDIS_STATUS
00118 (*W_SET_INFORMATION_HANDLER)(
00119         IN      
NDIS_HANDLE                             MiniportAdapterContext,
00120         IN      NDIS_OID                                Oid,
00121         IN      PVOID                                   InformationBuffer,
00122         IN      ULONG                                   InformationBufferLength,
00123         OUT PULONG                                      BytesRead,
00124         OUT PULONG                                      BytesNeeded
00125         );
00126 
00127 
typedef
00128 
NDIS_STATUS
00129 (*W_TRANSFER_DATA_HANDLER)(
00130         OUT 
PNDIS_PACKET                        Packet,
00131         OUT 
PUINT                                       BytesTransferred,
00132         IN      
NDIS_HANDLE                             MiniportAdapterContext,
00133         IN      
NDIS_HANDLE                             MiniportReceiveContext,
00134         IN      
UINT                                    ByteOffset,
00135         IN      
UINT                                    BytesToTransfer
00136         );
00137 
00138 
typedef
00139 
NDIS_STATUS
00140 (*WM_TRANSFER_DATA_HANDLER)(
00141         
VOID
00142         );
00143 
00144 typedef struct _NDIS30_MINIPORT_CHARACTERISTICS
00145 {
00146         UCHAR                                           
MajorNdisVersion;
00147         UCHAR                                           
MinorNdisVersion;
00148         USHORT                                          Filler;
00149         UINT                                            Reserved;
00150         W_CHECK_FOR_HANG_HANDLER        CheckForHangHandler;
00151         W_DISABLE_INTERRUPT_HANDLER     DisableInterruptHandler;
00152         W_ENABLE_INTERRUPT_HANDLER      EnableInterruptHandler;
00153         W_HALT_HANDLER                          HaltHandler;
00154         W_HANDLE_INTERRUPT_HANDLER      HandleInterruptHandler;
00155         W_INITIALIZE_HANDLER            InitializeHandler;
00156         W_ISR_HANDLER                           ISRHandler;
00157         W_QUERY_INFORMATION_HANDLER QueryInformationHandler;
00158         W_RECONFIGURE_HANDLER           ReconfigureHandler;
00159         W_RESET_HANDLER                         ResetHandler;
00160         
union
00161 
        {
00162                 W_SEND_HANDLER                  SendHandler;
00163                 WM_SEND_HANDLER                 WanSendHandler;
00164         };
00165         W_SET_INFORMATION_HANDLER       SetInformationHandler;
00166         
union
00167 
        {
00168                 W_TRANSFER_DATA_HANDLER TransferDataHandler;
00169                 WM_TRANSFER_DATA_HANDLER WanTransferDataHandler;
00170         };
00171 } 
NDIS30_MINIPORT_CHARACTERISTICS;
00172 
00173 
00174 
00175 
00176 
typedef
00177 
VOID
00178 (*W_RETURN_PACKET_HANDLER)(
00179         IN      
NDIS_HANDLE                             MiniportAdapterContext,
00180         IN      
PNDIS_PACKET                    Packet
00181         );
00182 
00183 
00184 
00185 
00186 
typedef
00187 
VOID
00188 (*W_SEND_PACKETS_HANDLER)(
00189         IN      
NDIS_HANDLE                             MiniportAdapterContext,
00190         IN      
PPNDIS_PACKET                   PacketArray,
00191         IN      
UINT                                    NumberOfPackets
00192         );
00193 
00194 
typedef
00195 
VOID
00196 (*W_ALLOCATE_COMPLETE_HANDLER)(
00197         IN      
NDIS_HANDLE                             MiniportAdapterContext,
00198         IN      PVOID                                   VirtualAddress,
00199         IN      
PNDIS_PHYSICAL_ADDRESS  PhysicalAddress,
00200         IN      ULONG                                   Length,
00201         IN      PVOID                                   Context
00202         );
00203 
00204 typedef struct _NDIS40_MINIPORT_CHARACTERISTICS
00205 {
00206 
#ifdef __cplusplus
00207 
        NDIS30_MINIPORT_CHARACTERISTICS Ndis30Chars;
00208 
#else
00209         NDIS30_MINIPORT_CHARACTERISTICS;
00210 
#endif
00211 
        
00212         
00213         
00214         W_RETURN_PACKET_HANDLER         ReturnPacketHandler;
00215         W_SEND_PACKETS_HANDLER          SendPacketsHandler;
00216         W_ALLOCATE_COMPLETE_HANDLER     AllocateCompleteHandler;
00217 
00218 } 
NDIS40_MINIPORT_CHARACTERISTICS;
00219 
00220 
00221 
00222 
00223 
00224 
00225 
00226 
00227 
00228 
00229 
00230 
00231 
typedef
00232 
NDIS_STATUS
00233 (*W_CO_CREATE_VC_HANDLER)(
00234         IN      
NDIS_HANDLE                             MiniportAdapterContext,
00235         IN      
NDIS_HANDLE                             NdisVcHandle,
00236         OUT     
PNDIS_HANDLE                    MiniportVcContext
00237         );
00238 
00239 
typedef
00240 
NDIS_STATUS
00241 (*W_CO_DELETE_VC_HANDLER)(
00242         IN      
NDIS_HANDLE                             MiniportVcContext
00243         );
00244 
00245 
typedef
00246 
NDIS_STATUS
00247 (*W_CO_ACTIVATE_VC_HANDLER)(
00248         IN      
NDIS_HANDLE                             MiniportVcContext,
00249         IN OUT 
PCO_CALL_PARAMETERS      CallParameters
00250         );
00251 
00252 
typedef
00253 
NDIS_STATUS
00254 (*W_CO_DEACTIVATE_VC_HANDLER)(
00255         IN      
NDIS_HANDLE                             MiniportVcContext
00256         );
00257 
00258 
typedef
00259 
VOID
00260 (*W_CO_SEND_PACKETS_HANDLER)(
00261         IN      
NDIS_HANDLE                             MiniportVcContext,
00262         IN      
PPNDIS_PACKET                   PacketArray,
00263         IN      
UINT                                    NumberOfPackets
00264         );
00265 
00266 
typedef
00267 
NDIS_STATUS
00268 (*W_CO_REQUEST_HANDLER)(
00269         IN      
NDIS_HANDLE                             MiniportAdapterContext,
00270         IN      
NDIS_HANDLE                             MiniportVcContext       OPTIONAL,
00271         IN OUT 
PNDIS_REQUEST            NdisRequest
00272         );
00273 
00274 typedef struct _NDIS50_MINIPORT_CHARACTERISTICS
00275 {
00276 
#ifdef __cplusplus
00277 
        NDIS40_MINIPORT_CHARACTERISTICS Ndis40Chars;
00278 
#else
00279         NDIS40_MINIPORT_CHARACTERISTICS;
00280 
#endif
00281 
        
00282         
00283         
00284         W_CO_CREATE_VC_HANDLER          CoCreateVcHandler;
00285         W_CO_DELETE_VC_HANDLER          CoDeleteVcHandler;
00286         W_CO_ACTIVATE_VC_HANDLER        CoActivateVcHandler;
00287         W_CO_DEACTIVATE_VC_HANDLER      CoDeactivateVcHandler;
00288         W_CO_SEND_PACKETS_HANDLER       CoSendPacketsHandler;
00289         W_CO_REQUEST_HANDLER            CoRequestHandler;
00290 } 
NDIS50_MINIPORT_CHARACTERISTICS;
00291 
00292 
#ifdef NDIS50_MINIPORT
00293 
typedef struct _NDIS50_MINIPORT_CHARACTERISTICS NDIS_MINIPORT_CHARACTERISTICS;
00294 
#else
00295 
#ifdef NDIS40_MINIPORT
00296 
typedef struct _NDIS40_MINIPORT_CHARACTERISTICS NDIS_MINIPORT_CHARACTERISTICS;
00297 
#else
00298 typedef struct _NDIS30_MINIPORT_CHARACTERISTICS NDIS_MINIPORT_CHARACTERISTICS;
00299 
#endif
00300 
#endif
00301 typedef NDIS_MINIPORT_CHARACTERISTICS *
PNDIS_MINIPORT_CHARACTERISTICS;
00302 typedef NDIS_MINIPORT_CHARACTERISTICS   NDIS_WAN_MINIPORT_CHARACTERISTICS;
00303 
typedef NDIS_WAN_MINIPORT_CHARACTERISTICS *     
PNDIS_MINIPORT_CHARACTERISTICS;
00304 
00305 typedef struct _NDIS_MINIPORT_INTERRUPT
00306 {
00307         PKINTERRUPT                                     InterruptObject;
00308         KSPIN_LOCK                                      
DpcCountLock;
00309         PVOID                                           
MiniportIdField;
00310         W_ISR_HANDLER                           MiniportIsr;
00311         W_HANDLE_INTERRUPT_HANDLER      MiniportDpc;
00312         KDPC                                            InterruptDpc;
00313         PNDIS_MINIPORT_BLOCK            Miniport;
00314 
00315         UCHAR                                           
DpcCount;
00316         BOOLEAN                                         
Filler1;
00317 
00318         
00319         
00320         
00321 
00322         KEVENT                                          DpcsCompletedEvent;
00323 
00324         BOOLEAN                                         
SharedInterrupt;
00325         BOOLEAN                                         
IsrRequested;
00326 
00327 } 
NDIS_MINIPORT_INTERRUPT, *
PNDIS_MINIPORT_INTERRUPT;
00328 
00329 
00330 typedef struct _NDIS_MINIPORT_TIMER
00331 {
00332         KTIMER                                          Timer;
00333         KDPC                                            Dpc;
00334         PNDIS_TIMER_FUNCTION            MiniportTimerFunction;
00335         PVOID                                           
MiniportTimerContext;
00336         PNDIS_MINIPORT_BLOCK            Miniport;
00337         struct _NDIS_MINIPORT_TIMER     *
NextTimer;
00338 } 
NDIS_MINIPORT_TIMER, *
PNDIS_MINIPORT_TIMER;
00339 
00340 
typedef
00341 
VOID
00342 (*FILTER_PACKET_INDICATION_HANDLER)(
00343         IN      
NDIS_HANDLE                             Miniport,
00344         IN      
PPNDIS_PACKET                   PacketArray,
00345         IN      
UINT                                    NumberOfPackets
00346         );
00347 
00348 
typedef
00349 
VOID
00350 (*ETH_RCV_INDICATE_HANDLER)(
00351         IN      PETH_FILTER                             
Filter,
00352         IN      
NDIS_HANDLE                             MacReceiveContext,
00353         IN      PCHAR                                   Address,
00354         IN      PVOID                                   HeaderBuffer,
00355         IN      
UINT                                    HeaderBufferSize,
00356         IN      PVOID                                   LookaheadBuffer,
00357         IN      
UINT                                    LookaheadBufferSize,
00358         IN      
UINT                                    PacketSize
00359         );
00360 
00361 
typedef
00362 
VOID
00363 (*ETH_RCV_COMPLETE_HANDLER)(
00364         IN      PETH_FILTER                             
Filter
00365         );
00366 
00367 
typedef
00368 
VOID
00369 (*FDDI_RCV_INDICATE_HANDLER)(
00370         IN      PFDDI_FILTER                    
Filter,
00371         IN      
NDIS_HANDLE                             MacReceiveContext,
00372         IN      PCHAR                                   Address,
00373         IN      
UINT                                    AddressLength,
00374         IN      PVOID                                   HeaderBuffer,
00375         IN      
UINT                                    HeaderBufferSize,
00376         IN      PVOID                                   LookaheadBuffer,
00377         IN      
UINT                                    LookaheadBufferSize,
00378         IN      
UINT                                    PacketSize
00379         );
00380 
00381 
typedef
00382 
VOID
00383 (*FDDI_RCV_COMPLETE_HANDLER)(
00384         IN      PFDDI_FILTER                    
Filter
00385         );
00386 
00387 
typedef
00388 
VOID
00389 (*TR_RCV_INDICATE_HANDLER)(
00390         IN      PTR_FILTER                              
Filter,
00391         IN      
NDIS_HANDLE                             MacReceiveContext,
00392         IN      PVOID                                   HeaderBuffer,
00393         IN      
UINT                                    HeaderBufferSize,
00394         IN      PVOID                                   LookaheadBuffer,
00395         IN      
UINT                                    LookaheadBufferSize,
00396         IN      
UINT                                    PacketSize
00397         );
00398 
00399 
typedef
00400 
VOID
00401 (*TR_RCV_COMPLETE_HANDLER)(
00402         IN      PTR_FILTER                              
Filter
00403         );
00404 
00405 
typedef
00406 
VOID
00407 (*WAN_RCV_HANDLER)(
00408         OUT 
PNDIS_STATUS                        Status,
00409         IN 
NDIS_HANDLE                          MiniportAdapterHandle,
00410         IN 
NDIS_HANDLE                          NdisLinkContext,
00411         IN PUCHAR                                       Packet,
00412         IN ULONG                                        PacketSize
00413         );
00414 
00415 
typedef
00416 
VOID
00417 (*WAN_RCV_COMPLETE_HANDLER)(
00418         IN 
NDIS_HANDLE                          MiniportAdapterHandle,
00419         IN 
NDIS_HANDLE                          NdisLinkContext
00420         );
00421 
00422 
typedef
00423 
VOID
00424 (*NDIS_M_SEND_COMPLETE_HANDLER)(
00425         IN      
NDIS_HANDLE                             MiniportAdapterHandle,
00426         IN      
PNDIS_PACKET                    Packet,
00427         IN      
NDIS_STATUS                             Status
00428         );
00429 
00430 
typedef
00431 
VOID
00432 (*NDIS_WM_SEND_COMPLETE_HANDLER)(
00433         IN      
NDIS_HANDLE                             MiniportAdapterHandle,
00434         IN      PVOID                                   Packet,
00435         IN      
NDIS_STATUS                             Status
00436         );
00437 
00438 
typedef
00439 
VOID
00440 (*NDIS_M_TD_COMPLETE_HANDLER)(
00441         IN      
NDIS_HANDLE                             MiniportAdapterHandle,
00442         IN      
PNDIS_PACKET                    Packet,
00443         IN      
NDIS_STATUS                             Status,
00444         IN      
UINT                                    BytesTransferred
00445         );
00446 
00447 
typedef
00448 
VOID
00449 (*NDIS_M_SEND_RESOURCES_HANDLER)(
00450         IN      
NDIS_HANDLE                             MiniportAdapterHandle
00451         );
00452 
00453 
typedef
00454 
VOID
00455 (*NDIS_M_STATUS_HANDLER)(
00456         IN      
NDIS_HANDLE                             MiniportHandle,
00457         IN      
NDIS_STATUS                             GeneralStatus,
00458         IN      PVOID                                   StatusBuffer,
00459         IN      
UINT                                    StatusBufferSize
00460         );
00461 
00462 
typedef
00463 
VOID
00464 (*NDIS_M_STS_COMPLETE_HANDLER)(
00465         IN      
NDIS_HANDLE                             MiniportAdapterHandle
00466         );
00467 
00468 
typedef
00469 
VOID
00470 (*NDIS_M_REQ_COMPLETE_HANDLER)(
00471         IN      
NDIS_HANDLE                             MiniportAdapterHandle,
00472         IN      
NDIS_STATUS                             Status
00473         );
00474 
00475 
typedef
00476 
VOID
00477 (*NDIS_M_RESET_COMPLETE_HANDLER)(
00478         IN      
NDIS_HANDLE                             MiniportAdapterHandle,
00479         IN      
NDIS_STATUS                             Status,
00480         IN      BOOLEAN                                 AddressingReset
00481         );
00482 
00483 
typedef
00484 
VOID
00485 (
FASTCALL *
NDIS_M_PROCESS_DEFERRED)(
00486         IN      
PNDIS_MINIPORT_BLOCK    Miniport
00487         );
00488 
00489 
typedef
00490 BOOLEAN
00491 (
FASTCALL *
NDIS_M_START_SENDS)(
00492         IN      
PNDIS_MINIPORT_BLOCK    Miniport
00493         );
00494 
00495 
00496 
00497 
00498 typedef enum _NDIS_WORK_ITEM_TYPE
00499 {
00500         
NdisWorkItemRequest,
00501         
NdisWorkItemSend,
00502         
NdisWorkItemReturnPackets,
00503         
NdisWorkItemResetRequested,
00504         
NdisWorkItemResetInProgress,
00505         
NdisWorkItemHalt,
00506 
#if !(NDIS_NT)
00507 
        NdisWorkItemSendLoopback,
00508 
#endif
00509 
        NdisWorkItemMiniportCallback,
00510         
NdisMaxWorkItems
00511 } 
NDIS_WORK_ITEM_TYPE, *
PNDIS_WORK_ITEM_TYPE;
00512 
00513 
00514 #define NUMBER_OF_WORK_ITEM_TYPES       NdisMaxWorkItems
00515 #define NUMBER_OF_SINGLE_WORK_ITEMS     6
00516 
00517 
00518 
00519 
00520 typedef struct _NDIS_MINIPORT_WORK_ITEM
00521 {
00522         
00523         
00524         
00525         SINGLE_LIST_ENTRY       
Link;
00526 
00527         
00528         
00529         
00530         NDIS_WORK_ITEM_TYPE WorkItemType;
00531         PVOID                           
WorkItemContext;
00532 } 
NDIS_MINIPORT_WORK_ITEM, *
PNDIS_MINIPORT_WORK_ITEM;
00533 
00534 
typedef
00535 
NDIS_STATUS
00536 (
FASTCALL *
NDIS_M_QUEUE_WORK_ITEM)(
00537         IN      
PNDIS_MINIPORT_BLOCK    Miniport,
00538         IN      
NDIS_WORK_ITEM_TYPE             WorkItemType,
00539         IN      PVOID                                   WorkItemContext
00540         );
00541 
00542 
typedef
00543 
NDIS_STATUS
00544 (
FASTCALL *
NDIS_M_QUEUE_NEW_WORK_ITEM)(
00545         IN      
PNDIS_MINIPORT_BLOCK    Miniport,
00546         IN      
NDIS_WORK_ITEM_TYPE     WorkItemType,
00547         IN      PVOID                                   WorkItemContext
00548         );
00549 
00550 
typedef
00551 
VOID
00552 (
FASTCALL *
NDIS_M_DEQUEUE_WORK_ITEM)(
00553         IN      
PNDIS_MINIPORT_BLOCK    Miniport,
00554         IN      
NDIS_WORK_ITEM_TYPE             WorkItemType,
00555         OUT PVOID       *                               WorkItemContext
00556         );
00557 
00558 
#if defined(NDIS_WRAPPER)
00559 
00560 
00561 
00562 
00563 
typedef struct _NDIS_LOG
00564 {
00565         
PNDIS_MINIPORT_BLOCK            Miniport;       
00566         KSPIN_LOCK                                      LogLock;        
00567         
PIRP                                            Irp;            
00568         
UINT                                            TotalSize;      
00569         
UINT                                            CurrentSize;
00570         
UINT                                            InPtr;          
00571         
UINT                                            OutPtr;         
00572         UCHAR                                           LogBuf[1];      
00573 } NDIS_LOG, *PNDIS_LOG;
00574 
00575 
00576 
00577 
00578 
#define ARC_SEND_BUFFERS                        8
00579 
#define ARC_HEADER_SIZE                         4
00580 
00581 
typedef struct _NDIS_ARC_BUF
00582 {
00583         
NDIS_HANDLE                                     ArcnetBufferPool;
00584         PUCHAR                                          ArcnetLookaheadBuffer;
00585         
UINT                                            NumFree;
00586         ARC_BUFFER_LIST                         ArcnetBuffers[ARC_SEND_BUFFERS];
00587 } NDIS_ARC_BUF, *PNDIS_ARC_BUF;
00588 
00589 
#endif
00590 
00591 typedef struct _NDIS_BIND_PATHS
00592 {
00593         UINT                                            Number;
00594         NDIS_STRING                                     Paths[1];
00595 } 
NDIS_BIND_PATHS, *
PNDIS_BIND_PATHS;
00596 
00597 
00598 
00599 
00600 typedef struct
00601 
{
00602         
union
00603 
        {
00604                 PETH_FILTER                             EthDB;
00605                 PNULL_FILTER                    NullDB;                         
00606         };
00607         PTR_FILTER                                      TrDB;
00608         PFDDI_FILTER                            FddiDB;
00609         PARC_FILTER                                     ArcDB;
00610 } 
FILTERDBS, *
PFILTERDBS;
00611 
00612 
00613 
00614 
00615 struct _NDIS_MINIPORT_BLOCK
00616 {
00617         ULONG                                           
NullValue;                      
00618         PNDIS_MINIPORT_BLOCK            NextMiniport;           
00619         PNDIS_M_DRIVER_BLOCK            DriverHandle;           
00620         NDIS_HANDLE                                     MiniportAdapterContext; 
00621         UNICODE_STRING                          
MiniportName;           
00622         PNDIS_BIND_PATHS                        BindPaths;
00623         NDIS_HANDLE                                     OpenQueue;                      
00624         REFERENCE                                       Ref;                            
00625 
00626         NDIS_HANDLE                                     DeviceContext;          
00627 
00628         UCHAR                                           
Padding1;                       
00629 
00630         
00631         
00632         
00633         
00634         
00635         UCHAR                                           
LockAcquired;           
00636 
00637         UCHAR                                           
PmodeOpens;                     
00638 
00639         
00640         
00641         
00642         
00643         UCHAR                                           
AssignedProcessor;
00644 
00645         KSPIN_LOCK                                      
Lock;
00646 
00647         PNDIS_REQUEST                           MediaRequest;
00648 
00649         PNDIS_MINIPORT_INTERRUPT        Interrupt;
00650 
00651         ULONG                                           
Flags;                          
00652                                                                                                         
00653         ULONG                                           
PnPFlags;
00654 
00655         
00656         
00657         
00658         LIST_ENTRY                                      
PacketList;
00659         PNDIS_PACKET                            FirstPendingPacket; 
00660                                                                                                         
00661         PNDIS_PACKET                            ReturnPacketsQueue;
00662 
00663         
00664         
00665         
00666         ULONG                                           
RequestBuffer;
00667         PVOID                                           
SetMCastBuffer;
00668 
00669         PNDIS_MINIPORT_BLOCK            PrimaryMiniport;
00670         PVOID                                           
WrapperContext;
00671 
00672         
00673         
00674         
00675         PVOID                                           
BusDataContext;
00676         
00677         
00678         
00679         
00680         ULONG                                           
PnPCapabilities;
00681 
00682         
00683         
00684         
00685         PCM_RESOURCE_LIST                       
Resources;
00686 
00687         
00688         
00689         
00690         NDIS_TIMER                                      WakeUpDpcTimer;
00691 
00692         
00693         
00694         
00695         
00696         
00697         
00698         
00699         
00700         UNICODE_STRING                          
BaseName;
00701         UNICODE_STRING                          
SymbolicLinkName;
00702 
00703         
00704         
00705         
00706         ULONG                                           
CheckForHangSeconds;
00707         USHORT                                          CFHangTicks;
00708         USHORT                                          CFHangCurrentTick;
00709 
00710         
00711         
00712         
00713         NDIS_STATUS                                     ResetStatus;
00714         NDIS_HANDLE                                     ResetOpen;
00715 
00716         
00717         
00718         
00719 
#ifdef __cplusplus
00720 
        FILTERDBS                                       FilterDbs;                      
00721 
#else
00722         FILTERDBS;                                                                              
00723 
#endif
00724 
00725         FILTER_PACKET_INDICATION_HANDLER PacketIndicateHandler;
00726         NDIS_M_SEND_COMPLETE_HANDLER    SendCompleteHandler;
00727         NDIS_M_SEND_RESOURCES_HANDLER   SendResourcesHandler;
00728         NDIS_M_RESET_COMPLETE_HANDLER   ResetCompleteHandler;
00729 
00730         NDIS_MEDIUM                                     
MediaType;
00731 
00732         
00733         
00734         
00735         ULONG                                           
BusNumber;
00736         NDIS_INTERFACE_TYPE                     BusType;
00737         NDIS_INTERFACE_TYPE                     AdapterType;
00738 
00739         PDEVICE_OBJECT                          DeviceObject;
00740         PDEVICE_OBJECT                          PhysicalDeviceObject;
00741         PDEVICE_OBJECT                          NextDeviceObject;
00742 
00743         
00744         
00745         
00746         PMAP_REGISTER_ENTRY                     MapRegisters;   
00747 
00748         
00749         
00750         
00751         PNDIS_AF_LIST                           CallMgrAfList;
00752 
00753         PVOID                                           
MiniportThread;
00754         PVOID                                           
SetInfoBuf;
00755         USHORT                                          SetInfoBufLen;
00756         USHORT                                          MaxSendPackets;
00757 
00758         
00759         
00760         
00761         NDIS_STATUS                                     FakeStatus;
00762 
00763         PVOID                                           
LockHandler;            
00764 
00765         
00766         
00767         
00768         
00769         PUNICODE_STRING                         
pAdapterInstanceName;   
00770 
00771         PADAPTER_OBJECT                         SystemAdapterObject;
00772 
00773         UINT                                            MacOptions;
00774 
00775         
00776         
00777         
00778         PNDIS_REQUEST                           PendingRequest;
00779         UINT                                            MaximumLongAddresses;
00780         UINT                                            MaximumShortAddresses;
00781         UINT                                            CurrentLookahead;
00782         UINT                                            MaximumLookahead;
00783 
00784         
00785         
00786         
00787         W_HANDLE_INTERRUPT_HANDLER      HandleInterruptHandler;
00788         W_DISABLE_INTERRUPT_HANDLER     DisableInterruptHandler;
00789         W_ENABLE_INTERRUPT_HANDLER      EnableInterruptHandler;
00790         W_SEND_PACKETS_HANDLER          SendPacketsHandler;
00791         NDIS_M_START_SENDS                      DeferredSendHandler;
00792 
00793         
00794         
00795         
00796         ETH_RCV_INDICATE_HANDLER        EthRxIndicateHandler;   
00797         TR_RCV_INDICATE_HANDLER         TrRxIndicateHandler;    
00798         FDDI_RCV_INDICATE_HANDLER       FddiRxIndicateHandler;  
00799 
00800         ETH_RCV_COMPLETE_HANDLER        EthRxCompleteHandler;   
00801         TR_RCV_COMPLETE_HANDLER         TrRxCompleteHandler;    
00802         FDDI_RCV_COMPLETE_HANDLER       FddiRxCompleteHandler;  
00803 
00804         NDIS_M_STATUS_HANDLER           StatusHandler;                  
00805         NDIS_M_STS_COMPLETE_HANDLER     StatusCompleteHandler;  
00806         NDIS_M_TD_COMPLETE_HANDLER      TDCompleteHandler;              
00807         NDIS_M_REQ_COMPLETE_HANDLER     QueryCompleteHandler;   
00808         NDIS_M_REQ_COMPLETE_HANDLER     SetCompleteHandler;             
00809 
00810         NDIS_WM_SEND_COMPLETE_HANDLER WanSendCompleteHandler;
00811         WAN_RCV_HANDLER                         WanRcvHandler;                  
00812         WAN_RCV_COMPLETE_HANDLER        WanRcvCompleteHandler;  
00813 
00814         
00815         
00816         
00817         
00818         
00819         
00820 
#if defined(NDIS_WRAPPER)
00821 
00822         
00823         
00824         
00825         SINGLE_LIST_ENTRY                       WorkQueue[
NUMBER_OF_WORK_ITEM_TYPES];
00826         SINGLE_LIST_ENTRY                       SingleWorkItems[
NUMBER_OF_SINGLE_WORK_ITEMS];
00827 
00828         
PNDIS_MAC_BLOCK                         FakeMac;
00829 
00830         UCHAR                                           SendFlags;
00831         UCHAR                                           TrResetRing;
00832         UCHAR                                           ArcnetAddress;
00833 
00834         
union
00835 
        {
00836                 PNDIS_ARC_BUF                   ArcBuf;
00837                 
00838                 
00839                 
00840 
#if NDIS_NT
00841 
                PVOID                                   BusInterface;
00842 
#else
00843 
                PVOID                                   PhysicalAddressArray;
00844 
#endif
00845 
        };
00846 
00847         
00848         
00849         
00850         ULONG                                           ChannelNumber;
00851 
00852         PNDIS_LOG                                       Log;
00853 
00854         
00855         
00856         
00857         ULONG                                           BusId;
00858         ULONG                                           SlotNumber;
00859 
00860         PCM_RESOURCE_LIST                       AllocatedResources;
00861         PCM_RESOURCE_LIST                       AllocatedResourcesTranslated;
00862 
00863         
00864         
00865         
00866         
00867         SINGLE_LIST_ENTRY                       PatternList;
00868 
00869         
00870         
00871         
00872         NDIS_PNP_CAPABILITIES           PMCapabilities;
00873 
00874         
00875         
00876         
00877         
DEVICE_CAPABILITIES                     DeviceCaps;
00878 
00879         
00880         
00881         
00882         ULONG                                           WakeUpEnable;
00883 
00884         
00885         
00886         
00887         DEVICE_POWER_STATE                      CurrentDeviceState;
00888 
00889         
00890         
00891         
00892         
00893         
00894         
PIRP                                            pIrpWaitWake;
00895 
00896         SYSTEM_POWER_STATE                      WaitWakeSystemState;
00897 
00898         
00899         
00900         
00901         
00902         
00903 
00904         LARGE_INTEGER                           VcIndex;                                
00905         KSPIN_LOCK                                      VcCountLock;                    
00906         LIST_ENTRY                                      WmiEnabledVcs;                  
00907         PNDIS_GUID                                      pNdisGuidMap;                   
00908                                                                                                                 
00909                                                                                                                 
00910         PNDIS_GUID                                      pCustomGuidMap;                 
00911                                                                                                                 
00912                                                                                                                 
00913         
USHORT                                          VcCount;                                
00914 
00915         
USHORT                                          cNdisGuidMap;                   
00916         
USHORT                                          cCustomGuidMap;                 
00917 
00918         
00919         
00920         
00921         
USHORT                                          CurrentMapRegister;
00922         
PKEVENT                                         AllocationEvent;
00923 
00924         
USHORT                                          PhysicalMapRegistersNeeded;
00925         
USHORT                      SGMapRegistersNeeded;
00926         ULONG                                           MaximumPhysicalMapping;
00927 
00928         
00929         
00930         
00931         
NDIS_TIMER                                      MediaDisconnectTimer;
00932 
00933         
00934         
00935         
00936         
00937         
USHORT                                          MediaDisconnectTimeOut;
00938 
00939         
00940         
00941         
00942         
USHORT                                          InstanceNumber;
00943 
00944         
00945         
00946         
00947         
NDIS_EVENT                                      OpenReadyEvent;
00948 
00949         
00950         
00951         
00952         NDIS_PNP_DEVICE_STATE           PnPDeviceState;
00953         
00954         
00955         
00956         
00957         NDIS_PNP_DEVICE_STATE           OldPnPDeviceState;
00958         
00959         
00960         
00961         
00962     
PGET_SET_DEVICE_DATA                SetBusData;
00963     
PGET_SET_DEVICE_DATA                GetBusData;
00964 
00965         POID_LIST                                       OidList;
00966 
00967         
KDPC                                            DeferredDpc;
00968 
00969         
00970         
00971         
00972         NDIS_STATS                                      NdisStats;
00973 
00974         
00975         
00976         
00977         
PNDIS_PACKET                            IndicatedPacket[
MAXIMUM_PROCESSORS];
00978 
00979         
00980         
00981         
00982         
00983         
PKEVENT                                         RemoveReadyEvent;
00984 
00985         
00986         
00987         
00988         
PKEVENT                                         AllOpensClosedEvent;
00989 
00990         
00991         
00992         
00993         
PKEVENT                                         AllRequestsCompletedEvent;
00994 
00995         
00996         
00997         
00998         ULONG                                           InitTimeMs;
00999 
01000         
NDIS_MINIPORT_WORK_ITEM         WorkItemBuffer[
NUMBER_OF_SINGLE_WORK_ITEMS];
01001         
PNDIS_MINIPORT_TIMER            TimerQueue;
01002         
01003         
01004         
01005         
01006         ULONG                                           DriverVerifyFlags;
01007 
01008         
01009         
01010         
01011         
PNDIS_MINIPORT_BLOCK            NextGlobalMiniport;
01012         
01013         
01014         
01015         
01016         
01017         
USHORT                                          InternalResetCount;
01018         
USHORT                                          MiniportResetCount;
01019 
01020         
USHORT                                          MediaSenseConnectCount;
01021         
USHORT                                          MediaSenseDisconnectCount;
01022 
01023         
PNDIS_PACKET    *                       xPackets;
01024 
01025         
01026         
01027         
01028         ULONG                                           UserModeOpenReferences;
01029 
01030 
#if     LOCK_DBG
01031 
        ULONG                                           LockDbg;
01032         ULONG                                           LockDbgX;
01033         PVOID                                           LockThread;
01034 
#endif
01035 
01036 
#if !(NDIS_NT)
01037 
        PNDIS_PACKET                            LoopbackHead;
01038         
PNDIS_PACKET                            LoopbackTail;
01039 
#endif
01040 
01041 
#endif // NDIS_WRAPPER defined
01042 
};
01043 
01044 
01045 
01046 
01047 
typedef
01048 
VOID
01049 (*W_MINIPORT_CALLBACK)(
01050         IN      
NDIS_HANDLE                             MiniportAdapterContext,
01051         IN      PVOID                                   CallbackContext
01052         );
01053 
01054 
01055 
01056 
01057 
EXPORT
01058 
NDIS_STATUS
01059 
NdisIMQueueMiniportCallback(
01060         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01061         IN      
W_MINIPORT_CALLBACK             CallbackRoutine,
01062         IN      PVOID                                   CallbackContext
01063         );
01064 
01065 
EXPORT
01066 BOOLEAN
01067 
NdisIMSwitchToMiniport(
01068         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01069         OUT     PNDIS_HANDLE                    SwitchHandle
01070         );
01071 
01072 
EXPORT
01073 
VOID
01074 
NdisIMRevertBack(
01075         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01076         IN      NDIS_HANDLE                             SwitchHandle
01077         );
01078 
01079 
EXPORT
01080 
NDIS_STATUS
01081 
NdisIMRegisterLayeredMiniport(
01082         IN      NDIS_HANDLE                             NdisWrapperHandle,
01083         IN      PNDIS_MINIPORT_CHARACTERISTICS MiniportCharacteristics,
01084         IN      UINT                                    CharacteristicsLength,
01085         OUT PNDIS_HANDLE                        DriverHandle
01086         );
01087 
01088 
EXPORT
01089 
VOID
01090 
NdisIMDeregisterLayeredMiniport(
01091         IN      NDIS_HANDLE                     DriverHandle
01092         );
01093 
01094 
EXPORT
01095 
VOID
01096 
NdisIMAssociateMiniport(
01097         IN      NDIS_HANDLE                     DriverHandle,
01098         IN      NDIS_HANDLE                     ProtocolHandle
01099         );
01100 
01101 
EXPORT
01102 
NDIS_STATUS
01103 
NdisMRegisterDevice(
01104         IN      NDIS_HANDLE                             NdisWrapperHandle,
01105         IN      PNDIS_STRING                    DeviceName,
01106         IN      PNDIS_STRING                    SymbolicName,
01107         IN      PDRIVER_DISPATCH                MajorFunctions[],
01108         OUT     
PDEVICE_OBJECT          *       pDeviceObject,
01109         OUT     NDIS_HANDLE                     *       NdisDeviceHandle
01110         );
01111 
01112 
EXPORT
01113 
NDIS_STATUS
01114 
NdisMDeregisterDevice(
01115         IN      NDIS_HANDLE                             NdisDeviceHandle
01116         );
01117 
01118 
EXPORT
01119 
VOID
01120 
NdisMRegisterUnloadHandler(
01121         IN      NDIS_HANDLE                             NdisWrapperHandle,
01122         IN      PDRIVER_UNLOAD                  UnloadHandler
01123         );
01124 
01125 
01126 
01127 
01128 typedef UCHAR   
NDIS_DMA_SIZE;
01129 
01130 #define NDIS_DMA_24BITS                         ((NDIS_DMA_SIZE)0)
01131 #define NDIS_DMA_32BITS                         ((NDIS_DMA_SIZE)1)
01132 #define NDIS_DMA_64BITS                         ((NDIS_DMA_SIZE)2)
01133 
01134 
EXPORT
01135 
NDIS_STATUS
01136 
NdisMAllocateMapRegisters(
01137         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01138         IN      UINT                                    DmaChannel,
01139         IN      NDIS_DMA_SIZE                   DmaSize,
01140         IN      ULONG                                   PhysicalMapRegistersNeeded,
01141         IN      ULONG                                   MaximumPhysicalMapping
01142         );
01143 
01144 
EXPORT
01145 
VOID
01146 
NdisMFreeMapRegisters(
01147         IN      NDIS_HANDLE                             MiniportAdapterHandle
01148         );
01149 
01150 
EXPORT
01151 
NDIS_STATUS
01152 
NdisMInitializeScatterGatherDma(
01153         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01154         IN      BOOLEAN                                 Dma64BitAddresses,
01155         IN      ULONG                                   MaximumPhysicalMapping
01156         );
01157 
01158 
EXPORT
01159 
NDIS_STATUS
01160 
NdisMRegisterIoPortRange(
01161         OUT PVOID *                                     PortOffset,
01162         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01163         IN      UINT                                    InitialPort,
01164         IN      UINT                                    NumberOfPorts
01165         );
01166 
01167 
EXPORT
01168 
VOID
01169 
NdisMDeregisterIoPortRange(
01170         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01171         IN      UINT                                    InitialPort,
01172         IN      UINT                                    NumberOfPorts,
01173         IN      PVOID                                   PortOffset
01174         );
01175 
01176 
EXPORT
01177 
NDIS_STATUS
01178 
NdisMMapIoSpace(
01179         OUT PVOID *                                     VirtualAddress,
01180         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01181         IN      NDIS_PHYSICAL_ADDRESS   PhysicalAddress,
01182         IN      UINT                                    Length
01183         );
01184 
01185 
EXPORT
01186 
VOID
01187 
NdisMUnmapIoSpace(
01188         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01189         IN      PVOID                                   VirtualAddress,
01190         IN      UINT                                    Length
01191         );
01192 
01193 
EXPORT
01194 
NDIS_STATUS
01195 
NdisMRegisterInterrupt(
01196         OUT     PNDIS_MINIPORT_INTERRUPT Interrupt,
01197         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01198         IN      UINT                                    InterruptVector,
01199         IN      UINT                                    InterruptLevel,
01200         IN      BOOLEAN                                 RequestIsr,
01201         IN      BOOLEAN                                 SharedInterrupt,
01202         IN      NDIS_INTERRUPT_MODE             InterruptMode
01203         );
01204 
01205 
EXPORT
01206 
VOID
01207 
NdisMDeregisterInterrupt(
01208         IN      PNDIS_MINIPORT_INTERRUPT Interrupt
01209         );
01210 
01211 
EXPORT
01212 BOOLEAN
01213 
NdisMSynchronizeWithInterrupt(
01214         IN      PNDIS_MINIPORT_INTERRUPT Interrupt,
01215         IN      PVOID                                   SynchronizeFunction,
01216         IN      PVOID                                   SynchronizeContext
01217         );
01218 
01219 
01220 
EXPORT
01221 
VOID
01222 
NdisMQueryAdapterResources(
01223         OUT PNDIS_STATUS                        Status,
01224         IN      NDIS_HANDLE                             WrapperConfigurationContext,
01225         OUT PNDIS_RESOURCE_LIST         ResourceList,
01226         IN      OUT PUINT                               BufferSize
01227         );
01228 
01229 
01230 
01231 
01232 
01233 
01234 
01235 
01236 
01237 #define NdisMSetTimer(_Timer, _Delay)   NdisSetTimer((PNDIS_TIMER)_Timer, _Delay)
01238 
01239 
VOID
01240 
NdisMSetPeriodicTimer(
01241         IN      PNDIS_MINIPORT_TIMER     Timer,
01242         IN      UINT                                     MillisecondPeriod
01243         );
01244 
01245 
EXPORT
01246 
VOID
01247 
NdisMInitializeTimer(
01248         IN      OUT PNDIS_MINIPORT_TIMER Timer,
01249         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01250         IN      PNDIS_TIMER_FUNCTION    TimerFunction,
01251         IN      PVOID                                   FunctionContext
01252         );
01253 
01254 
EXPORT
01255 
VOID
01256 
NdisMCancelTimer(
01257         IN      PNDIS_MINIPORT_TIMER    Timer,
01258         OUT PBOOLEAN                            TimerCancelled
01259         );
01260 
01261 
EXPORT
01262 
VOID
01263 
NdisMSleep(
01264         IN      ULONG                                   MicrosecondsToSleep
01265         );
01266 
01267 
01268 
01269 
01270 
EXPORT
01271 
VOID
01272 
NdisMStartBufferPhysicalMapping(
01273         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01274         IN      
PNDIS_BUFFER                    Buffer,
01275         IN      ULONG                                   PhysicalMapRegister,
01276         IN      BOOLEAN                                 WriteToDevice,
01277         OUT 
PNDIS_PHYSICAL_ADDRESS_UNIT PhysicalAddressArray,
01278         OUT PUINT                                       ArraySize
01279         );
01280 
01281 
EXPORT
01282 
VOID
01283 
NdisMCompleteBufferPhysicalMapping(
01284         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01285         IN      
PNDIS_BUFFER                    Buffer,
01286         IN      ULONG                                   PhysicalMapRegister
01287         );
01288 
01289 
01290 
01291 
01292 
01293 
EXPORT
01294 
VOID
01295 
NdisMAllocateSharedMemory(
01296         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01297         IN      ULONG                                   Length,
01298         IN      BOOLEAN                                 Cached,
01299         OUT PVOID *                                     VirtualAddress,
01300         OUT PNDIS_PHYSICAL_ADDRESS      PhysicalAddress
01301         );
01302 
01303 
EXPORT
01304 
NDIS_STATUS
01305 
NdisMAllocateSharedMemoryAsync(
01306         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01307         IN      ULONG                                   Length,
01308         IN      BOOLEAN                                 Cached,
01309         IN      PVOID                                   Context
01310         );
01311 
01312 
01313 
01314 
01315 
01316 
01317 
01318 
01319 
01320 
01321 #define NdisMUpdateSharedMemory(_H, _L, _V, _P) NdisUpdateSharedMemory(_H, _L, _V, _P)
01322 
01323 
01324 
EXPORT
01325 
VOID
01326 
NdisMFreeSharedMemory(
01327         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01328         IN      ULONG                                   Length,
01329         IN      BOOLEAN                                 Cached,
01330         IN      PVOID                                   VirtualAddress,
01331         IN      NDIS_PHYSICAL_ADDRESS   PhysicalAddress
01332         );
01333 
01334 
01335 
01336 
01337 
01338 
EXPORT
01339 
NDIS_STATUS
01340 
NdisMRegisterDmaChannel(
01341         OUT PNDIS_HANDLE                        MiniportDmaHandle,
01342         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01343         IN      UINT                                    DmaChannel,
01344         IN      BOOLEAN                                 Dma32BitAddresses,
01345         IN      
PNDIS_DMA_DESCRIPTION   DmaDescription,
01346         IN      ULONG                                   MaximumLength
01347         );
01348 
01349 
01350 
EXPORT
01351 
VOID
01352 
NdisMDeregisterDmaChannel(
01353         IN      NDIS_HANDLE                             MiniportDmaHandle
01354         );
01355 
01356 
01357 
01358 
01359 
01360 
01361 
01362 
01363 
01364 
01365 
01366 
01367 #define NdisMSetupDmaTransfer(_S, _H, _B, _O, _L, _M_) \
01368 
                NdisSetupDmaTransfer(_S, _H, _B, _O, _L, _M_)
01369 
01370 
01371 
01372 
01373 
01374 
01375 
01376 
01377 
01378 
01379 
01380 
01381 #define NdisMCompleteDmaTransfer(_S, _H, _B, _O, _L, _M_) \
01382 
                NdisCompleteDmaTransfer(_S, _H, _B, _O, _L, _M_)
01383 
01384 
EXPORT
01385 ULONG
01386 
NdisMReadDmaCounter(
01387         IN      NDIS_HANDLE                             MiniportDmaHandle
01388         );
01389 
01390 
01391 
01392 
01393 
01394 #define NdisMInitializeWrapper(_a,_b,_c,_d) NdisInitializeWrapper((_a),(_b),(_c),(_d))
01395 
01396 
EXPORT
01397 
NDIS_STATUS
01398 
NdisMRegisterMiniport(
01399         IN      NDIS_HANDLE                             NdisWrapperHandle,
01400         IN      PNDIS_MINIPORT_CHARACTERISTICS MiniportCharacteristics,
01401         IN      UINT                                    CharacteristicsLength
01402         );
01403 
01404 
01405 
01406 
01407 
01408 
01409 
01410 #define NdisIMInitializeDeviceInstance(_H_, _I_)        \
01411 
                                                                NdisIMInitializeDeviceInstanceEx(_H_, _I_, NULL)
01412 
01413 
EXPORT
01414 
NDIS_STATUS
01415 
NdisIMInitializeDeviceInstanceEx(
01416         IN      NDIS_HANDLE                             DriverHandle,
01417         IN      PNDIS_STRING                    DriverInstance,
01418         IN      NDIS_HANDLE                             DeviceContext   OPTIONAL
01419         );
01420 
01421 
EXPORT
01422 
NDIS_STATUS
01423 
NdisIMCancelInitializeDeviceInstance(
01424         IN      NDIS_HANDLE                             DriverHandle,
01425         IN      PNDIS_STRING                    DeviceInstance
01426         );
01427 
01428 
EXPORT
01429 
NDIS_HANDLE
01430 
NdisIMGetDeviceContext(
01431         IN      NDIS_HANDLE                             MiniportAdapterHandle
01432         );
01433 
01434 
EXPORT
01435 
NDIS_HANDLE
01436 
NdisIMGetBindingContext(
01437         IN      NDIS_HANDLE                             NdisBindingHandle
01438         );
01439 
01440 
EXPORT
01441 
NDIS_STATUS
01442 
NdisIMDeInitializeDeviceInstance(
01443         IN      NDIS_HANDLE                             NdisMiniportHandle
01444         );
01445 
01446 
EXPORT
01447 
VOID
01448 
NdisIMCopySendPerPacketInfo(
01449         IN 
PNDIS_PACKET DstPacket,
01450         IN 
PNDIS_PACKET SrcPacket
01451         );
01452 
01453 
EXPORT
01454 
VOID
01455 
NdisIMCopySendCompletePerPacketInfo(
01456         IN 
PNDIS_PACKET DstPacket, 
01457         
PNDIS_PACKET SrcPacket
01458         );             
01459 
01460 
01461 
01462 
01463 
01464 
01465 
01466 
01467 
01468 #define NdisMSetAttributes(_H_, _C_, _M_, _T_)                                                                          \
01469 
                                                NdisMSetAttributesEx(_H_,                                                                       \
01470 
                                                                                         _C_,                                                                   \
01471 
                                                                                         0,                                                                             \
01472 
                                                                                         (_M_) ? NDIS_ATTRIBUTE_BUS_MASTER : 0, \
01473 
                                                                                         _T_)                                                                   \
01474 
01475 
01476 
EXPORT
01477 
VOID
01478 
NdisMSetAttributesEx(
01479         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01480         IN      NDIS_HANDLE                             MiniportAdapterContext,
01481         IN      UINT                                    CheckForHangTimeInSeconds OPTIONAL,
01482         IN      ULONG                                   AttributeFlags,
01483         IN      NDIS_INTERFACE_TYPE             AdapterType     OPTIONAL
01484         );
01485 
01486 #define NDIS_ATTRIBUTE_IGNORE_PACKET_TIMEOUT            0x00000001
01487 #define NDIS_ATTRIBUTE_IGNORE_REQUEST_TIMEOUT           0x00000002
01488 #define NDIS_ATTRIBUTE_IGNORE_TOKEN_RING_ERRORS         0x00000004
01489 #define NDIS_ATTRIBUTE_BUS_MASTER                                       0x00000008
01490 #define NDIS_ATTRIBUTE_INTERMEDIATE_DRIVER                      0x00000010
01491 #define NDIS_ATTRIBUTE_DESERIALIZE                                      0x00000020
01492 #define NDIS_ATTRIBUTE_NO_HALT_ON_SUSPEND                       0x00000040
01493 
01494 
EXPORT
01495 
NDIS_STATUS
01496 
NdisMSetMiniportSecondary(
01497         IN      NDIS_HANDLE                             MiniportHandle,
01498         IN      NDIS_HANDLE                             PrimaryMiniportHandle
01499         );
01500 
01501 
EXPORT
01502 
NDIS_STATUS
01503 
NdisMPromoteMiniport(
01504         IN      NDIS_HANDLE                             MiniportHandle
01505         );
01506 
01507 
EXPORT
01508 
NDIS_STATUS
01509 
NdisMRemoveMiniport(
01510         IN      NDIS_HANDLE                             MiniportHandle
01511         );
01512 
01513 #define NdisMSendComplete(_M, _P, _S)   (*((PNDIS_MINIPORT_BLOCK)(_M))->SendCompleteHandler)(_M, _P, _S)
01514 
01515 #define NdisMSendResourcesAvailable(_M) (*((PNDIS_MINIPORT_BLOCK)(_M))->SendResourcesHandler)(_M)
01516 
01517 #define NdisMResetComplete(_M, _S, _A)  (*((PNDIS_MINIPORT_BLOCK)(_M))->ResetCompleteHandler)(_M, _S, _A)
01518 
01519 #define NdisMTransferDataComplete(_M, _P, _S, _B)       \
01520 
                                                                                (*((PNDIS_MINIPORT_BLOCK)(_M))->TDCompleteHandler)(_M, _P, _S, _B)
01521 
01522 
01523 
01524 
01525 
01526 
01527 
01528 
01529 
01530 
01531 
01532 
01533 #define NdisMWanSendComplete(_M_, _P_, _S_)                                                                                             \
01534 
                                (*((PNDIS_MINIPORT_BLOCK)(_M_))->WanSendCompleteHandler)(_M_, _P_, _S_)
01535 
01536 #define NdisMQueryInformationComplete(_M, _S)   \
01537 
                                                                                (*((PNDIS_MINIPORT_BLOCK)(_M))->QueryCompleteHandler)(_M, _S)
01538 
01539 #define NdisMSetInformationComplete(_M, _S)     \
01540 
                                                                                (*((PNDIS_MINIPORT_BLOCK)(_M))->SetCompleteHandler)(_M, _S)
01541 
01542 
01543 
01544 
01545 
01546 
01547 
01548 
01549 
01550 
01551 
01552 #define NdisMIndicateReceivePacket(_H, _P, _N)                                                                  \
01553 
{                                                                                                                                                               \
01554 
        (*((PNDIS_MINIPORT_BLOCK)(_H))->PacketIndicateHandler)(                                         \
01555 
                                                _H,                                                                                                             \
01556 
                                                _P,                                                                                                             \
01557 
                                                _N);                                                                                                    \
01558 
}
01559 
01560 
01561 
01562 
01563 
01564 
01565 
01566 
01567 
01568 
01569 
01570 
01571 
01572 
01573 #define NdisMWanIndicateReceive(_S_, _M_, _C_, _P_, _Z_)                                                \
01574 
                                (*((PNDIS_MINIPORT_BLOCK)(_M_))->WanRcvHandler)(_S_, _M_, _C_, _P_, _Z_)
01575 
01576 
01577 
01578 
01579 
01580 
01581 
01582 
01583 
01584 
01585 
01586 #define NdisMWanIndicateReceiveComplete(_M_, _C_)                                                                       \
01587 
                                (*((PNDIS_MINIPORT_BLOCK)(_M_))->WanRcvCompleteHandler)(_M_, _C_)
01588 
01589 
01590 
01591 
01592 
01593 
01594 
01595 
01596 
01597 
01598 
01599 
01600 
01601 
01602 
01603 #define NdisMEthIndicateReceive( _H, _C, _B, _SZ, _L, _LSZ, _PSZ)                               \
01604 
{                                                                                                                                                               \
01605 
        (*((PNDIS_MINIPORT_BLOCK)(_H))->EthRxIndicateHandler)(                                          \
01606 
                ((PNDIS_MINIPORT_BLOCK)(_H))->EthDB,                                                                    \
01607 
                _C,                                                                                                                                             \
01608 
                _B,                                                                                                                                             \
01609 
                _B,                                                                                                                                             \
01610 
                _SZ,                                                                                                                                    \
01611 
                _L,                                                                                                                                             \
01612 
                _LSZ,                                                                                                                                   \
01613 
                _PSZ                                                                                                                                    \
01614 
                );                                                                                                                                              \
01615 
}
01616 
01617 
01618 
01619 
01620 
01621 
01622 
01623 
01624 
01625 
01626 
01627 
01628 
01629 
01630 
01631 #define NdisMTrIndicateReceive( _H, _C, _B, _SZ, _L, _LSZ, _PSZ)                                \
01632 
{                                                                                                                                                               \
01633 
        (*((PNDIS_MINIPORT_BLOCK)(_H))->TrRxIndicateHandler)(                                           \
01634 
                ((PNDIS_MINIPORT_BLOCK)(_H))->TrDB,                                                                             \
01635 
                _C,                                                                                                                                             \
01636 
                _B,                                                                                                                                             \
01637 
                _SZ,                                                                                                                                    \
01638 
                _L,                                                                                                                                             \
01639 
                _LSZ,                                                                                                                                   \
01640 
                _PSZ                                                                                                                                    \
01641 
                );                                                                                                                                              \
01642 
}
01643 
01644 
01645 
01646 
01647 
01648 
01649 
01650 
01651 
01652 
01653 
01654 
01655 
01656 
01657 
01658 
01659 #define NdisMFddiIndicateReceive( _H, _C, _B, _SZ, _L, _LSZ, _PSZ)                              \
01660 
{                                                                                                                                                               \
01661 
        (*((PNDIS_MINIPORT_BLOCK)(_H))->FddiRxIndicateHandler)(                                         \
01662 
                        ((PNDIS_MINIPORT_BLOCK)(_H))->FddiDB,                                                           \
01663 
                        _C,                                                                                                                                     \
01664 
                        (PUCHAR)_B + 1,                                                                                                         \
01665 
                        ((((PUCHAR)_B)[0] & 0x40) ? FDDI_LENGTH_OF_LONG_ADDRESS                         \
01666 
                                                        : FDDI_LENGTH_OF_SHORT_ADDRESS),                                        \
01667 
                        _B,                                                                                                                                     \
01668 
                        _SZ,                                                                                                                            \
01669 
                        _L,                                                                                                                                     \
01670 
                        _LSZ,                                                                                                                           \
01671 
                        _PSZ                                                                                                                            \
01672 
        );                                                                                                                                                      \
01673 
}
01674 
01675 
01676 
01677 
01678 
01679 
01680 
01681 
01682 
01683 
01684 
01685 
01686 #define NdisMArcIndicateReceive( _H, _HD, _D, _SZ)                                                              \
01687 
{                                                                                                                                                               \
01688 
        ArcFilterDprIndicateReceive(((PNDIS_MINIPORT_BLOCK)(_H))->ArcDB,                        \
01689 
                                                                _HD,                                                                                    \
01690 
                                                                _D,                                                                                             \
01691 
                                                                _SZ                                                                                             \
01692 
                                                                );                                                                                              \
01693 
}
01694 
01695 
01696 
01697 
01698 
01699 
01700 
01701 
01702 
01703 
01704 
01705 #define NdisMEthIndicateReceiveComplete( _H )                                                                   \
01706 
{                                                                                                                                                               \
01707 
        (*((PNDIS_MINIPORT_BLOCK)(_H))->EthRxCompleteHandler)(                                          \
01708 
                                                                                ((PNDIS_MINIPORT_BLOCK)_H)->EthDB);             \
01709 
}
01710 
01711 
01712 
01713 
01714 
01715 
01716 
01717 
01718 
01719 
01720 #define NdisMTrIndicateReceiveComplete( _H )                                                                    \
01721 
{                                                                                                                                                               \
01722 
        (*((PNDIS_MINIPORT_BLOCK)(_H))->TrRxCompleteHandler)(                                           \
01723 
                                                                                ((PNDIS_MINIPORT_BLOCK)_H)->TrDB);              \
01724 
}
01725 
01726 
01727 
01728 
01729 
01730 
01731 
01732 
01733 
01734 
01735 #define NdisMFddiIndicateReceiveComplete( _H )                                                                  \
01736 
{                                                                                                                                                               \
01737 
        (*((PNDIS_MINIPORT_BLOCK)(_H))->FddiRxCompleteHandler)(                                         \
01738 
                                                                                ((PNDIS_MINIPORT_BLOCK)_H)->FddiDB);    \
01739 
}
01740 
01741 
01742 
01743 
01744 
01745 
01746 
01747 
01748 
01749 
01750 #define NdisMArcIndicateReceiveComplete( _H )                                                                   \
01751 
{                                                                                                                                                               \
01752 
        if (((PNDIS_MINIPORT_BLOCK)_H)->EthDB)                                                                          \
01753 
        {                                                                                                                                                       \
01754 
                NdisMEthIndicateReceiveComplete(_H);                                                                    \
01755 
        }                                                                                                                                                       \
01756 
                                                                                                                                                                \
01757 
        ArcFilterDprIndicateReceiveComplete(((PNDIS_MINIPORT_BLOCK)_H)->ArcDB);         \
01758 
}
01759 
01760 
01761 
01762 
01763 
01764 
01765 
01766 
01767 
01768 
01769 
01770 
01771 
01772 #define NdisMIndicateStatus(_M, _G, _SB, _BS)   (*((PNDIS_MINIPORT_BLOCK)(_M))->StatusHandler)(_M, _G, _SB, _BS)
01773 
01774 
01775 
01776 
01777 
01778 
01779 
01780 
01781 
01782 
01783 
01784 #define NdisMIndicateStatusComplete(_M) (*((PNDIS_MINIPORT_BLOCK)(_M))->StatusCompleteHandler)(_M)
01785 
01786 
EXPORT
01787 
VOID
01788 
NdisMRegisterAdapterShutdownHandler(
01789         IN      NDIS_HANDLE                             MiniportHandle,
01790         IN      PVOID                                   ShutdownContext,
01791         IN      ADAPTER_SHUTDOWN_HANDLER ShutdownHandler
01792         );
01793 
01794 
EXPORT
01795 
VOID
01796 
NdisMDeregisterAdapterShutdownHandler(
01797         IN      NDIS_HANDLE                             MiniportHandle
01798         );
01799 
01800 
EXPORT
01801 
NDIS_STATUS
01802 
NdisMPciAssignResources(
01803         IN      NDIS_HANDLE                             MiniportHandle,
01804         IN      ULONG                                   SlotNumber,
01805         IN      PNDIS_RESOURCE_LIST *   AssignedResources
01806         );
01807 
01808 
01809 
01810 
01811 
01812 
EXPORT
01813 
NDIS_STATUS
01814 
NdisMCreateLog(
01815         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01816         IN      UINT                                    Size,
01817         OUT     PNDIS_HANDLE                    LogHandle
01818         );
01819 
01820 
EXPORT
01821 
VOID
01822 
NdisMCloseLog(
01823         IN      NDIS_HANDLE                             LogHandle
01824         );
01825 
01826 
EXPORT
01827 
NDIS_STATUS
01828 
NdisMWriteLogData(
01829         IN      NDIS_HANDLE                             LogHandle,
01830         IN      PVOID                                   LogBuffer,
01831         IN      UINT                                    LogBufferSize
01832         );
01833 
01834 
EXPORT
01835 
VOID
01836 
NdisMFlushLog(
01837         IN      NDIS_HANDLE                             LogHandle
01838         );
01839 
01840 
EXPORT
01841 
VOID
01842 
NdisMGetDeviceProperty(
01843         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01844         IN OUT 
PDEVICE_OBJECT *         PhysicalDeviceObject            OPTIONAL,
01845         IN OUT 
PDEVICE_OBJECT *         FunctionalDeviceObject          OPTIONAL,
01846         IN OUT 
PDEVICE_OBJECT *         NextDeviceObject                        OPTIONAL,
01847         IN OUT PCM_RESOURCE_LIST *      AllocatedResources                      OPTIONAL,
01848         IN OUT PCM_RESOURCE_LIST *      AllocatedResourcesTranslated OPTIONAL
01849         );
01850 
01851 
01852 
01853 
01854 
EXPORT
01855 
NDIS_STATUS
01856 
NdisMQueryAdapterInstanceName(
01857         OUT     PNDIS_STRING                    pAdapterInstanceName,
01858         IN      NDIS_HANDLE                             MiniportHandle
01859         );
01860 
01861 
01862 
01863 
01864 
01865 
EXPORT
01866 
VOID
01867 
NdisMCoIndicateReceivePacket(
01868         IN      NDIS_HANDLE                             NdisVcHandle,
01869         IN      
PPNDIS_PACKET                   PacketArray,
01870         IN      UINT                                    NumberOfPackets
01871         );
01872 
01873 
EXPORT
01874 
VOID
01875 
NdisMCoIndicateStatus(
01876         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01877         IN      NDIS_HANDLE                             NdisVcHandle    OPTIONAL,
01878         IN      NDIS_STATUS                             GeneralStatus,
01879         IN      PVOID                                   StatusBuffer    OPTIONAL,
01880         IN      ULONG                                   StatusBufferSize
01881         );
01882 
01883 
EXPORT
01884 
VOID
01885 
NdisMCoReceiveComplete(
01886         IN      NDIS_HANDLE                             MiniportAdapterHandle
01887         );
01888 
01889 
EXPORT
01890 
VOID
01891 
NdisMCoSendComplete(
01892         IN      NDIS_STATUS                             Status,
01893         IN      NDIS_HANDLE                             NdisVcHandle,
01894         IN      
PNDIS_PACKET                    Packet
01895         );
01896 
01897 
EXPORT
01898 
VOID
01899 
NdisMCoActivateVcComplete(
01900         IN      NDIS_STATUS                             Status,
01901         IN      NDIS_HANDLE                             NdisVcHandle,
01902         IN      PCO_CALL_PARAMETERS             CallParameters
01903         );
01904 
01905 
EXPORT
01906 
VOID
01907 
NdisMCoDeactivateVcComplete(
01908         IN      NDIS_STATUS                             Status,
01909         IN      NDIS_HANDLE                             NdisVcHandle
01910         );
01911 
01912 
EXPORT
01913 
VOID
01914 
NdisMCoRequestComplete(
01915         IN      NDIS_STATUS                             Status,
01916         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01917         IN      
PNDIS_REQUEST                   Request
01918         );
01919 
01920 
EXPORT
01921 
NDIS_STATUS
01922 
NdisMCmRegisterAddressFamily(
01923         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01924         IN      PCO_ADDRESS_FAMILY              AddressFamily,
01925         IN      
PNDIS_CALL_MANAGER_CHARACTERISTICS CmCharacteristics,
01926         IN      UINT                                    SizeOfCmCharacteristics
01927         );
01928 
01929 
EXPORT
01930 
NDIS_STATUS
01931 
NdisMCmCreateVc(
01932         IN      NDIS_HANDLE                             MiniportAdapterHandle,
01933         IN      NDIS_HANDLE                             NdisAfHandle,
01934         IN      NDIS_HANDLE                             MiniportVcContext,
01935         OUT     PNDIS_HANDLE                    NdisVcHandle
01936         );
01937 
01938 
EXPORT
01939 
NDIS_STATUS
01940 
NdisMCmDeleteVc(
01941         IN      NDIS_HANDLE                             NdisVcHandle
01942         );
01943 
01944 
01945 
EXPORT
01946 
NDIS_STATUS
01947 
NdisMCmActivateVc(
01948         IN      NDIS_HANDLE                             NdisVcHandle,
01949         IN      PCO_CALL_PARAMETERS             CallParameters
01950         );
01951 
01952 
EXPORT
01953 
NDIS_STATUS
01954 
NdisMCmDeactivateVc(
01955         IN      NDIS_HANDLE                             NdisVcHandle
01956         );
01957 
01958 
01959 
EXPORT
01960 
NDIS_STATUS
01961 
NdisMCmRequest(
01962         IN      NDIS_HANDLE                             NdisAfHandle,
01963         IN      NDIS_HANDLE                             NdisVcHandle    OPTIONAL,
01964         IN      NDIS_HANDLE                             NdisPartyHandle OPTIONAL,
01965         IN OUT 
PNDIS_REQUEST            NdisRequest
01966         );
01967 
01968 
01969 
01970 
01971 
01972 
01973 
01974 
01975 
01976 
01977 #define NdisMCmRequestComplete(_S_, _AH_, _VH_, _PH_, _R_) \
01978 
                                                                                NdisCoRequestComplete(_S_, _AH_, _VH_, _PH_, _R_)
01979 
01980 
01981 
01982 
01983 
01984 
01985 
01986 
01987 
01988 #define NdisMCmOpenAddressFamilyComplete(_S_, _H_, _C_) \
01989 
                                                                                NdisCmOpenAddressFamilyComplete(_S_, _H_, _C_)
01990 
01991 
01992 
01993 
01994 
01995 
01996 
01997 
01998 
01999 #define NdisMCmCloseAddressFamilyComplete(_S_, _H_)             \
02000 
                                                                                NdisCmCloseAddressFamilyComplete(_S_, _H_)
02001 
02002 
02003 
02004 
02005 
02006 
02007 
02008 
02009 
02010 
02011 
02012 #define NdisMCmRegisterSapComplete(_S_, _H_, _C_)               \
02013 
                                                                                NdisCmRegisterSapComplete(_S_, _H_, _C_)
02014 
02015 
02016 
02017 
02018 
02019 
02020 
02021 
02022 
02023 #define NdisMCmDeregisterSapComplete(_S_, _H_)                  \
02024 
                                                                                NdisCmDeregisterSapComplete(_S_, _H_)
02025 
02026 
02027 
02028 
02029 
02030 
02031 
02032 
02033 
02034 
02035 
02036 
02037 #define NdisMCmMakeCallComplete(_S_, _VH_, _PH_, _CC_, _CP_)    \
02038 
                                                                                NdisCmMakeCallComplete(_S_, _VH_, _PH_, _CC_, _CP_)
02039 
02040 
02041 
02042 
02043 
02044 
02045 
02046 
02047 
02048 
02049 #define NdisMCmCloseCallComplete(_S_, _VH_, _PH_)               \
02050 
                                                                                NdisCmCloseCallComplete(_S_, _VH_, _PH_)
02051 
02052 
02053 
02054 
02055 
02056 
02057 
02058 
02059 
02060 
02061 
02062 #define NdisMCmAddPartyComplete(_S_, _H_, _C_, _P_)             \
02063 
                                                                                NdisCmAddPartyComplete(_S_, _H_, _C_, _P_)
02064 
02065 
02066 
02067 
02068 
02069 
02070 
02071 
02072 
02073 #define NdisMCmDropPartyComplete(_S_, _H_)                              \
02074 
                                                                                NdisCmDropPartyComplete(_S_, _H_)
02075 
02076 
02077 
02078 
02079 
02080 
02081 
02082 
02083 
02084 
02085 #define NdisMCmDispatchIncomingCall(_SH_, _VH_, _CP_)   \
02086 
                                                                                NdisCmDispatchIncomingCall(_SH_, _VH_, _CP_)
02087 
02088 
02089 
02090 
02091 
02092 
02093 
02094 
02095 #define NdisMCmDispatchCallConnected(_H_)                               \
02096 
                                                                                NdisCmDispatchCallConnected(_H_)
02097 
02098 
02099 
02100 
02101 
02102 
02103 
02104 
02105 
02106 #define NdisMCmModifyCallQoSComplete(_S_, _H_, _P_)             \
02107 
                                                                                NdisCmModifyCallQoSComplete(_S_, _H_, _P_)
02108 
02109 
02110 
02111 
02112 
02113 
02114 
02115 
02116 
02117 
02118 #define NdisMCmDispatchIncomingCallQoSChange(_H_, _P_)  \
02119 
                                                                                NdisCmDispatchIncomingCallQoSChange(_H_, _P_)
02120 
02121 
02122 
02123 
02124 
02125 
02126 
02127 
02128 
02129 
02130 
02131 #define NdisMCmDispatchIncomingCloseCall(_S_, _H_, _B_, _Z_)    \
02132 
                                                                                NdisCmDispatchIncomingCloseCall(_S_, _H_, _B_, _Z_)
02133 
02134 
02135 
02136 
02137 
02138 
02139 
02140 
02141 
02142 
02143 #define NdisMCmDispatchIncomingDropParty(_S_, _H_, _B_, _Z_)    \
02144 
                                                                                NdisCmDispatchIncomingDropParty(_S_, _H_, _B_, _Z_)
02145 
02146 
02147 
02148 
02149