smtp.m4
上传用户:xu_441
上传日期:2007-01-04
资源大小:1640k
文件大小:5k
源码类别:

Email客户端

开发平台:

Unix_Linux

  1. PUSHDIVERT(-1)
  2. #
  3. # Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers.
  4. # All rights reserved.
  5. # Copyright (c) 1983 Eric P. Allman.  All rights reserved.
  6. # Copyright (c) 1988, 1993
  7. # The Regents of the University of California.  All rights reserved.
  8. #
  9. # By using this file, you agree to the terms and conditions set
  10. # forth in the LICENSE file which can be found at the top level of
  11. # the sendmail distribution.
  12. #
  13. #
  14. _DEFIFNOT(`_DEF_SMTP_MAILER_FLAGS', `mDFMuX')
  15. _DEFIFNOT(`SMTP_MAILER_FLAGS',`')
  16. _DEFIFNOT(`RELAY_MAILER_FLAGS', `')
  17. ifdef(`SMTP_MAILER_ARGS',, `define(`SMTP_MAILER_ARGS', `IPC $h')')
  18. ifdef(`ESMTP_MAILER_ARGS',, `define(`ESMTP_MAILER_ARGS', `IPC $h')')
  19. ifdef(`SMTP8_MAILER_ARGS',, `define(`SMTP8_MAILER_ARGS', `IPC $h')')
  20. ifdef(`DSMTP_MAILER_ARGS',, `define(`DSMTP_MAILER_ARGS', `IPC $h')')
  21. ifdef(`RELAY_MAILER_ARGS',, `define(`RELAY_MAILER_ARGS', `IPC $h')')
  22. POPDIVERT
  23. #####################################
  24. ###   SMTP Mailer specification   ###
  25. #####################################
  26. VERSIONID(`$Id: smtp.m4,v 8.55 1999/09/21 20:26:18 ca Exp $')
  27. #
  28. #  common sender and masquerading recipient rewriting
  29. #
  30. SMasqSMTP=61
  31. R$* < @ $* > $* $@ $1 < @ $2 > $3 already fully qualified
  32. R$+ $@ $1 < @ *LOCAL* > add local qualification
  33. #
  34. #  convert pseudo-domain addresses to real domain addresses
  35. #
  36. SPseudoToReal=51
  37. # pass <route-addr>s through
  38. R< @ $+ > $* $@ < @ $1 > $2 resolve <route-addr>
  39. # output fake domains as user%fake@relay
  40. ifdef(`BITNET_RELAY',
  41. `R$+ <@ $+ .BITNET. > $: $1 % $2 .BITNET < @ $B > user@host.BITNET
  42. R$+.BITNET <@ $+:$+ > $: $1 .BITNET < @ $3 > strip mailer: part',
  43. `dnl')
  44. ifdef(`_NO_UUCP_', `dnl', `
  45. # do UUCP heuristics; note that these are shared with UUCP mailers
  46. R$+ < @ $+ .UUCP. > $: < $2 ! > $1 convert to UUCP form
  47. R$+ < @ $* > $* $@ $1 < @ $2 > $3 not UUCP form
  48. # leave these in .UUCP form to avoid further tampering
  49. R< $&h ! > $- ! $+ $@ $2 < @ $1 .UUCP. >
  50. R< $&h ! > $-.$+ ! $+ $@ $3 < @ $1.$2 >
  51. R< $&h ! > $+ $@ $1 < @ $&h .UUCP. >
  52. R< $+ ! > $+ $: $1 ! $2 < @ $Y > use UUCP_RELAY
  53. R$+ < @ $+ : $+ > $@ $1 < @ $3 > strip mailer: part
  54. R$+ < @ > $: $1 < @ *LOCAL* > if no UUCP_RELAY')
  55. #
  56. #  envelope sender rewriting
  57. #
  58. SEnvFromSMTP=11
  59. R$+ $: $>PseudoToReal $1 sender/recipient common
  60. R$* :; <@> $@ list:; special case
  61. R$* $: $>MasqSMTP $1 qualify unqual'ed names
  62. R$+ $: $>MasqEnv $1 do masquerading
  63. #
  64. #  envelope recipient rewriting --
  65. #  also header recipient if not masquerading recipients
  66. #
  67. SEnvToSMTP=21
  68. R$+ $: $>PseudoToReal $1 sender/recipient common
  69. R$+ $: $>MasqSMTP $1 qualify unqual'ed names
  70. R$* < @ *LOCAL* > $* $: $1 < @ $j . > $2
  71. #
  72. #  header sender and masquerading header recipient rewriting
  73. #
  74. SHdrFromSMTP=31
  75. R$+ $: $>PseudoToReal $1 sender/recipient common
  76. R:; <@> $@ list:; special case
  77. # do special header rewriting
  78. R$* <@> $* $@ $1 <@> $2 pass null host through
  79. R< @ $* > $* $@ < @ $1 > $2 pass route-addr through
  80. R$* $: $>MasqSMTP $1 qualify unqual'ed names
  81. R$+ $: $>MasqHdr $1 do masquerading
  82. #
  83. #  relay mailer header masquerading recipient rewriting
  84. #
  85. SMasqRelay=71
  86. R$+ $: $>MasqSMTP $1
  87. R$+ $: $>MasqHdr $1
  88. Msmtp, P=[IPC], F=_MODMF_(CONCAT(_DEF_SMTP_MAILER_FLAGS, SMTP_MAILER_FLAGS), `SMTP'), S=EnvFromSMTP/HdrFromSMTP, R=ifdef(`_ALL_MASQUERADE_', `EnvToSMTP/HdrFromSMTP', `EnvToSMTP'), E=rn, L=990,
  89. _OPTINS(`SMTP_MAILER_MAX', `M=', `, ')_OPTINS(`SMTP_MAILER_MAXMSGS', `m=', `, ')_OPTINS(`SMTP_MAILER_CHARSET', `C=', `, ')T=DNS/RFC822/SMTP,
  90. A=SMTP_MAILER_ARGS
  91. Mesmtp, P=[IPC], F=CONCAT(_DEF_SMTP_MAILER_FLAGS, `a', SMTP_MAILER_FLAGS), S=EnvFromSMTP/HdrFromSMTP, R=ifdef(`_ALL_MASQUERADE_', `EnvToSMTP/HdrFromSMTP', `EnvToSMTP'), E=rn, L=990,
  92. _OPTINS(`SMTP_MAILER_MAX', `M=', `, ')_OPTINS(`SMTP_MAILER_MAXMSGS', `m=', `, ')_OPTINS(`SMTP_MAILER_CHARSET', `C=', `, ')T=DNS/RFC822/SMTP,
  93. A=ESMTP_MAILER_ARGS
  94. Msmtp8, P=[IPC], F=CONCAT(_DEF_SMTP_MAILER_FLAGS, `8', SMTP_MAILER_FLAGS), S=EnvFromSMTP/HdrFromSMTP, R=ifdef(`_ALL_MASQUERADE_', `EnvToSMTP/HdrFromSMTP', `EnvToSMTP'), E=rn, L=990,
  95. _OPTINS(`SMTP_MAILER_MAX', `M=', `, ')_OPTINS(`SMTP_MAILER_MAXMSGS', `m=', `, ')_OPTINS(`SMTP_MAILER_CHARSET', `C=', `, ')T=DNS/RFC822/SMTP,
  96. A=SMTP8_MAILER_ARGS
  97. Mdsmtp, P=[IPC], F=CONCAT(_DEF_SMTP_MAILER_FLAGS, `a%', SMTP_MAILER_FLAGS), S=EnvFromSMTP/HdrFromSMTP, R=ifdef(`_ALL_MASQUERADE_', `EnvToSMTP/HdrFromSMTP', `EnvToSMTP'), E=rn, L=990,
  98. _OPTINS(`SMTP_MAILER_MAX', `M=', `, ')_OPTINS(`SMTP_MAILER_MAXMSGS', `m=', `, ')_OPTINS(`SMTP_MAILER_CHARSET', `C=', `, ')T=DNS/RFC822/SMTP,
  99. A=DSMTP_MAILER_ARGS
  100. Mrelay, P=[IPC], F=CONCAT(_DEF_SMTP_MAILER_FLAGS, `a8', RELAY_MAILER_FLAGS), S=EnvFromSMTP/HdrFromSMTP, R=ifdef(`_ALL_MASQUERADE_', `MasqSMTP/MasqRelay', `MasqSMTP'), E=rn, L=2040,
  101. _OPTINS(`RELAY_MAILER_CHARSET', `C=', `, ')_OPTINS(`RELAY_MAILER_MAXMSGS', `m=', `, ')T=DNS/RFC822/SMTP,
  102. A=RELAY_MAILER_ARGS