svn commit: r239601 - head/usr.sbin/jail
Jamie Gritton
jamie at FreeBSD.org
Thu Aug 23 01:43:02 UTC 2012
Author: jamie
Date: Thu Aug 23 01:43:01 2012
New Revision: 239601
URL: http://svn.freebsd.org/changeset/base/239601
Log:
Remember that I'm using length-defined strings in parameters:
Remove a bogus null terminator when stripping the netmask from
IP addresses. This was causing later addresses in a comma-separated
string to disappear.
Use memcpy instead of strcpy. This could just cause Bad Things.
PR: 170832
MFC after: 1 week
Modified:
head/usr.sbin/jail/config.c
Modified: head/usr.sbin/jail/config.c
==============================================================================
--- head/usr.sbin/jail/config.c Thu Aug 23 00:39:08 2012 (r239600)
+++ head/usr.sbin/jail/config.c Thu Aug 23 01:43:01 2012 (r239601)
@@ -597,8 +597,7 @@ check_intparams(struct cfjail *j)
"ip4.addr: bad netmask \"%s\"", cs);
error = -1;
}
- *cs = '\0';
- s->len = cs - s->s + 1;
+ s->len = cs - s->s;
}
}
}
@@ -621,8 +620,7 @@ check_intparams(struct cfjail *j)
cs);
error = -1;
}
- *cs = '\0';
- s->len = cs - s->s + 1;
+ s->len = cs - s->s;
}
}
}
@@ -714,7 +712,7 @@ import_params(struct cfjail *j)
value = alloca(vallen);
cs = value;
TAILQ_FOREACH_SAFE(s, &p->val, tq, ts) {
- strcpy(cs, s->s);
+ memcpy(cs, s->s, s->len);
if (ts != NULL) {
cs += s->len + 1;
cs[-1] = ',';
More information about the svn-src-head
mailing list