After release of 2.5.0, two separate reports of problems with deny !nameserved msgfile were received. Basically, the daemon was treating '!nameserved' as a host name and not fully giving it the special treatment it needs. This problem has been in the daemon since, at least, version 2.4 was not unmasked until 2.5.0 added '!' syntax to hostmatch(). Index: src/access.c =================================================================== RCS file: /cvsroot/wu-ftpd-stable/src/access.c,v retrieving revision 1.6 diff -c -r1.6 access.c *** src/access.c 1999/05/20 10:48:54 1.6 --- src/access.c 1999/05/26 13:17:13 *************** *** 1128,1138 **** while (getaclentry("deny", &entry)) { if (!ARG0) continue; ! if (!nameserved && !strcasecmp(ARG0, "!nameserved")) { if (ARG1) strcpy(msgpathbuf, entry->arg[1]); return (1); } if (hostmatch(ARG0,remoteaddr,remotehost)) { if (ARG1) strcpy(msgpathbuf, entry->arg[1]); --- 1128,1141 ---- while (getaclentry("deny", &entry)) { if (!ARG0) continue; ! if (strcasecmp(ARG0, "!nameserved") == 0) { ! if (!nameserved) { if (ARG1) strcpy(msgpathbuf, entry->arg[1]); return (1); + } } + else if (hostmatch(ARG0,remoteaddr,remotehost)) { if (ARG1) strcpy(msgpathbuf, entry->arg[1]);