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.

56 lines
1.7 KiB

  1. /*++
  2. Copyright (c) 1997-1999 Microsoft Corporation
  3. --*/
  4. #ifndef _PDEV_H
  5. #define _PDEV_H
  6. #include <minidrv.h>
  7. #include <stdio.h>
  8. #include <prcomoem.h>
  9. // SECURITY:#553895: Mandatory changes (e.g. strsafe.h)
  10. #include <strsafe.h>
  11. //
  12. // OEM Signature and version.
  13. //
  14. #define OEM_SIGNATURE 'KYP5' // KYOCERA
  15. #define DLLTEXT(s) "KYP5: " s
  16. #define OEM_VERSION 0x00010000L
  17. ////////////////////////////////////////////////////////
  18. // OEM UD Defines
  19. ////////////////////////////////////////////////////////
  20. #define VALID_PDEVOBJ(pdevobj) \
  21. ((pdevobj) && (pdevobj)->dwSize >= sizeof(DEVOBJ) && \
  22. (pdevobj)->hEngine && (pdevobj)->hPrinter && \
  23. (pdevobj)->pPublicDM && (pdevobj)->pDrvProcs )
  24. //
  25. // ASSERT_VALID_PDEVOBJ can be used to verify the passed in "pdevobj". However,
  26. // it does NOT check "pdevOEM" and "pOEMDM" fields since not all OEM DLL's create
  27. // their own pdevice structure or need their own private devmode. If a particular
  28. // OEM DLL does need them, additional checks should be added. For example, if
  29. // an OEM DLL needs a private pdevice structure, then it should use
  30. // ASSERT(VALID_PDEVOBJ(pdevobj) && pdevobj->pdevOEM && ...)
  31. //
  32. #define ASSERT_VALID_PDEVOBJ(pdevobj) ASSERT(VALID_PDEVOBJ(pdevobj))
  33. ////////////////////////////////////////////////////////
  34. // OEM UD Type Defines
  35. ////////////////////////////////////////////////////////
  36. typedef struct tag_OEMUD_EXTRADATA {
  37. OEM_DMEXTRAHEADER dmExtraHdr;
  38. // Private extention
  39. } OEMUD_EXTRADATA, *POEMUD_EXTRADATA;
  40. extern BOOL BInitOEMExtraData(POEMUD_EXTRADATA pOEMExtra);
  41. extern BMergeOEMExtraData(POEMUD_EXTRADATA pdmIn, POEMUD_EXTRADATA pdmOut);
  42. #endif // _PDEV_H