summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--imap/imaplogin.c2
-rw-r--r--sqwebmail/images/logo.pngbin4059 -> 4053 bytes
-rw-r--r--tcpd/tcpd.c19
3 files changed, 17 insertions, 4 deletions
diff --git a/imap/imaplogin.c b/imap/imaplogin.c
index 4056dd4..0f0b0bf 100644
--- a/imap/imaplogin.c
+++ b/imap/imaplogin.c
@@ -469,7 +469,7 @@ int main(int argc, char **argv)
writes("* OK [CAPABILITY ");
imapcapability();
writes("] Courier-IMAP ready. "
- "Copyright 1998-2016 Double Precision, Inc. "
+ "Copyright 1998-2017 Double Precision, Inc. "
"See COPYING for distribution information.\r\n");
fprintf(stderr, "DEBUG: Connection, ip=[%s]\n", ip);
writeflush();
diff --git a/sqwebmail/images/logo.png b/sqwebmail/images/logo.png
index 28efca9..69c70d3 100644
--- a/sqwebmail/images/logo.png
+++ b/sqwebmail/images/logo.png
Binary files differ
diff --git a/tcpd/tcpd.c b/tcpd/tcpd.c
index 819dc51..093a23a 100644
--- a/tcpd/tcpd.c
+++ b/tcpd/tcpd.c
@@ -1624,11 +1624,11 @@ static void docheckblocklist(struct blocklist_s *p, const char *nameptr)
if (p->allow)
wanttxt = p->msg != 0;
else
- wanttxt = (p->msg == 0 || *p->msg == 0);
+ wanttxt = p->msg && strcmp(p->msg, "*") == 0;
(void)rfc1035_resolve_cname(&res,
hostname,
- wanttxt ? RFC1035_TYPE_ANY:RFC1035_TYPE_A,
+ wanttxt ? RFC1035_TYPE_TXT:RFC1035_TYPE_A,
RFC1035_CLASS_IN, &replyp, 0);
if (!replyp)
@@ -1673,12 +1673,25 @@ static void docheckblocklist(struct blocklist_s *p, const char *nameptr)
if (!search_txt_records(&res, p->allow, varname, replyp,
hostname) && !p->allow)
{
+ size_t l=strlen(p->zone)+40;
+ char *buf=malloc(l+1);
+
+ if (!buf)
+ {
+ perror("malloc");
+ _exit(1);
+ }
+
+ buf[snprintf(buf, l, "Sender @ blacklisted by %s",
+ p->zone)]=0;
+
/*
** Even though we did not find a TXT record, we're here
** because of an A record, so for -blocks, we must
** set varname to something.
*/
- mysetenv(varname, "Access denied.");
+ mkmymsg(varname, buf);
+ free(buf);
}
found=1;