Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

31 lines
927 B

  1. #ifndef KRMStubs_h
  2. #define KRMStubs_h
  3. class KRMStubs{
  4. public:
  5. KRMStubs();
  6. ~KRMStubs();
  7. // Main entry point for DRM IOCTLs
  8. NTSTATUS processIoctl(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp);
  9. NTSTATUS processCommandBuffer(IN BYTE* InBuf, IN DWORD InLen, IN DWORD OutBufSize, IN OUT PIRP Irp);
  10. static DWORD returnKernelMemory(BYTE* StartAddress, DWORD Len, BYTE* OutBuf);
  11. NTSTATUS initStream(BYTE* encText, struct ConnectStruct* Conn);
  12. static NTSTATUS InitializeConnection(PIRP Pirp);
  13. static NTSTATUS CleanupConnection(PIRP Pirp);
  14. KCritMgr& getCritMgr(){return critMgr;};
  15. protected:
  16. NTSTATUS preSend(class SBuffer& Msg, struct ConnectStruct* Conn);
  17. NTSTATUS postReceive(BYTE* Data, DWORD DatLen, struct ConnectStruct* Conn);
  18. KCritMgr critMgr;
  19. };
  20. NTSTATUS InitializeDriver();
  21. NTSTATUS CleanupDriver();
  22. extern KRMStubs* TheKrmStubs;
  23. #endif