PTEXTEND.H
上传用户:jencksen
上传日期:2016-04-08
资源大小:66k
文件大小:2k
源码类别:

ICQ弱点检测代码

开发平台:

Visual C++

  1. ///////////////////////////////////////////////////////
  2. // PTEXTEND.h文件
  3. #ifndef __PTEXTEND__H
  4. #define __PTEXTEND__H
  5. // 用户打开一个适配器后,我们就为其句柄关联一个OPEN_CONTEXT结构,
  6. // 结构指针保存在FileObject的FsContext域中
  7. typedef struct _OPEN_CONTEXT
  8. {
  9. ULONG RefCount;
  10. NDIS_SPIN_LOCK Lock;
  11. BOOLEAN bAdapterClosed;
  12. PADAPT pAdapt;
  13. // 下面3个为的是处理Oid请求
  14. NDIS_REQUEST Request;
  15. NDIS_STATUS  RequestStatus;
  16.     NDIS_EVENT   RequestEvent;
  17. // BEGIN_PTEX_FILTER
  18.     // 为过滤数据预留的空间  每个打开句柄的过滤相关数据
  19.     // Per-Open-Handle Filter-Specific Area
  20.     //
  21.     ULONG               FilterReserved[16];
  22. // END_PTEX_FILTER
  23. } OPEN_CONTEXT, *POPEN_CONTEXT;
  24. /////////////////////////////////////////////
  25. // 下面是一些自定义函数的声明
  26. NTSTATUS DevClose(PDEVICE_OBJECT pDeviceObject, PIRP pIrp);
  27. NTSTATUS DevCleanup(PDEVICE_OBJECT    pDeviceObject,PIRP pIrp);
  28. NTSTATUS DevOpen(PDEVICE_OBJECT pDeviceObject, PIRP pIrp);
  29. NTSTATUS DevIoControl(PDEVICE_OBJECT pDeviceObject, PIRP pIrp);
  30. NTSTATUS FltDevIoControl(PDEVICE_OBJECT pDeviceObject, PIRP pIrp);
  31. NTSTATUS DevHandleOidRequest(PDEVICE_OBJECT pDeviceObject, PIRP pIrp);
  32. VOID DevRequestComplete(PADAPT pAdapt, PNDIS_REQUEST NdisRequest,NDIS_STATUS Status);
  33. VOID PtRefAdapter(PADAPT pAdapt);
  34. VOID PtDerefAdapter(PADAPT pAdapt);
  35. POPEN_CONTEXT DevAllocateOpenContext(PADAPT pAdapt);
  36. VOID DevDerefOpenContext(POPEN_CONTEXT pOpenContext);
  37. VOID DevRefOpenContext(POPEN_CONTEXT pOpenContext) ;
  38. NTSTATUS DevGetBindingList(PVOID Buffer,ULONG Length,PULONG DataLength);
  39. PADAPT LookupAdaptByName(PUCHAR pNameBuffer, ULONG nNameLength);
  40. #endif // __PTEXTEND__H