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.

100 lines
2.2 KiB

  1. /*++
  2. Copyright (c) 1996 Microsoft Corporation
  3. Module Name :
  4. aqevents.h
  5. Abstract:
  6. This file contains type definitions seo events
  7. Author:
  8. Rohan Phillips (Rohanp) MAY-06-1998
  9. Revision History:
  10. --*/
  11. #ifndef _AQEVENT_PARAMS_
  12. #define _AQEVENT_PARAMS_
  13. #define SMTP_SERVER_EVENT_IO_TIMEOUT 5*60*1000
  14. #include "filehc.h"
  15. //
  16. // These event IDs must not overlap with SMTP_DISPATCH_EVENT_TYPE
  17. // defined in smtpseo.h
  18. //
  19. typedef enum _AQ_DISPATCH_EVENT_IDs
  20. {
  21. SMTP_GET_DSN_RECIPIENT_ITERATOR_EVENT = 10000,
  22. SMTP_GENERATE_DSN_EVENT,
  23. SMTP_POST_DSN_EVENT
  24. } SMTPAQ_DISPATCH_EVENT_TYPE;
  25. //
  26. // These define the structures passed to TriggerServerEvent (the PVOID
  27. // pointer)
  28. //
  29. typedef struct _AQ_EVENT_ALLOC_
  30. {
  31. PFIO_CONTEXT hContent;
  32. PVOID IMsgPtr;
  33. PVOID BindInterfacePtr;
  34. PVOID pAtqClientContext;
  35. // PATQ_CONTEXT pAtqContext;
  36. PVOID * m_EventSmtpServer;
  37. LPCSTR m_DropDirectory;
  38. DWORD m_InstanceId;
  39. DWORD m_RecipientCount;
  40. DWORD *pdwRecipIndexes;
  41. HRESULT hr;
  42. DWORD m_dwStartupType;
  43. PVOID m_pNotify;
  44. }AQ_ALLOC_PARAMS;
  45. //
  46. // DSN Events:
  47. //
  48. typedef struct _EVENTPARAMS_GET_DSN_RECIPIENT_ITERATOR {
  49. DWORD dwVSID;
  50. ISMTPServer *pISMTPServer;
  51. IMailMsgProperties *pIMsg;
  52. IMailMsgPropertyBag *pDSNProperties;
  53. DWORD dwStartDomain;
  54. DWORD dwDSNActions;
  55. IDSNRecipientIterator *pRecipIter;
  56. } EVENTPARAMS_GET_DSN_RECIPIENT_ITERATOR, *PEVENTPARAMS_GET_DSN_RECIPIENT_ITERATOR;
  57. typedef struct _EVENTPARAMS_GENERATE_DSN {
  58. DWORD dwVSID;
  59. IDSNGenerationSink *pDefaultSink;
  60. ISMTPServer *pISMTPServer;
  61. IDSNSubmission *pIDSNSubmission;
  62. IMailMsgProperties *pIMsg;
  63. IMailMsgPropertyBag *pDSNProperties;
  64. IDSNRecipientIterator *pRecipIter;
  65. } EVENTPARAMS_GENERATE_DSN, *PEVENTPARAMS_GENERATE_DSN;
  66. typedef struct _EVENTPARAMS_POST_GENERATE_DSN {
  67. DWORD dwVSID;
  68. ISMTPServer *pISMTPServer;
  69. IMailMsgProperties *pIMsgOrig;
  70. DWORD dwDSNAction;
  71. DWORD cRecipsDSNd;
  72. IMailMsgProperties *pIMsgDSN;
  73. IMailMsgPropertyBag *pIDSNProperties;
  74. } EVENTPARAMS_POST_GENERATE_DSN, *PEVENTPARAMS_POST_GENERATE_DSN;
  75. #endif