# local exim is SMTP server and clients authenticate to the local exim.
# They allow two styles of plain-text authentication against an
-# CONFDIR/passwd file whose syntax is described in exim_passwd(5).
+# CONFDIR/passwd file whose syntax is described in exim4_passwd(5).
# Hosts that are allowed to use AUTH are defined by the
# auth_advertise_hosts option in the main configuration. The default is
client_name = ${extract{1}{:}{${lookup{$host}nwildlsearch{CONFDIR/passwd.client}{$value}fail}}}
client_secret = ${extract{2}{:}{${lookup{$host}nwildlsearch{CONFDIR/passwd.client}{$value}fail}}}
-# hcoop-change: Authenticate against /etc/courier/exim.dat for plain
-# and login authenticators
-
-userdb_plain:
- driver = plaintext
- public_name = PLAIN
- server_condition = \
- ${if \
- crypteq {$3} \
- {${extract{systempw}{${tr{${lookup{$2} \
- dbm{/etc/courier/exim.dat} \
- }}{|}{ }}}}} \
- {yes} \
- {no} \
- }
- server_set_id = $2
-
-userdb_login:
- driver = plaintext
- public_name = LOGIN
- server_prompts = "Username:: : Password::"
- server_condition = \
- ${if \
- crypteq {$2} \
- {${extract{systempw}{${tr{${lookup{$1} \
- dbm{/etc/courier/exim.dat} \
- }}{|}{ }}}}} \
- {yes} \
- {no} \
- }
- server_set_id = $1
-
# this returns the matching line from passwd.client and doubles all ^
PASSWDLINE=${sg{\
${lookup{$host}nwildlsearch{CONFDIR/passwd.client}{$value}fail}\
{^^}\
}
-# hcoop-change: Comment out plain and login authenticators
-
-# plain:
-# driver = plaintext
-# public_name = PLAIN
-# .ifndef AUTH_CLIENT_ALLOW_NOTLS_PASSWORDS
-# client_send = "<; ${if !eq{$tls_cipher}{}\
-# {^${extract{1}{:}{PASSWDLINE}}\
-# ^${sg{PASSWDLINE}{\\N([^:]+:)(.*)\\N}{\\$2}}\
-# }fail}"
-# .else
-# client_send = "<; ^${extract{1}{:}{PASSWDLINE}}\
-# ^${sg{PASSWDLINE}{\\N([^:]+:)(.*)\\N}{\\$2}}"
-# .endif
-
-# login:
-# driver = plaintext
-# public_name = LOGIN
-# .ifndef AUTH_CLIENT_ALLOW_NOTLS_PASSWORDS
-# # Return empty string if not non-TLS AND looking up $host in passwd-file
-# # yields a non-empty string; fail otherwise.
-# client_send = "<; ${if and{\
-# {!eq{$tls_cipher}{}}\
-# {!eq{PASSWDLINE}{}}\
-# }\
-# {}fail}\
-# ; ${extract{1}{::}{PASSWDLINE}}\
-# ; ${sg{PASSWDLINE}{\\N([^:]+:)(.*)\\N}{\\$2}}"
-# .else
-# # Return empty string if looking up $host in passwd-file yields a
-# # non-empty string; fail otherwise.
-# client_send = "<; ${if !eq{PASSWDLINE}{}\
-# {}fail}\
-# ; ${extract{1}{::}{PASSWDLINE}}\
-# ; ${sg{PASSWDLINE}{\\N([^:]+:)(.*)\\N}{\\$2}}"
-# .endif
+plain:
+ driver = plaintext
+ public_name = PLAIN
+.ifndef AUTH_CLIENT_ALLOW_NOTLS_PASSWORDS
+ client_send = "<; ${if !eq{$tls_cipher}{}\
+ {^${extract{1}{:}{PASSWDLINE}}\
+ ^${sg{PASSWDLINE}{\\N([^:]+:)(.*)\\N}{\\$2}}\
+ }fail}"
+.else
+ client_send = "<; ^${extract{1}{:}{PASSWDLINE}}\
+ ^${sg{PASSWDLINE}{\\N([^:]+:)(.*)\\N}{\\$2}}"
+.endif
+
+login:
+ driver = plaintext
+ public_name = LOGIN
+.ifndef AUTH_CLIENT_ALLOW_NOTLS_PASSWORDS
+ # Return empty string if not non-TLS AND looking up $host in passwd-file
+ # yields a non-empty string; fail otherwise.
+ client_send = "<; ${if and{\
+ {!eq{$tls_cipher}{}}\
+ {!eq{PASSWDLINE}{}}\
+ }\
+ {}fail}\
+ ; ${extract{1}{::}{PASSWDLINE}}\
+ ; ${sg{PASSWDLINE}{\\N([^:]+:)(.*)\\N}{\\$2}}"
+.else
+ # Return empty string if looking up $host in passwd-file yields a
+ # non-empty string; fail otherwise.
+ client_send = "<; ${if !eq{PASSWDLINE}{}\
+ {}fail}\
+ ; ${extract{1}{::}{PASSWDLINE}}\
+ ; ${sg{PASSWDLINE}{\\N([^:]+:)(.*)\\N}{\\$2}}"
+.endif