diff options
Diffstat (limited to 'sendmail-8.14.8-sasl2-in-etc.patch')
-rw-r--r-- | sendmail-8.14.8-sasl2-in-etc.patch | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/sendmail-8.14.8-sasl2-in-etc.patch b/sendmail-8.14.8-sasl2-in-etc.patch new file mode 100644 index 000000000000..fe8f353f3725 --- /dev/null +++ b/sendmail-8.14.8-sasl2-in-etc.patch @@ -0,0 +1,31 @@ +diff --git a/sendmail/usersmtp.c b/sendmail/usersmtp.c +index c217ffa..e4dadd3 100644 +--- a/sendmail/usersmtp.c ++++ b/sendmail/usersmtp.c +@@ -1331,9 +1331,7 @@ safesaslfile(context, file) + { + long sff; + int r; +-#if SASL <= 10515 + size_t len; +-#endif /* SASL <= 10515 */ + char *p; + + if (file == NULL || *file == '\0') +@@ -1369,9 +1367,16 @@ safesaslfile(context, file) + #endif /* SASL <= 10515 */ + + p = (char *) file; ++ len = strlen(p); + if ((r = safefile(p, RunAsUid, RunAsGid, RunAsUserName, sff, + S_IRUSR, NULL)) == 0) + return SASL_OK; ++#if SASL > 10515 ++ /* Expect /usr/lib/sasl2/Sendmail.conf to be missing - config now in /etc/sasl2 */ ++ if (type == SASL_VRFY_CONF && r == ENOENT && ++ len >= 8 && strncmp(p, "/usr/lib", 8) == 0) ++ return SASL_CONTINUE; ++#endif /* SASL > 10515 */ + if (LogLevel > (r != ENOENT ? 8 : 10)) + sm_syslog(LOG_WARNING, NOQID, "error: safesasl(%s) failed: %s", + p, sm_errstring(r)); |