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.

352 lines
19 KiB

  1. /////////////////////////////////////////////////////////////////////////
  2. // //
  3. // SMTP specific items //
  4. // //
  5. /////////////////////////////////////////////////////////////////////////
  6. //
  7. // Service name.
  8. //
  9. # define SMTP_SERVICE_NAME TEXT("SMTPSVC")
  10. # define SMTP_SERVICE_NAME_A "SMTPSVC"
  11. # define SMTP_SERVICE_NAME_W L"SMTPSVC"
  12. # define SMTP_MD_ROOT_PATH "/LM/SmtpSvc/"
  13. # define SMTP_MD_LOCAL_DOMAINS_PATH "/LocalDomains"
  14. # define SMTP_MD_DOMAIN_ROUTES_PATH "/DomainRoutes"
  15. //
  16. // Client Interface Name for RPC connections over named pipes
  17. //
  18. # define SMTP_INTERFACE_NAME SMTP_SERVICE_NAME
  19. # define SMTP_NAMED_PIPE TEXT("\\PIPE\\") ## SMTP_INTERFACE_NAME
  20. # define SMTP_NAMED_PIPE_W L"\\PIPE\\" ## SMTP_SERVICE_NAME_W
  21. //service location junk
  22. #define INET_SMTP_SVCLOC_ID (ULONGLONG)(0x2000000000000000)
  23. //Domain routing table bit fields
  24. typedef DWORD DOMAIN_ROUTE_ACTION_TYPE;
  25. #define SMTP_NO_ACTION ((DOMAIN_ROUTE_ACTION_TYPE)(0x00000000))
  26. #define SMTP_DROP ((DOMAIN_ROUTE_ACTION_TYPE)(0x00000001))
  27. #define SMTP_SMARTHOST ((DOMAIN_ROUTE_ACTION_TYPE)(0x00000002))
  28. #define SMTP_SSL ((DOMAIN_ROUTE_ACTION_TYPE)(0x00000004))
  29. #define SMTP_SASL ((DOMAIN_ROUTE_ACTION_TYPE)(0x00000008))
  30. #define SMTP_ALIAS ((DOMAIN_ROUTE_ACTION_TYPE)(0x00000010))
  31. #define SMTP_DELIVER ((DOMAIN_ROUTE_ACTION_TYPE)(0x00000020))
  32. #define SMTP_DEFAULT ((DOMAIN_ROUTE_ACTION_TYPE)(0x00000040))
  33. #define SMTP_AUTH_NTLM ((DOMAIN_ROUTE_ACTION_TYPE)(0x00000080))
  34. #define SMTP_AUTH_CLEARTEXT ((DOMAIN_ROUTE_ACTION_TYPE)(0x00000100))
  35. #define SMTP_ETRN_CMD ((DOMAIN_ROUTE_ACTION_TYPE)(0x00000200))
  36. #define SMTP_IP_RELAY ((DOMAIN_ROUTE_ACTION_TYPE)(0x00000400))
  37. #define SMTP_AUTH_RELAY ((DOMAIN_ROUTE_ACTION_TYPE)(0x00000800))
  38. #define SMTP_DOMAIN_RELAY ((DOMAIN_ROUTE_ACTION_TYPE)(0x00001000))
  39. #define SMTP_CSIDE_TURN ((DOMAIN_ROUTE_ACTION_TYPE)(0x00002000))
  40. #define SMTP_CSIDE_ETRN ((DOMAIN_ROUTE_ACTION_TYPE)(0x00004000))
  41. #define SMTP_DISABLE_ETRN ((DOMAIN_ROUTE_ACTION_TYPE)(0x00008000))
  42. #define SMTP_CHUNKING ((DOMAIN_ROUTE_ACTION_TYPE)(0x00010000))
  43. #define SMTP_DISABLE_CHUNK ((DOMAIN_ROUTE_ACTION_TYPE)(0x00020000))
  44. #define SMTP_DISABLE_BMIME ((DOMAIN_ROUTE_ACTION_TYPE)(0x00040000))
  45. #define SMTP_DISABLE_DSN ((DOMAIN_ROUTE_ACTION_TYPE)(0x00080000))
  46. #define SMTP_DISABLE_PIPELINE ((DOMAIN_ROUTE_ACTION_TYPE)(0x00100000))
  47. #define SMTP_AUTH_KERBEROS ((DOMAIN_ROUTE_ACTION_TYPE)(0x00200000))
  48. #define SMTP_USE_HELO ((DOMAIN_ROUTE_ACTION_TYPE)(0x00400000))
  49. #define SMTP_DISABLE_DROP_QUOTA ((DOMAIN_ROUTE_ACTION_TYPE)(0x00800000))
  50. #define SMTP_ALL_ROUTE_FLAGS ( \
  51. SMTP_DROP | SMTP_SMARTHOST | SMTP_SSL | SMTP_SASL |\
  52. SMTP_ALIAS | SMTP_DELIVER | SMTP_DEFAULT | SMTP_AUTH_NTLM |\
  53. SMTP_AUTH_CLEARTEXT | SMTP_ETRN_CMD | SMTP_IP_RELAY | SMTP_AUTH_RELAY |\
  54. SMTP_DOMAIN_RELAY | SMTP_CSIDE_TURN | SMTP_CSIDE_ETRN | SMTP_DISABLE_ETRN |\
  55. SMTP_CHUNKING | SMTP_DISABLE_CHUNK | SMTP_DISABLE_BMIME | SMTP_DISABLE_DSN |\
  56. SMTP_DISABLE_PIPELINE | SMTP_AUTH_KERBEROS | SMTP_USE_HELO | SMTP_DISABLE_DROP_QUOTA \
  57. )
  58. #define SMTP_ALL_AUTH_FLAGS ( \
  59. SMTP_AUTH_NTLM |\
  60. SMTP_AUTH_CLEARTEXT \
  61. )
  62. //
  63. typedef DWORD INBOUND_COMMAND_SUPPORT_OPTIONS;
  64. #define SMTP_I_SUPPORT_VRFY ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00000001))
  65. #define SMTP_I_SUPPORT_VRFY_ON_SSL ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00000002))
  66. #define SMTP_I_SUPPORT_VRFY_ON_AUTH ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00000004))
  67. #define SMTP_I_SUPPORT_EXPN ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00000008))
  68. #define SMTP_I_SUPPORT_EXPN_ON_SSL ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00000010))
  69. #define SMTP_I_SUPPORT_EXPN_ON_AUTH ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00000020))
  70. #define SMTP_I_SUPPORT_DSN ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00000040))
  71. #define SMTP_I_SUPPORT_ETRN ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00000080))
  72. #define SMTP_I_SUPPORT_ETRN_ON_SSL ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00000100))
  73. #define SMTP_I_SUPPORT_ETRN_ON_AUTH ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00000200))
  74. #define SMTP_I_SUPPORT_TURN ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00000400))
  75. #define SMTP_I_SUPPORT_TURN_ON_SSL ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00000800))
  76. #define SMTP_I_SUPPORT_ECODES ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00001000))
  77. #define SMTP_I_SUPPORT_PIPELINING ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00002000))
  78. #define SMTP_I_SUPPORT_AUTH ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00004000))
  79. #define SMTP_I_SUPPORT_AUTH_ON_SSL ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00008000))
  80. #define SMTP_I_SUPPORT_LOGIN ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00010000))
  81. #define SMTP_I_SUPPORT_LOGIN_ON_SSL ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00020000))
  82. #define SMTP_I_SUPPORT_HELP ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00040000))
  83. #define SMTP_I_SUPPORT_HELP_ON_AUTH ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00080000))
  84. #define SMTP_I_SUPPORT_CHUNK ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00100000))
  85. #define SMTP_I_SUPPORT_BMIME ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00200000))
  86. #define SMTP_I_SUPPORT_8BITMIME ((INBOUND_COMMAND_SUPPORT_OPTIONS)(0x00400000))
  87. #define SMTP_DEFAULT_CMD_SUPPORT ( \
  88. SMTP_I_SUPPORT_VRFY |\
  89. SMTP_I_SUPPORT_DSN |\
  90. SMTP_I_SUPPORT_TURN |\
  91. SMTP_I_SUPPORT_ETRN |\
  92. SMTP_I_SUPPORT_AUTH |\
  93. SMTP_I_SUPPORT_LOGIN |\
  94. SMTP_I_SUPPORT_HELP |\
  95. SMTP_I_SUPPORT_CHUNK |\
  96. SMTP_I_SUPPORT_BMIME |\
  97. SMTP_I_SUPPORT_ECODES |\
  98. SMTP_I_SUPPORT_PIPELINING |\
  99. SMTP_I_SUPPORT_8BITMIME )
  100. #define SMTP_IS_SSL_CONNECTION (0x00000001)
  101. #define SMTP_IS_AUTH_CONNECTION (0x00000002)
  102. //
  103. typedef DWORD OUTBOUND_COMMAND_SUPPORT_OPTIONS;
  104. #define SMTP_0_SUPPORT_DSN ((OUTBOUND_COMMAND_SUPPORT_OPTIONS)(0x00000001))
  105. #define SMTP_0_FORCE_CHUNK ((OUTBOUND_COMMAND_SUPPORT_OPTIONS)(0x00000002))
  106. #define SMTP_0_SUPPORT_BMIME ((OUTBOUND_COMMAND_SUPPORT_OPTIONS)(0x00000004))
  107. #define SMTP_DEFAULT_OUTBOUND_SUPPORT ( \
  108. SMTP_0_SUPPORT_DSN )
  109. typedef DWORD REVERSE_DNS_OPTIONS;
  110. #define SMTP_I_HELOEHLO_RDNS ((REVERSE_DNS_OPTIONS)(0x00000001))
  111. #define SMTP_I_HELOEHLO_RDNS_DISCONNECT ((REVERSE_DNS_OPTIONS)(0x00000002))
  112. #define SMTP_I_MAILFROM_RDNS ((REVERSE_DNS_OPTIONS)(0x00000004))
  113. #define SMTP_I_MAILFROM_RDNS_DISCONNECT ((REVERSE_DNS_OPTIONS)(0x00000008))
  114. // these should be added in the
  115. // metabase with a user type of IIS_MD_UT_SERVER
  116. //
  117. #define MD_COMMAND_LOG_MASK (SMTP_MD_ID_BEGIN_RESERVED ) // 36864
  118. #define MD_FLUSH_MAIL_FILE (SMTP_MD_ID_BEGIN_RESERVED+2 )
  119. #define MD_BATCH_MSG_LIMIT (SMTP_MD_ID_BEGIN_RESERVED+7 )
  120. #define MD_MAX_MAIL_OBJECTS (SMTP_MD_ID_BEGIN_RESERVED+9 )
  121. #define MD_ROUTING_THREADS (SMTP_MD_ID_BEGIN_RESERVED+10 )
  122. #define MD_MAIL_QUEUE_DIR (SMTP_MD_ID_BEGIN_RESERVED+11 )
  123. #define MD_SHOULD_PICKUP_MAIL (SMTP_MD_ID_BEGIN_RESERVED+12 )
  124. #define MD_MAX_DIR_BUFFERS (SMTP_MD_ID_BEGIN_RESERVED+13 )
  125. #define MD_MAX_DIR_CHANGE_IO_SIZE (SMTP_MD_ID_BEGIN_RESERVED+14 )
  126. #define MD_MAX_DIR_PENDING_IOS (SMTP_MD_ID_BEGIN_RESERVED+15 )
  127. #define MD_MAIL_PICKUP_DIR (SMTP_MD_ID_BEGIN_RESERVED+16 ) // 36880
  128. #define MD_SHOULD_DELIVER (SMTP_MD_ID_BEGIN_RESERVED+17 )
  129. #define MD_MAIL_DROP_DIR (SMTP_MD_ID_BEGIN_RESERVED+18 )
  130. #define MD_ROUTING_DLL (SMTP_MD_ID_BEGIN_RESERVED+19 )
  131. #define MD_REVERSE_NAME_LOOKUP (SMTP_MD_ID_BEGIN_RESERVED+20 )
  132. #define MD_NAME_RESOLUTION_TYPE (SMTP_MD_ID_BEGIN_RESERVED+21 )
  133. #define MD_HOP_COUNT (SMTP_MD_ID_BEGIN_RESERVED+22 )
  134. #define MD_MAX_SMTP_ERRORS (SMTP_MD_ID_BEGIN_RESERVED+23 )
  135. #define MD_MAX_MSG_SIZE (SMTP_MD_ID_BEGIN_RESERVED+27 )
  136. #define MD_MAX_MSG_SIZE_B4_CLOSE (SMTP_MD_ID_BEGIN_RESERVED+28 )
  137. //#define MD_OUTBOUND_TIMEOUT (SMTP_MD_ID_BEGIN_RESERVED+29 )
  138. #define MD_MAX_OUTBOUND_CONNECTION (SMTP_MD_ID_BEGIN_RESERVED+30 )
  139. #define MD_MAX_RECIPIENTS (SMTP_MD_ID_BEGIN_RESERVED+31 )
  140. #define MD_LOCAL_RETRY_ATTEMPTS (SMTP_MD_ID_BEGIN_RESERVED+32 )
  141. #define MD_LOCAL_RETRY_MINUTES (SMTP_MD_ID_BEGIN_RESERVED+33 )
  142. #define MD_REMOTE_RETRY_ATTEMPTS (SMTP_MD_ID_BEGIN_RESERVED+34 )
  143. #define MD_REMOTE_RETRY_MINUTES (SMTP_MD_ID_BEGIN_RESERVED+35 )
  144. //#define MD_SHARE_RETRY_MINUTES (SMTP_MD_ID_BEGIN_RESERVED+36 ) // 36900
  145. #define MD_SHOULD_PIPELINE_OUT (SMTP_MD_ID_BEGIN_RESERVED+37 )
  146. #define MD_SHOULD_PIPELINE_IN (SMTP_MD_ID_BEGIN_RESERVED+38 )
  147. #define MD_SMARTHOST_TYPE (SMTP_MD_ID_BEGIN_RESERVED+41 )
  148. #define MD_SMARTHOST_NAME (SMTP_MD_ID_BEGIN_RESERVED+42 )
  149. #define MD_CONNECT_RESPONSE (SMTP_MD_ID_BEGIN_RESERVED+43 )
  150. #define MD_DEFAULT_DOMAIN_VALUE (SMTP_MD_ID_BEGIN_RESERVED+44 )
  151. #define MD_BAD_MAIL_DIR (SMTP_MD_ID_BEGIN_RESERVED+45 )
  152. #define MD_ROUTING_SOURCES (SMTP_MD_ID_BEGIN_RESERVED+46 )
  153. //#define MD_REMOTE_HANG_TIME (SMTP_MD_ID_BEGIN_RESERVED+47 )
  154. #define MD_MASQUERADE_NAME (SMTP_MD_ID_BEGIN_RESERVED+48 )
  155. #define MD_DO_MASQUERADE (SMTP_MD_ID_BEGIN_RESERVED+49 )
  156. #define MD_REMOTE_SMTP_PORT (SMTP_MD_ID_BEGIN_RESERVED+50 )
  157. // added by feisu
  158. //#define MD_SSLPORT (SMTP_MD_ID_BEGIN_RESERVED+51 )
  159. #define MD_POSTMASTER_EMAIL (SMTP_MD_ID_BEGIN_RESERVED+52 )
  160. #define MD_POSTMASTER_NAME (SMTP_MD_ID_BEGIN_RESERVED+53 )
  161. #define MD_ETRN_DAYS (SMTP_MD_ID_BEGIN_RESERVED+54 )
  162. // end added by feisu
  163. #define MD_LOCAL_DOMAINS (SMTP_MD_ID_BEGIN_RESERVED+55)
  164. #define MD_DOMAIN_ROUTING (SMTP_MD_ID_BEGIN_RESERVED+56) // 36920
  165. #define MD_REMOTE_TIMEOUT (SMTP_MD_ID_BEGIN_RESERVED+57)
  166. #define MD_SEND_NDR_TO (SMTP_MD_ID_BEGIN_RESERVED+58)
  167. #define MD_SEND_BAD_TO (SMTP_MD_ID_BEGIN_RESERVED+59)
  168. #define MD_ALWAYS_USE_SSL (SMTP_MD_ID_BEGIN_RESERVED+60)
  169. #define MD_MAX_OUT_CONN_PER_DOMAIN (SMTP_MD_ID_BEGIN_RESERVED+61)
  170. #define MD_LIMIT_REMOTE_CONNECTIONS (SMTP_MD_ID_BEGIN_RESERVED+62)
  171. #define MD_REMOTE_SECURE_PORT (SMTP_MD_ID_BEGIN_RESERVED+65)
  172. //#define MD_SORT_TEMP_DIR (SMTP_MD_ID_BEGIN_RESERVED+66)
  173. #define MD_SMTP_SERVICE_VERSION (SMTP_MD_ID_BEGIN_RESERVED+67)
  174. //#define MD_SMTP_EXTENSION_DLLS (SMTP_MD_ID_BEGIN_RESERVED+68)
  175. //#define MD_SMTP_NUM_RESOLVER_SOCKETS (SMTP_MD_ID_BEGIN_RESERVED+69)
  176. //#define MD_SMTP_USE_MX_RESOLVER (SMTP_MD_ID_BEGIN_RESERVED+70)
  177. #define MD_FQDN_VALUE (SMTP_MD_ID_BEGIN_RESERVED+71)
  178. #define MD_UPDATED_FQDN (SMTP_MD_ID_BEGIN_RESERVED+72)
  179. #define MD_UPDATED_DEFAULT_DOMAIN (SMTP_MD_ID_BEGIN_RESERVED+73)
  180. #define MD_ETRN_SUBDOMAINS (SMTP_MD_ID_BEGIN_RESERVED+74)
  181. //#define MD_MAX_POOL_THREADS (SMTP_MD_ID_BEGIN_RESERVED+75)
  182. #define MD_SASL_LOGON_DOMAIN (SMTP_MD_ID_BEGIN_RESERVED+76) // 36940
  183. //#define MD_SERVER_SS_AUTH_MAPPING (SMTP_MD_ID_BEGIN_RESERVED+77)
  184. #define MD_SMTP_CLEARTEXT_AUTH_PROVIDER (SMTP_MD_ID_BEGIN_RESERVED+78)
  185. //#define MD_ALWAYS_USE_SASL (SMTP_MD_ID_BEGIN_RESERVED+79)
  186. //#define MD_SMTP_AUTHORIZATION (SMTP_MD_ID_BEGIN_RESERVED+80)
  187. #define MD_MAX_SMTP_AUTHLOGON_ERRORS (SMTP_MD_ID_BEGIN_RESERVED+81)
  188. #define MD_ROUTE_ACTION (SMTP_MD_ID_BEGIN_RESERVED+82)
  189. #define MD_ROUTE_ACTION_TYPE (SMTP_MD_ID_BEGIN_RESERVED+83)
  190. #define MD_ROUTE_USER_NAME (SMTP_MD_ID_BEGIN_RESERVED+84)
  191. #define MD_ROUTE_PASSWORD (SMTP_MD_ID_BEGIN_RESERVED+85)
  192. #define MD_SMTP_DS_TYPE (SMTP_MD_ID_BEGIN_RESERVED+86)
  193. #define MD_SMTP_DS_DATA_DIRECTORY (SMTP_MD_ID_BEGIN_RESERVED+87)
  194. #define MD_SMTP_DS_DEFAULT_MAIL_ROOT (SMTP_MD_ID_BEGIN_RESERVED+88)
  195. #define MD_SMTP_DS_BIND_TYPE (SMTP_MD_ID_BEGIN_RESERVED+89)
  196. #define MD_SMTP_DS_SCHEMA_TYPE (SMTP_MD_ID_BEGIN_RESERVED+90)
  197. #define MD_SMTP_DS_HOST (SMTP_MD_ID_BEGIN_RESERVED+91)
  198. #define MD_SMTP_DS_NAMING_CONTEXT (SMTP_MD_ID_BEGIN_RESERVED+92)
  199. #define MD_SMTP_DS_ACCOUNT (SMTP_MD_ID_BEGIN_RESERVED+93)
  200. #define MD_SMTP_DS_PASSWORD (SMTP_MD_ID_BEGIN_RESERVED+94)
  201. //#define MD_SMTP_DS_MAX_RESOLVE_BUFFERS (SMTP_MD_ID_BEGIN_RESERVED+95)
  202. //#define MD_SMTP_DS_MAX_VIRTUAL_SERVERS (SMTP_MD_ID_BEGIN_RESERVED+96) // 36960
  203. //#define MD_SMTP_DS_MAX_HANDLE_CACHE_ENTRIES (SMTP_MD_ID_BEGIN_RESERVED+97)
  204. //#define MD_SMTP_DS_SORT_THRESHOLD (SMTP_MD_ID_BEGIN_RESERVED+98)
  205. //#define MD_SMTP_PREFERRED_AUTH (SMTP_MD_ID_BEGIN_RESERVED+99)
  206. #define MD_SMTP_MAX_REMOTEQ_THREADS (SMTP_MD_ID_BEGIN_RESERVED+100)
  207. #define MD_SMTP_MAX_LOCALQ_THREADS (SMTP_MD_ID_BEGIN_RESERVED+101)
  208. #define MD_SMTP_AUTHORIZED_TURN_LIST (SMTP_MD_ID_BEGIN_RESERVED+102)
  209. #define MD_SMTP_CSIDE_ETRN_DELAY (SMTP_MD_ID_BEGIN_RESERVED+103)
  210. #define MD_SMTP_CSIDE_ETRN_DOMAIN (SMTP_MD_ID_BEGIN_RESERVED+104)
  211. //#define MD_SMTP_VALIDATE_HELO_ARG (SMTP_MD_ID_BEGIN_RESERVED+105)
  212. #define MD_SMTP_IP_RELAY_ADDRESSES (SMTP_MD_ID_BEGIN_RESERVED+106)
  213. //#define MD_SYSTEM_ROUTING_THREADS (SMTP_MD_ID_BEGIN_RESERVED+108)
  214. #define MD_SMTP_RELAY_FOR_AUTH_USERS (SMTP_MD_ID_BEGIN_RESERVED+109)
  215. #define MD_SMTP_DISABLE_RELAY (SMTP_MD_ID_BEGIN_RESERVED+110)
  216. //Chunking advertisement flags
  217. //#define MD_SHOW_BINARY_MIME (SMTP_MD_ID_BEGIN_RESERVED+111)
  218. //#define MD_SHOW_CHUNKING (SMTP_MD_ID_BEGIN_RESERVED+112)
  219. //#define MD_SMTP_RDNS_OPTIONS (SMTP_MD_ID_BEGIN_RESERVED+113)
  220. //#define MD_SMTP_DSN_DELAY (SMTP_MD_ID_BEGIN_RESERVED+114)
  221. #define MD_ROUTE_AUTHTARGET (SMTP_MD_ID_BEGIN_RESERVED+115)
  222. // (+116) 36980
  223. #define MD_SMTP_HELO_NODOMAIN (SMTP_MD_ID_BEGIN_RESERVED+117)
  224. #define MD_SMTP_MAIL_NO_HELO (SMTP_MD_ID_BEGIN_RESERVED+118)
  225. #define MD_SMTP_INBOUND_NAGLE (SMTP_MD_ID_BEGIN_RESERVED+119)
  226. #define MD_SMTP_OUTBOUND_NAGLE (SMTP_MD_ID_BEGIN_RESERVED+120)
  227. #define MD_SMTP_INBOUND_SND_BUFF (SMTP_MD_ID_BEGIN_RESERVED+121)
  228. #define MD_SMTP_INBOUND_RCV_BUFF (SMTP_MD_ID_BEGIN_RESERVED+122)
  229. //DLL specifiers flags
  230. #define MD_AQUEUE_DLL (SMTP_MD_ID_BEGIN_RESERVED+123)
  231. //#define MD_MAPIDRV_DLL (SMTP_MD_ID_BEGIN_RESERVED+124)
  232. //#define MD_CAT_DLL (SMTP_MD_ID_BEGIN_RESERVED+125)
  233. #define MD_SMTP_AQUEUE_WAIT (SMTP_MD_ID_BEGIN_RESERVED+126)
  234. //#define MD_SMTP_USE_REMOTE_DS (SMTP_MD_ID_BEGIN_RESERVED+127)
  235. //Address validation flags
  236. #define MD_DOMAIN_VALIDATION_FLAGS (SMTP_MD_ID_BEGIN_RESERVED+128)
  237. #define MD_SMTP_DS_DOMAIN (SMTP_MD_ID_BEGIN_RESERVED+129)
  238. #define MD_SMTP_DS_USE_CAT (SMTP_MD_ID_BEGIN_RESERVED+130)
  239. //New Retry related flags
  240. #define MD_SMTP_REMOTE_RETRY_THRESHOLD (SMTP_MD_ID_BEGIN_RESERVED+131)
  241. #define MD_SMTP_REMOTE_PROGRESSIVE_RETRY_MINUTES (SMTP_MD_ID_BEGIN_RESERVED+132)
  242. #define MD_SMTP_USE_TCP_DNS (SMTP_MD_ID_BEGIN_RESERVED+133)
  243. #define MD_INBOUND_COMMAND_SUPPORT_OPTIONS (SMTP_MD_ID_BEGIN_RESERVED+134)
  244. #define MD_OUTBOUND_COMMAND_SUPPORT_OPTIONS (SMTP_MD_ID_BEGIN_RESERVED+135)
  245. #define MD_ADD_NOHEADERS (SMTP_MD_ID_BEGIN_RESERVED+136) // 37000
  246. //Relocated due to ID conflict
  247. #define MD_SMTP_CONNECT_TIMEOUT (SMTP_MD_ID_BEGIN_RESERVED+137)
  248. #define MD_SMTP_MAILFROM_TIMEOUT (SMTP_MD_ID_BEGIN_RESERVED+138)
  249. #define MD_SMTP_RCPTTO_TIMEOUT (SMTP_MD_ID_BEGIN_RESERVED+139)
  250. #define MD_SMTP_DATA_TIMEOUT (SMTP_MD_ID_BEGIN_RESERVED+140)
  251. #define MD_SMTP_BDAT_TIMEOUT (SMTP_MD_ID_BEGIN_RESERVED+141)
  252. #define MD_SMTP_AUTH_TIMEOUT (SMTP_MD_ID_BEGIN_RESERVED+142)
  253. #define MD_SMTP_SASL_TIMEOUT (SMTP_MD_ID_BEGIN_RESERVED+143)
  254. //#define MD_SMTP_ETRN_TIMEOUT (SMTP_MD_ID_BEGIN_RESERVED+144)
  255. #define MD_SMTP_TURN_TIMEOUT (SMTP_MD_ID_BEGIN_RESERVED+145)
  256. #define MD_SMTP_RSET_TIMEOUT (SMTP_MD_ID_BEGIN_RESERVED+146)
  257. //#define MD_SMTP_QUIT_TIMEOUT (SMTP_MD_ID_BEGIN_RESERVED+147)
  258. #define MD_SMTP_HELO_TIMEOUT (SMTP_MD_ID_BEGIN_RESERVED+148)
  259. //#define MD_SMTP_EHLO_TIMEOUT (SMTP_MD_ID_BEGIN_RESERVED+149)
  260. //#define MD_SMTP_DATATERMINATION_TIMEOUT (SMTP_MD_ID_BEGIN_RESERVED+150)
  261. //#define MD_SMTP_BDATTERMINATION_TIMEOUT (SMTP_MD_ID_BEGIN_RESERVED+151)
  262. //#define MD_SMTP_TLS_TIMEOUT (SMTP_MD_ID_BEGIN_RESERVED+152)
  263. //For setting DSN expire intervals (in minutes)
  264. #define MD_SMTP_EXPIRE_LOCAL_DELAY_MIN (SMTP_MD_ID_BEGIN_RESERVED+153)
  265. #define MD_SMTP_EXPIRE_LOCAL_NDR_MIN (SMTP_MD_ID_BEGIN_RESERVED+154)
  266. #define MD_SMTP_EXPIRE_REMOTE_DELAY_MIN (SMTP_MD_ID_BEGIN_RESERVED+155)
  267. #define MD_SMTP_EXPIRE_REMOTE_NDR_MIN (SMTP_MD_ID_BEGIN_RESERVED+156) // 37020
  268. //DSN specific keys
  269. #define MD_SMTP_DSN_OPTIONS (SMTP_MD_ID_BEGIN_RESERVED+157)
  270. #define MD_SMTP_DSN_LANGUAGE_ID (SMTP_MD_ID_BEGIN_RESERVED+158)
  271. //
  272. // jstamerj 1998/10/27 08:36:59: To specify the remote ldap tcp port
  273. //
  274. #define MD_SMTP_DS_PORT (SMTP_MD_ID_BEGIN_RESERVED+159)
  275. #define MD_SMTP_DS_FLAGS (SMTP_MD_ID_BEGIN_RESERVED+160)
  276. // SSL keys
  277. #define MD_SMTP_SSL_REQUIRE_TRUSTED_CA (SMTP_MD_ID_BEGIN_RESERVED+161)
  278. #define MD_SMTP_SSL_CERT_HOSTNAME_VALIDATION (SMTP_MD_ID_BEGIN_RESERVED+162)
  279. // logging level
  280. #define MD_SMTP_EVENTLOG_LEVEL (SMTP_MD_ID_BEGIN_RESERVED+163)
  281. //#define MD_SMTP_MAX_INBOUND_CONNECTIONS_PER_IP (SMTP_MD_ID_BEGIN_RESERVED+164 )
  282. //#define MD_SMTP_SSL_CERT_HOSTNAME_OVERRIDE (SMTP_MD_ID_BEGIN_RESERVED+165)
  283. #define MD_SMTP_DISABLE_PICKUP_DOT_STUFF (SMTP_MD_ID_BEGIN_RESERVED+166)
  284. #define MD_SMTP_DENIED_IP_ACTION (SMTP_MD_ID_BEGIN_RESERVED+167)
  285. #define MD_SMTP_POST_DNS_SMARTHOST (SMTP_MD_ID_BEGIN_RESERVED+168)
  286. //
  287. // Flags for the MD_SMTP_DS_FLAGS DWORD key:
  288. //
  289. #define SMTPDSFLAG_RESOLVELOCAL 0x00000001
  290. #define SMTPDSFLAG_RESOLVEREMOTE 0x00000002
  291. #define SMTPDSFLAG_RESOLVESENDER 0x00000004
  292. #define SMTPDSFLAG_RESOLVERECIPIENTS 0x00000008
  293. #define SMTPDSFLAG_ALLFLAGS 0x0000000F
  294. //
  295. //Flags for the MD_SMTP_DS_USE_CAT DWORD key:
  296. //
  297. #define SMTPDSUSECAT_ENABLED 0xFFFFFFFF
  298. #define SMTPDSUSECAT_DISABLED 0x00000000
  299. //
  300. // Settings for the MD_SMTP_DENIED_IP_ACTION
  301. //
  302. #define SMTPDENIEDIP_DROPCONN 0x0
  303. #define SMTPDENIEDIP_REQAUTH 0x1