深度剖析WinPcap之(九)——数据包的..
时间:2010-09-06 来源:runhook
在NPF_Write函数中主要调用NdisSend函数完成数据包的底层发送。NdisSend函数的原型如下:
VOID NdisSend(
OUT PNDIS_STATUS Status,
IN NDIS_HANDLE NdisBindingHandle,
IN PNDIS_PACKET Packet
);
);
参数Status指向一个调用着提供的变量,储存函数返回的状态。底层驱动决定所返回的NDIS_STATUS_XXX,通常为下列值。
NDIS_STATUS_SUCCESS
给定的数据包已在网络上传输。
NDIS_STATUS_PENDING
数据包的请求被异步操作,传输结束后调用者的ProtocolSendComplete函数将被调用
NDIS_STATUS_INVALID_PACKET
请求传输的大小对NIC太大,或者可能NIC指出一个错误数据包传输给了驱动程序
NDIS_STATUS_CLOSING