svn commit: r201782 - head/contrib/tcp_wrappers
Maxim Sobolev
sobomax at FreeBSD.org
Fri Jan 8 10:54:15 UTC 2010
Author: sobomax
Date: Fri Jan 8 10:54:15 2010
New Revision: 201782
URL: http://svn.freebsd.org/changeset/base/201782
Log:
Allow comment (#) to be placed anywhere in the line, not only at the
beginning, so it's consistent with other configuration files.
MFC after: 3 weeks
Modified:
head/contrib/tcp_wrappers/hosts_access.c
Modified: head/contrib/tcp_wrappers/hosts_access.c
==============================================================================
--- head/contrib/tcp_wrappers/hosts_access.c Fri Jan 8 10:32:27 2010 (r201781)
+++ head/contrib/tcp_wrappers/hosts_access.c Fri Jan 8 10:54:15 2010 (r201782)
@@ -148,6 +148,7 @@ struct request_info *request;
char *sh_cmd; /* becomes optional shell command */
int match = NO;
struct tcpd_context saved_context;
+ char *cp;
saved_context = tcpd_context; /* stupid compilers */
@@ -164,7 +165,16 @@ struct request_info *request;
tcpd_warn("missing newline or line too long");
continue;
}
- if (sv_list[0] == '#' || sv_list[strspn(sv_list, " \t\r\n")] == 0)
+ /* Ignore anything after unescaped # character */
+ for (cp = strchr(sv_list, '#'); cp != NULL;) {
+ if (cp > sv_list && cp[-1] == '\\') {
+ cp = strchr(cp + 1, '#');
+ continue;
+ }
+ *cp = '\0';
+ break;
+ }
+ if (sv_list[strspn(sv_list, " \t\r\n")] == 0)
continue;
if ((cl_list = split_at(sv_list, ':')) == 0) {
tcpd_warn("missing \":\" separator");
More information about the svn-src-all
mailing list