upas/smtp: move greylist files into /mail/grey/tmp, /mail/grey/whitelist
change whitelist format to be more tool-friendly
[rsc] --rw-rw-r-- M 628694 presotto sys 6514 Apr 10 11:41 sys/src/cmd/upas/smtp/greylist.c
/n/sourcesdump/2006/0410/plan9/sys/src/cmd/upas/smtp/greylist.c:23,39 -
/n/sourcesdump/2006/0411/plan9/sys/src/cmd/upas/smtp/greylist.c:23,39
enum {
Nonspammax = 14*60*60, /* must call back within this time if real */
};
- static char whitelist[] = "/mail/lib/whitelist";
+ static char whitelist[] = "/mail/grey/whitelist";
/*
* matches ip addresses or subnets in whitelist against nci->rsys.
- * ignores comments and blank lines in /mail/lib/whitelist.
+ * ignores comments and blank lines in /mail/grey/whitelist.
*/
static int
onwhitelist(void)
{
int lnlen;
- char *line, *parse;
+ char *line, *parse, *p;
char input[128];
uchar ip[IPaddrlen], ipmasked[IPaddrlen];
uchar mask4[IPaddrlen], addr4[IPaddrlen];
/n/sourcesdump/2006/0410/plan9/sys/src/cmd/upas/smtp/greylist.c:52,66 -
/n/sourcesdump/2006/0411/plan9/sys/src/cmd/upas/smtp/greylist.c:52,70
if (wl == nil)
return 1;
while ((line = Brdline(wl, '\n')) != nil) {
- if (line[0] == '#' || line[0] == '\n')
- continue;
lnlen = Blinelen(wl);
line[lnlen-1] = '\0'; /* clobber newline */
+ p = strpbrk(line, " \t");
+ if (p)
+ *p = 0;
+ if (line[0] == '#' || line[0] == 0)
+ continue;
+
/* default mask is /32 (v4) or /128 (v6) for bare IP */
parse = line;
if (strchr(line, '/') == nil) {
- strncpy(input, line, sizeof input - 5);
+ strecpy(input, input+sizeof input-5, line);
if (strchr(line, '.') != nil)
strcat(input, "/32");
else
/n/sourcesdump/2006/0410/plan9/sys/src/cmd/upas/smtp/greylist.c:219,225 -
/n/sourcesdump/2006/0411/plan9/sys/src/cmd/upas/smtp/greylist.c:223,229
user++;
/* check & try to update the grey list entry */
- snprint(file, sizeof file, "/mail/grey/%s/%s/%s",
+ snprint(file, sizeof file, "/mail/grey/tmp/%s/%s/%s",
nci->lsys, nci->rsys, user);
memset(gsp, 0, sizeof *gsp);
addgreylist(file, gsp);
/n/sourcesdump/2006/0410/plan9/sys/src/cmd/upas/smtp/greylist.c:259,267 -
/n/sourcesdump/2006/0411/plan9/sys/src/cmd/upas/smtp/greylist.c:263,271
if (fd >= 0) {
seek(fd, 0, 2); /* paranoia */
if ((fqdn = csgetvalue(nil, "ip", nci->rsys, "dom", nil)) != nil)
- fprint(fd, "# %s\n%s\n\n", fqdn, nci->rsys);
+ fprint(fd, "%s %s\n", nci->rsys, fqdn);
else
- fprint(fd, "# unknown\n%s\n\n", nci->rsys);
+ fprint(fd, "%s\n", nci->rsys);
close(fd);
}
} else {
[rsc] --rw-rw-r-- M 628694 rsc sys 2813 Apr 10 11:35 dist/replica/plan9.proto
/n/sourcesdump/2006/0410/plan9/dist/replica/plan9.proto:14,20 -
/n/sourcesdump/2006/0411/plan9/dist/replica/plan9.proto:14,22
faxoutqueue d777 upas upas
faxqueue d777 upas upas
* - upas upas
- grey d777 upas upas
+ grey d775 upas upas
+ whitelist a666 upas upas
+ tmp d777 upas upas
fs - upas upas
lib - upas upas
+ - upas upas
|