965 lines
16 KiB
C
965 lines
16 KiB
C
/*++
|
||
|
||
Copyright (c) 1991 Microsoft Corporation
|
||
|
||
Module Name:
|
||
|
||
dlext.h
|
||
|
||
Abstract:
|
||
|
||
This module includes all internal function prototypes
|
||
and external global variables.
|
||
|
||
Author:
|
||
|
||
Antti Saarenheimo (o-anttis) 17-MAY-1991
|
||
|
||
Revision History:
|
||
|
||
--*/
|
||
|
||
//
|
||
// External variables:
|
||
//
|
||
|
||
extern DLC_LINK_PARAMETERS DefaultParameters;
|
||
extern UCHAR auchLlcCommands[];
|
||
extern UCHAR Swap[];
|
||
extern LLC_TICKS TimerTicks;
|
||
extern ULONG AbsoluteTime;
|
||
extern BOOLEAN TraceEnabled;
|
||
extern LLC_XID_INFORMATION Ieee802Xid;
|
||
extern PMDL pXidMdl;
|
||
extern KSPIN_LOCK LlcSpinLock;
|
||
extern PVOID LlcProtocolHandle;
|
||
extern NDIS_PROTOCOL_CHARACTERISTICS LlcCharacteristics;
|
||
extern KMUTEX NdisAccessMutex;
|
||
extern KSEMAPHORE OpenAdapterSemaphore;
|
||
extern UINT NdisSendCount;
|
||
extern PADAPTER_CONTEXT pAdapters;
|
||
extern UCHAR PrimaryStates[];
|
||
extern UCHAR SecondaryStates[];
|
||
#ifdef NDIS40
|
||
extern NDIS_EVENT PnPBindsComplete;
|
||
#endif // NDIS40
|
||
|
||
UINT
|
||
CopyReceivedLanHeader(
|
||
IN UINT TransltionCase,
|
||
IN PUCHAR DestinationAddress,
|
||
IN PUCHAR SourceAddress
|
||
);
|
||
|
||
UCHAR
|
||
CopyLanHeader(
|
||
IN UINT AddressTranslationMode,
|
||
IN PUCHAR pSrcLanHeader,
|
||
IN PUCHAR pNodeAddress,
|
||
OUT PUCHAR pDestLanHeader,
|
||
IN BOOLEAN SwapAddressBits
|
||
);
|
||
|
||
VOID
|
||
SwappingMemCpy(
|
||
IN PUCHAR pDest,
|
||
IN PUCHAR pSrc,
|
||
IN UINT Len
|
||
);
|
||
|
||
UINT
|
||
RunStateMachine(
|
||
IN OUT PDATA_LINK pLink,
|
||
IN USHORT usInput,
|
||
IN BOOLEAN boolPollFinal,
|
||
IN BOOLEAN boolResponse
|
||
);
|
||
|
||
UINT
|
||
RunInterlockedStateMachineCommand(
|
||
PDATA_LINK pStation,
|
||
USHORT Command
|
||
);
|
||
|
||
VOID
|
||
SaveStatusChangeEvent(
|
||
IN PDATA_LINK pLink,
|
||
IN PUCHAR puchLlcHdr,
|
||
IN BOOLEAN boolResponse
|
||
);
|
||
|
||
VOID
|
||
ResendPackets(
|
||
IN OUT PDATA_LINK pLink // data link strcuture
|
||
);
|
||
|
||
VOID
|
||
UpdateVa(
|
||
IN OUT PDATA_LINK pLink // data link station strcuture
|
||
);
|
||
|
||
VOID
|
||
UpdateVaChkpt(
|
||
IN OUT PDATA_LINK pLink // data link station strcuture
|
||
);
|
||
|
||
VOID
|
||
AdjustWw(
|
||
IN OUT PDATA_LINK pLink // data link strcuture
|
||
);
|
||
|
||
VOID
|
||
SendAck(
|
||
IN OUT PDATA_LINK pLink
|
||
);
|
||
|
||
UINT
|
||
RunStateMachineCommand(
|
||
IN OUT PVOID hLink,
|
||
IN UINT uiInput
|
||
);
|
||
|
||
PDATA_LINK
|
||
SearchLink(
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
IN LAN802_ADDRESS LanAddr
|
||
);
|
||
|
||
PDATA_LINK *
|
||
SearchLinkAddress(
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
IN LAN802_ADDRESS LanAddr
|
||
);
|
||
|
||
DLC_STATUS
|
||
SetLinkParameters(
|
||
IN OUT PDATA_LINK pLink,
|
||
IN PUCHAR pNewParameters
|
||
);
|
||
|
||
DLC_STATUS
|
||
CheckLinkParameters(
|
||
PDLC_LINK_PARAMETERS pParms
|
||
);
|
||
|
||
VOID
|
||
CopyLinkParameters(
|
||
OUT PUCHAR pOldParameters,
|
||
IN PUCHAR pNewParameters,
|
||
IN PUCHAR pDefaultParameters
|
||
);
|
||
|
||
VOID
|
||
CompleteClose(
|
||
IN PLLC_OBJECT pLlcObject,
|
||
IN UINT Status
|
||
);
|
||
|
||
NDIS_STATUS
|
||
InitNdisPackets(
|
||
OUT PLLC_NDIS_PACKET * ppLlcPacketPool,
|
||
IN NDIS_HANDLE hNdisPool
|
||
);
|
||
|
||
VOID
|
||
LlcResetPacket(
|
||
IN OUT PLLC_NDIS_PACKET pNdisPacket
|
||
);
|
||
|
||
NDIS_STATUS
|
||
GetNdisParameter(
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
IN NDIS_OID NdisOid,
|
||
IN PVOID pDataAddress,
|
||
IN UINT DataSize
|
||
);
|
||
|
||
DLC_STATUS
|
||
SyncNdisRequest(
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
IN PLLC_NDIS_REQUEST pRequest
|
||
);
|
||
|
||
NDIS_STATUS
|
||
WaitAsyncOperation(
|
||
IN PKEVENT pEvent,
|
||
IN PNDIS_STATUS pAsyncStatus,
|
||
IN NDIS_STATUS Status
|
||
);
|
||
|
||
#ifdef LLC_PRIVATE_NDIS_PROTOTYPES
|
||
|
||
NDIS_STATUS
|
||
LlcNdisReceiveIndication (
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
IN NDIS_HANDLE MacReceiveContext,
|
||
IN PVOID pHeadBuf,
|
||
IN UINT cbHeadBuf,
|
||
IN PVOID pLookBuf,
|
||
IN UINT cbLookBuf,
|
||
IN UINT cbPacketSize
|
||
);
|
||
|
||
VOID
|
||
LlcNdisSendComplete(
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
IN PNDIS_PACKET pNdisPacket,
|
||
IN NDIS_STATUS NdisStatus
|
||
);
|
||
|
||
VOID
|
||
LlcNdisReceiveComplete(
|
||
IN PADAPTER_CONTEXT pAdapterContext
|
||
);
|
||
|
||
VOID
|
||
LlcNdisTransferDataComplete(
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
IN PNDIS_PACKET pPacket,
|
||
IN NDIS_STATUS NdisStatus,
|
||
IN UINT uiBytesTransferred
|
||
);
|
||
|
||
VOID
|
||
LlcNdisOpenAdapterComplete(
|
||
IN PVOID hAdapterContext,
|
||
IN NDIS_STATUS NdisStatus,
|
||
IN NDIS_STATUS OpenErrorStatus
|
||
);
|
||
|
||
VOID
|
||
LlcNdisCloseComplete(
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
IN NDIS_STATUS NdisStatus
|
||
);
|
||
|
||
VOID
|
||
LlcNdisRequestComplete(
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
IN PNDIS_REQUEST RequestHandle,
|
||
IN NDIS_STATUS NdisStatus
|
||
);
|
||
|
||
VOID
|
||
LlcNdisResetComplete(
|
||
PADAPTER_CONTEXT pAdapterContext,
|
||
NDIS_STATUS NdisStatus
|
||
);
|
||
|
||
VOID
|
||
NdisStatusHandler(
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
IN NDIS_STATUS NdisStatus,
|
||
IN PVOID StatusBuffer,
|
||
IN UINT StatusBufferSize
|
||
);
|
||
|
||
#else
|
||
|
||
VOID
|
||
NdisStatusHandler(
|
||
IN PVOID hAdapterContext,
|
||
IN NDIS_STATUS NdisStatus,
|
||
IN PVOID StatusBuffer,
|
||
IN UINT StatusBufferSize
|
||
);
|
||
|
||
VOID
|
||
LlcNdisTransferDataComplete(
|
||
IN PVOID hAdapterContext,
|
||
IN PNDIS_PACKET Packet,
|
||
IN NDIS_STATUS NdisStatus,
|
||
IN UINT uiBytesTransferred
|
||
);
|
||
|
||
VOID
|
||
LlcNdisRequestComplete(
|
||
IN PVOID hAdapterContext,
|
||
IN PNDIS_REQUEST RequestHandle,
|
||
IN NDIS_STATUS NdisStatus
|
||
);
|
||
|
||
VOID
|
||
LlcNdisOpenAdapterComplete(
|
||
PVOID hAdapterContext,
|
||
NDIS_STATUS NdisStatus,
|
||
NDIS_STATUS OpenErrorStatus
|
||
);
|
||
|
||
VOID
|
||
LlcNdisStatus(
|
||
IN PVOID hAdapterContext,
|
||
IN NDIS_STATUS Status,
|
||
IN UINT SpecificStatus
|
||
);
|
||
|
||
VOID
|
||
LlcNdisStatusComplete(
|
||
IN PVOID hAdapterContext
|
||
);
|
||
|
||
NDIS_STATUS
|
||
LlcNdisReceiveIndication (
|
||
IN PVOID pAdapterContext,
|
||
IN NDIS_HANDLE MacReceiveContext,
|
||
IN PVOID pHeadBuf,
|
||
IN UINT cbHeadBuf,
|
||
IN PVOID pLookBuf,
|
||
IN UINT cbLookBuf,
|
||
IN UINT cbPacketSize
|
||
);
|
||
|
||
VOID
|
||
LlcNdisSendComplete(
|
||
IN PVOID hAdapter,
|
||
IN PNDIS_PACKET Packet,
|
||
IN NDIS_STATUS NdisStatus
|
||
);
|
||
|
||
VOID
|
||
LlcNdisResetComplete(
|
||
PVOID hAdapterContext,
|
||
NDIS_STATUS NdisStatus
|
||
);
|
||
|
||
VOID
|
||
LlcNdisCloseComplete(
|
||
PVOID hAdapterContext,
|
||
NDIS_STATUS NdisStatus
|
||
);
|
||
|
||
VOID
|
||
LlcNdisReceiveComplete(
|
||
IN PVOID hAdapter
|
||
);
|
||
|
||
#ifdef NDIS40
|
||
VOID
|
||
LlcBindAdapterHandler(
|
||
OUT PNDIS_STATUS pStatus,
|
||
IN NDIS_HANDLE BindContext,
|
||
IN PNDIS_STRING pDeviceName,
|
||
IN PVOID SystemSpecific1,
|
||
IN PVOID SystemSpecific2
|
||
);
|
||
|
||
VOID
|
||
LlcUnbindAdapterHandler(
|
||
OUT PNDIS_STATUS pStatus,
|
||
IN NDIS_HANDLE ProtocolBindingContext,
|
||
IN NDIS_HANDLE UnbindContext
|
||
);
|
||
|
||
NDIS_STATUS
|
||
LlcPnPEventHandler(
|
||
IN NDIS_HANDLE ProtocolBindingContext,
|
||
IN PNET_PNP_EVENT pNetPnPEvent
|
||
);
|
||
|
||
VOID
|
||
CloseAllAdapters();
|
||
|
||
#endif // NDIS40
|
||
|
||
|
||
#endif
|
||
|
||
VOID
|
||
ProcessType1_Frames(
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
IN NDIS_HANDLE MacReceiveContext,
|
||
IN PLLC_SAP pSap,
|
||
IN LLC_HEADER LlcHeader
|
||
);
|
||
|
||
VOID
|
||
MakeRcvIndication(
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
IN NDIS_HANDLE MacReceiveContext,
|
||
IN PLLC_OBJECT pStation
|
||
);
|
||
|
||
VOID
|
||
ProcessType2_Frames(
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
IN NDIS_HANDLE MacReceiveContext,
|
||
IN OUT PDATA_LINK pLink,
|
||
IN LLC_HEADER LlcHeader
|
||
);
|
||
|
||
VOID
|
||
ProcessNewSabme(
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
IN PLLC_SAP pSap,
|
||
IN LLC_HEADER LlcHeader
|
||
);
|
||
|
||
VOID
|
||
SaveReceiveEvent(
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
IN PLLC_TRANSFER_PACKET pTransferPacket
|
||
);
|
||
|
||
VOID
|
||
RunSendTaskAndUnlock(
|
||
IN PADAPTER_CONTEXT pAdapterContext
|
||
);
|
||
|
||
VOID
|
||
BackgroundProcessAndUnlock(
|
||
IN PADAPTER_CONTEXT pAdapter
|
||
);
|
||
|
||
VOID
|
||
BackgroundProcess(
|
||
IN PADAPTER_CONTEXT pAdapter
|
||
);
|
||
|
||
PLLC_PACKET
|
||
GetI_Packet(
|
||
IN PADAPTER_CONTEXT pAdapter
|
||
);
|
||
|
||
VOID
|
||
StartSendProcess(
|
||
IN PADAPTER_CONTEXT pAdapter,
|
||
IN PDATA_LINK pLink
|
||
);
|
||
|
||
VOID
|
||
EnableSendProcess(
|
||
IN PDATA_LINK pLink
|
||
);
|
||
|
||
VOID
|
||
StopSendProcess(
|
||
IN PADAPTER_CONTEXT pAdapter,
|
||
IN PDATA_LINK pLink
|
||
);
|
||
|
||
VOID DisableSendProcess(
|
||
IN PDATA_LINK pLink
|
||
);
|
||
|
||
PLLC_PACKET
|
||
BuildDirOrU_Packet(
|
||
PADAPTER_CONTEXT pAdapter
|
||
);
|
||
|
||
DLC_STATUS
|
||
SendLlcFrame(
|
||
IN PDATA_LINK pLink,
|
||
IN UCHAR LlcCommandId
|
||
);
|
||
|
||
PLLC_PACKET
|
||
GetLlcCommandPacket(
|
||
PADAPTER_CONTEXT pAdapter
|
||
);
|
||
|
||
VOID
|
||
SendNdisPacket(
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
IN PLLC_PACKET pPacket
|
||
);
|
||
|
||
VOID
|
||
CompleteSendAndLock(
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
IN PLLC_NDIS_PACKET NdisPacket,
|
||
IN NDIS_STATUS NdisStatus
|
||
);
|
||
|
||
VOID
|
||
RespondTestOrXid(
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
IN NDIS_HANDLE MacReceiveContext,
|
||
IN LLC_HEADER LlcHeader,
|
||
IN UINT SourceSap
|
||
);
|
||
|
||
VOID
|
||
CopyNonZeroBytes(
|
||
OUT PUCHAR pOldParameters,
|
||
IN PUCHAR pNewParameters,
|
||
IN PUCHAR pDefaultParameters,
|
||
IN UINT Length
|
||
);
|
||
|
||
VOID
|
||
ScanTimersDpc(
|
||
IN PKDPC Dpc,
|
||
IN PVOID DeferredContext,
|
||
IN PVOID SystemArgument1,
|
||
IN PVOID SystemArgument2
|
||
);
|
||
|
||
BOOLEAN
|
||
TerminateTimer(
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
IN PLLC_TIMER pTimer
|
||
);
|
||
|
||
DLC_STATUS
|
||
InitializeLinkTimers(
|
||
IN OUT PDATA_LINK pLink
|
||
);
|
||
|
||
DLC_STATUS
|
||
InitializeTimer(
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
PLLC_TIMER pTimer,
|
||
UCHAR TickCount,
|
||
UCHAR TickOne,
|
||
UCHAR TickTwo,
|
||
UINT Input,
|
||
PVOID hContextHandle,
|
||
UINT DefaultDelay,
|
||
IN BOOLEAN StartNewTimer
|
||
);
|
||
|
||
VOID
|
||
StartTimer(
|
||
IN PLLC_TIMER pTimer
|
||
);
|
||
|
||
BOOLEAN
|
||
StopTimer(
|
||
IN PLLC_TIMER pTimer
|
||
);
|
||
|
||
VOID
|
||
SwapMemCpy(
|
||
IN BOOLEAN SwapBytes,
|
||
IN PUCHAR pDest,
|
||
IN PUCHAR pSrc,
|
||
IN UINT Len
|
||
);
|
||
|
||
VOID
|
||
LlcSleep(
|
||
IN LONG lMicroSeconds
|
||
);
|
||
|
||
DLC_STATUS
|
||
LlcInitUnicodeString(
|
||
IN PUNICODE_STRING pStringDest,
|
||
IN PUNICODE_STRING pStringSrc
|
||
);
|
||
|
||
VOID
|
||
LlcFreeUnicodeString(
|
||
IN PUNICODE_STRING UnicodeString
|
||
);
|
||
|
||
VOID
|
||
InitiateAsyncLinkCommand(
|
||
IN PDATA_LINK pLink,
|
||
IN PLLC_PACKET pPacket,
|
||
UINT StateMachineCommand,
|
||
UINT CompletionCode
|
||
);
|
||
|
||
VOID
|
||
AllocateCompletionPacket(
|
||
IN PLLC_OBJECT pLlcObject,
|
||
IN UINT CompletionCode,
|
||
IN PVOID pPacket
|
||
);
|
||
|
||
VOID
|
||
QueueCommandCompletion(
|
||
IN PLLC_OBJECT pLlcObject,
|
||
IN UINT CompletionCode,
|
||
IN UINT Status
|
||
);
|
||
|
||
DLC_STATUS
|
||
LinkFlowControl(
|
||
IN PDATA_LINK pLink,
|
||
IN UCHAR FlowControlState
|
||
);
|
||
|
||
VOID
|
||
LlcInitializeTimerSystem(
|
||
VOID
|
||
);
|
||
|
||
VOID
|
||
LlcTerminateTimerSystem(
|
||
VOID
|
||
);
|
||
|
||
VOID
|
||
ExecuteAllBackroundProcesses(
|
||
VOID
|
||
);
|
||
|
||
DLC_STATUS
|
||
UpdateFunctionalAddress(
|
||
IN PADAPTER_CONTEXT pAdapter
|
||
);
|
||
|
||
DLC_STATUS
|
||
UpdateGroupAddress(
|
||
IN PADAPTER_CONTEXT pAdapter,
|
||
IN PBINDING_CONTEXT pBindingContext
|
||
);
|
||
|
||
NDIS_STATUS
|
||
SetNdisParameter(
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
IN NDIS_OID Oid,
|
||
IN PVOID pRequestInfo,
|
||
IN UINT RequestLength
|
||
);
|
||
|
||
VOID
|
||
CancelTransmitCommands(
|
||
IN PLLC_OBJECT pLlcObject,
|
||
IN UINT Status
|
||
);
|
||
|
||
VOID
|
||
CancelTransmitsInQueue(
|
||
IN PLLC_OBJECT pLlcObject,
|
||
IN UINT Status,
|
||
IN PLIST_ENTRY pQueue,
|
||
IN PLLC_QUEUE pLlcQueue
|
||
);
|
||
|
||
VOID
|
||
LlcNdis30RequestComplete(
|
||
IN PVOID hAdapterContext,
|
||
IN PNDIS_REQUEST RequestHandle,
|
||
IN NDIS_REQUEST_TYPE RequestType,
|
||
IN NDIS_STATUS NdisStatus
|
||
);
|
||
|
||
VOID
|
||
LlcNdis30TransferDataComplete(
|
||
IN PVOID pAdapterContext,
|
||
IN PNDIS_REQUEST RequestHandle,
|
||
IN NDIS_STATUS NdisStatus
|
||
);
|
||
|
||
VOID
|
||
CompletePendingLlcCommand(
|
||
PLLC_OBJECT pLlcObject
|
||
);
|
||
|
||
DLC_STATUS
|
||
CheckAndDuplicatePacket(
|
||
#if DBG
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
#endif
|
||
IN PBINDING_CONTEXT pBinding,
|
||
IN PLLC_PACKET pPacket,
|
||
IN PLLC_QUEUE pQueue
|
||
);
|
||
|
||
VOID
|
||
QueuePacket(
|
||
IN PADAPTER_CONTEXT pAdapterContext,
|
||
IN PLLC_QUEUE pQueue,
|
||
IN PLLC_PACKET pPacket
|
||
);
|
||
|
||
VOID
|
||
PrintLastInputs(
|
||
IN PUCHAR pszMessage,
|
||
IN PDATA_LINK pLink
|
||
);
|
||
|
||
VOID
|
||
BackgroundProcessWithinLock(
|
||
IN PADAPTER_CONTEXT pAdapterContext
|
||
);
|
||
|
||
|
||
#ifdef LLC_PRIVATE_PROTOTYPES
|
||
|
||
//
|
||
// LLCADDR.C...
|
||
//
|
||
|
||
UINT
|
||
LlcCopyReceivedLanHeader(
|
||
IN PBINDING_CONTEXT pBinding,
|
||
IN PUCHAR DestinationAddress,
|
||
IN PUCHAR SourceAddress
|
||
);
|
||
|
||
//
|
||
// LLCLINK.C...
|
||
//
|
||
|
||
DLC_STATUS
|
||
LlcOpenLinkStation(
|
||
IN PLLC_SAP pSap,
|
||
IN UCHAR DestinationSap,
|
||
IN PUCHAR pDestinationAddress OPTIONAL,
|
||
IN PUCHAR pReceivedLanHeader OPTIONAL,
|
||
IN PVOID hClientStation,
|
||
OUT PVOID *phLlcHandle
|
||
);
|
||
|
||
VOID
|
||
LlcBindLinkStation(
|
||
IN PDATA_LINK pStation,
|
||
IN PVOID hClientHandle
|
||
);
|
||
|
||
VOID
|
||
LlcConnectStation(
|
||
IN PDATA_LINK pStation,
|
||
IN PLLC_PACKET pPacket,
|
||
IN PVOID pSourceRouting OPTIONAL,
|
||
IN PUSHORT pusMaxInformationField
|
||
);
|
||
|
||
VOID
|
||
LlcDisconnectStation(
|
||
IN PDATA_LINK pLink,
|
||
IN PLLC_PACKET pPacket
|
||
);
|
||
|
||
DLC_STATUS
|
||
LlcFlowControl(
|
||
IN PLLC_OBJECT pStation,
|
||
IN UCHAR FlowControlState
|
||
);
|
||
|
||
DLC_STATUS
|
||
LlcResetBroadcastAddresses(
|
||
IN PBINDING_CONTEXT pBindingContext
|
||
);
|
||
|
||
//
|
||
// LLCNDIS.C...
|
||
//
|
||
|
||
VOID
|
||
LlcDisableAdapter(
|
||
IN PBINDING_CONTEXT pBindingContext
|
||
);
|
||
|
||
DLC_STATUS
|
||
LlcCloseAdapter(
|
||
IN PBINDING_CONTEXT pBindingContext,
|
||
IN BOOLEAN CloseAtNdisLevel
|
||
);
|
||
|
||
VOID
|
||
LlcNdisReset(
|
||
IN PBINDING_CONTEXT pBindingContext,
|
||
IN PLLC_PACKET pPacket
|
||
);
|
||
|
||
//
|
||
// LLCOBJ.C...
|
||
//
|
||
|
||
DLC_STATUS
|
||
LlcOpenStation(
|
||
IN PBINDING_CONTEXT pBindingContext,
|
||
IN PVOID hClientHandle,
|
||
IN USHORT ObjectAddress,
|
||
IN UCHAR ObjectType,
|
||
IN USHORT OpenOptions,
|
||
OUT PVOID* phStation
|
||
);
|
||
|
||
DLC_STATUS
|
||
LlcCloseStation(
|
||
IN PLLC_OBJECT pStation,
|
||
IN PLLC_PACKET pCompletionPacket
|
||
);
|
||
|
||
VOID
|
||
CompleteObjectDelete(
|
||
IN PLLC_OBJECT pStation
|
||
);
|
||
|
||
VOID
|
||
LlcSetDirectOpenOptions(
|
||
IN PLLC_OBJECT pDirect,
|
||
IN USHORT OpenOptions
|
||
);
|
||
|
||
//
|
||
// LLCRCV.C...
|
||
//
|
||
|
||
VOID
|
||
LlcTransferData(
|
||
IN PBINDING_CONTEXT pBindingContext,
|
||
IN NDIS_HANDLE MacReceiveContext,
|
||
IN PLLC_PACKET pPacket,
|
||
IN PMDL pMdl,
|
||
IN UINT uiCopyOffset,
|
||
IN UINT cbCopyLength
|
||
);
|
||
|
||
//
|
||
// LLCSEND.C...
|
||
//
|
||
|
||
VOID
|
||
LlcSendI(
|
||
IN PDATA_LINK pStation,
|
||
IN PLLC_PACKET pPacket
|
||
);
|
||
|
||
VOID
|
||
LlcSendU(
|
||
IN PLLC_OBJECT pStation,
|
||
IN PLLC_PACKET pPacket,
|
||
IN UINT eFrameType,
|
||
IN UINT uDestinationSap
|
||
);
|
||
|
||
#else
|
||
|
||
//
|
||
// LLCADDR.C...
|
||
//
|
||
|
||
UINT
|
||
LlcCopyReceivedLanHeader(
|
||
IN PVOID pBinding,
|
||
IN PUCHAR DestinationAddress,
|
||
IN PUCHAR SourceAddress
|
||
);
|
||
|
||
//
|
||
// LLCLINK.C...
|
||
//
|
||
|
||
DLC_STATUS
|
||
LlcOpenLinkStation(
|
||
IN PVOID pSap,
|
||
IN UCHAR DestinationSap,
|
||
IN PUCHAR pDestinationAddress OPTIONAL,
|
||
IN PUCHAR pReceivedLanHeader OPTIONAL,
|
||
IN PVOID hClientStation,
|
||
OUT PVOID *phLlcHandle
|
||
);
|
||
|
||
VOID
|
||
LlcBindLinkStation(
|
||
IN PVOID pStation,
|
||
IN PVOID hClientHandle
|
||
);
|
||
|
||
VOID
|
||
LlcConnectStation(
|
||
IN PVOID pStation,
|
||
IN PLLC_PACKET pPacket,
|
||
IN PVOID pSourceRouting OPTIONAL,
|
||
IN PUSHORT pusMaxInformationField
|
||
);
|
||
|
||
VOID
|
||
LlcDisconnectStation(
|
||
IN PVOID pLink,
|
||
IN PLLC_PACKET pPacket
|
||
);
|
||
|
||
DLC_STATUS
|
||
LlcFlowControl(
|
||
IN PVOID pStation,
|
||
IN UCHAR FlowControlState
|
||
);
|
||
|
||
DLC_STATUS
|
||
LlcResetBroadcastAddresses(
|
||
IN PVOID pBindingContext
|
||
);
|
||
|
||
//
|
||
// LLCNDIS.C...
|
||
//
|
||
|
||
VOID
|
||
LlcDisableAdapter(
|
||
IN PVOID pBindingContext
|
||
);
|
||
|
||
|
||
DLC_STATUS
|
||
LlcCloseAdapter(
|
||
IN PVOID pBindingContext,
|
||
IN BOOLEAN CloseAtNdisLevel
|
||
);
|
||
|
||
VOID
|
||
LlcNdisReset(
|
||
IN PVOID pBindingContext,
|
||
IN PLLC_PACKET pPacket
|
||
);
|
||
|
||
//
|
||
// LLCOBJ.C...
|
||
//
|
||
|
||
DLC_STATUS
|
||
LlcOpenStation(
|
||
IN PVOID pBindingContext,
|
||
IN PVOID hClientHandle,
|
||
IN USHORT ObjectAddress,
|
||
IN UCHAR ObjectType,
|
||
IN USHORT OpenOptions,
|
||
OUT PVOID* phStation
|
||
);
|
||
|
||
DLC_STATUS
|
||
LlcCloseStation(
|
||
IN PVOID pStation,
|
||
IN PLLC_PACKET pCompletionPacket
|
||
);
|
||
|
||
VOID
|
||
CompleteObjectDelete(
|
||
IN PVOID pStation
|
||
);
|
||
|
||
VOID
|
||
LlcSetDirectOpenOptions(
|
||
IN PVOID pDirect,
|
||
IN USHORT OpenOptions
|
||
);
|
||
|
||
//
|
||
// LLCRCV.C...
|
||
//
|
||
VOID
|
||
LlcTransferData(
|
||
IN PBINDING_CONTEXT pBindingContext,
|
||
IN NDIS_HANDLE MacReceiveContext,
|
||
IN PLLC_PACKET pPacket,
|
||
IN PMDL pMdl,
|
||
IN UINT uiCopyOffset,
|
||
IN UINT cbCopyLength
|
||
);
|
||
|
||
//
|
||
// LLCSEND.C...
|
||
//
|
||
|
||
VOID
|
||
LlcSendI(
|
||
IN PVOID pStation,
|
||
IN PLLC_PACKET pPacket
|
||
);
|
||
|
||
VOID
|
||
LlcSendU(
|
||
IN PVOID pStation,
|
||
IN PLLC_PACKET pPacket,
|
||
IN UINT eFrameType,
|
||
IN UINT uDestinationSap
|
||
);
|
||
|
||
#endif
|
||
|