unavailable, causing the restrictions parser to get out if
sync. Spotted by Ralf Hildebrandt. File: smtpd/smtpd_check.c.
+20020928
+
+ Bugfix: missing %s in the 20020923 RBL code. This was not
+ exploitable because Postfix implements only a safe subset
+ of all printf format operators and because memory for the
+ result is dynamically allocated. Victor Duchovni. File:
+ smtpd/smtpd_check.c.
+
Open problems:
Low: smtpd should log queue ID with reject/warn/hold/discard
* Patches change the patchlevel and the release date. Snapshots change the
* release date only, unless they include the same bugfix as a patch release.
*/
-#define MAIL_RELEASE_DATE "20020924"
+#define MAIL_RELEASE_DATE "20020928"
#define VAR_MAIL_VERSION "mail_version"
#define DEF_MAIL_VERSION "1.1.11-" MAIL_RELEASE_DATE
* Cached RBL lookup state.
*/
typedef struct {
- char *txt; /* TXT record or null */
+ char *txt; /* TXT record or "" */
} SMTPD_RBL_STATE;
static void *rbl_pagein(const char *, void *);
myname, rbl_domain, template);
template = 0; /* pretend not found */
}
- result = smtpd_check_reject(state, MAIL_ERROR_POLICY, STR(why));
+ result = smtpd_check_reject(state, MAIL_ERROR_POLICY, "%s", STR(why));
/*
* Clean up.