1 diff -dur postfix-2.1.3.orig/src/global/mail_params.c postfix-2.1.3/src/global/mail_params.c
2 --- postfix-2.1.3.orig/src/global/mail_params.c 2004-06-22 14:32:57.233814749 +0200
3 +++ postfix-2.1.3/src/global/mail_params.c 2004-06-22 14:40:34.205217191 +0200
5 /* char *var_debug_peer_list;
6 /* int var_debug_peer_level;
7 /* int var_in_flow_delay;
8 +/* char *var_reject_reply_msg_access_denied;
9 /* int var_fault_inj_code;
10 /* char *var_bounce_service;
11 /* char *var_cleanup_service;
13 char *var_export_environ;
14 char *var_debug_peer_list;
15 int var_debug_peer_level;
16 +char *var_reject_reply_msg_access_denied;
17 int var_fault_inj_code;
18 char *var_bounce_service;
19 char *var_cleanup_service;
21 VAR_SMTP_TLS_CLIST, DEF_SMTP_TLS_CLIST, &var_smtp_tls_cipherlist, 0, 0,
22 VAR_SMTP_TLS_SCACHE_DB, DEF_SMTP_TLS_SCACHE_DB, &var_smtp_tls_scache_db, 0, 0,
23 VAR_TLS_DAEMON_RAND_SOURCE, DEF_TLS_DAEMON_RAND_SOURCE, &var_tls_daemon_rand_source, 0, 0,
24 + VAR_REJECT_REPLY_MSG_ACCESS_DENIED, DEF_REJECT_REPLY_MSG_ACCESS_DENIED, &var_reject_reply_msg_access_denied, 1, 0,
28 diff -dur postfix-2.1.3.orig/src/global/mail_params.h postfix-2.1.3/src/global/mail_params.h
29 --- postfix-2.1.3.orig/src/global/mail_params.h 2004-06-22 14:32:58.615734426 +0200
30 +++ postfix-2.1.3/src/global/mail_params.h 2004-06-22 14:33:21.260418134 +0200
31 @@ -2204,6 +2204,13 @@
32 extern char *var_anvil_service;
38 +#define VAR_REJECT_REPLY_MSG_ACCESS_DENIED "smtpd_reject_msg_access_denied"
39 +#define DEF_REJECT_REPLY_MSG_ACCESS_DENIED "rejected: Relay access denied."
40 +extern char *var_reject_reply_msg_access_denied;
45 diff -dur postfix-2.1.3.orig/src/smtpd/smtpd.c postfix-2.1.3/src/smtpd/smtpd.c
46 --- postfix-2.1.3.orig/src/smtpd/smtpd.c 2004-06-22 14:32:57.338808646 +0200
47 +++ postfix-2.1.3/src/smtpd/smtpd.c 2004-06-22 14:41:40.372360162 +0200
49 VAR_RELAY_CCERTS, DEF_RELAY_CCERTS, &var_relay_ccerts, 0, 0,
50 VAR_SMTPD_SASL_TLS_OPTS, DEF_SMTPD_SASL_TLS_OPTS, &var_smtpd_sasl_tls_opts, 0, 0,
52 + VAR_REJECT_REPLY_MSG_ACCESS_DENIED, DEF_REJECT_REPLY_MSG_ACCESS_DENIED, &var_reject_reply_msg_access_denied, 1, 0,
55 static CONFIG_RAW_TABLE raw_table[] = {
56 diff -dur postfix-2.1.3.orig/src/smtpd/smtpd_check.c postfix-2.1.3/src/smtpd/smtpd_check.c
57 --- postfix-2.1.3.orig/src/smtpd/smtpd_check.c 2004-06-22 14:32:57.348808065 +0200
58 +++ postfix-2.1.3/src/smtpd/smtpd_check.c 2004-06-22 14:33:21.271417494 +0200
60 char *reply_name, char *reply_class)
62 char *myname = "check_relay_domains";
63 + VSTRING *reply_msg = vstring_alloc(1);
67 @@ -1133,9 +1134,10 @@
69 * Deny relaying between sites that both are not in relay_domains.
71 + vstring_strcat(reply_msg, "%d <%s>: %s ");
72 + vstring_strcat(reply_msg, var_reject_reply_msg_access_denied);
73 return (smtpd_check_reject(state, MAIL_ERROR_POLICY,
74 - "%d <%s>: %s rejected: Relay access denied",
75 - var_relay_code, reply_name, reply_class));
76 + vstring_export(reply_msg), var_relay_code, reply_name, reply_class));
79 /* permit_auth_destination - OK for message relaying */
81 static int reject_unauth_destination(SMTPD_STATE *state, char *recipient)
83 char *myname = "reject_unauth_destination";
84 + VSTRING *reply_msg = vstring_alloc(1);
87 msg_info("%s: %s", myname, recipient);
88 @@ -1205,9 +1208,10 @@
90 * Reject relaying to sites that are not listed in relay_domains.
92 + vstring_strcat(reply_msg, "%d <%s>: ");
93 + vstring_strcat(reply_msg, var_reject_reply_msg_access_denied);
94 return (smtpd_check_reject(state, MAIL_ERROR_POLICY,
95 - "%d <%s>: Relay access denied",
96 - var_relay_code, recipient));
97 + vstring_export(reply_msg), var_relay_code, recipient));
100 /* reject_unauth_pipelining - reject improper use of SMTP command pipelining */