/*++

Copyright (c) 1996-1999  Microsoft Corporation

Module Name:

    send.h

Abstract:

    defines for packet sending routines

Author:

    Charlie Wickham (charlwi) 07-May-1996

Revision History:

--*/

#ifndef _SEND_
#define _SEND_

/* Prototypes */ /* Generated by Emacs 19.17.0 on Tue May 07 11:47:57 1996 */

NDIS_STATUS
DupPacket(
    PADAPTER Adapter,
    PNDIS_PACKET Packet,
    PNDIS_PACKET *DupedPacket,
    PPS_SEND_PACKET_CONTEXT *PktContext
    );

NTSTATUS
MpSend(
	IN	NDIS_HANDLE				MiniportAdapterContext,
	IN	PNDIS_PACKET			Packet,
	IN	UINT					Flags
	);

VOID
ClSendComplete(
	IN	NDIS_HANDLE				ProtocolBindingContext,
	IN	PNDIS_PACKET			Packet,
	IN	NDIS_STATUS				Status
	);

VOID
ClCoSendComplete(
    IN  NDIS_STATUS Status,
    IN  NDIS_HANDLE ProtocolVcContext,
    IN  PNDIS_PACKET Packet
    );

VOID
CmCoSendComplete(
    IN  NDIS_STATUS Status,
    IN  NDIS_HANDLE ProtocolVcContext,
    IN  PNDIS_PACKET Packet
    );

VOID
PcCoSendComplete(
    IN  NDIS_STATUS Status,
    IN  NDIS_HANDLE ProtocolVcContext,
    IN  PNDIS_PACKET Packet
    );

VOID
DropPacket(
    IN HANDLE PipeContext,
    IN HANDLE FlowContext,
    IN PNDIS_PACKET Packet,
    IN NDIS_STATUS Status
    );

PGPC_CLIENT_VC FASTCALL
GetVcByClassifyingPacket(
    PADAPTER Adapter,
    PTC_INTERFACE_ID pInterfaceID,
    PNDIS_PACKET OurPacket
    );

/* End Prototypes */

#endif /* _SEND_ */

/* end send.h */