summaryrefslogtreecommitdiff
path: root/net/ptpd/files/patch-src-dep_net.c
diff options
context:
space:
mode:
authorChristian Weisgerber <naddy@FreeBSD.org>2008-11-13 22:17:28 +0000
committerChristian Weisgerber <naddy@FreeBSD.org>2008-11-13 22:17:28 +0000
commit2042b740ed9071c4dc163663e3febc0dd462f37b (patch)
treef81b817f2de2c497bf0cf747b845c1a4cdd5d4f7 /net/ptpd/files/patch-src-dep_net.c
parent- Mark FORBIDDEN (a lot security issus http://www.vuxml.org/freebsd/f29fea8f-... (diff)
* Fix out-of-bound string accesses.
* Fix %m GNUism in printf. * Don't create the man page, it is already included. * ptpd is not a user command, put it into sbin. * Overhaul the startup file and move it to "ptpd". Approved by: gnn (maintainer)
Notes
Notes: svn path=/head/; revision=222812
Diffstat (limited to 'net/ptpd/files/patch-src-dep_net.c')
-rw-r--r--net/ptpd/files/patch-src-dep_net.c36
1 files changed, 36 insertions, 0 deletions
diff --git a/net/ptpd/files/patch-src-dep_net.c b/net/ptpd/files/patch-src-dep_net.c
new file mode 100644
index 000000000000..884b6265efd1
--- /dev/null
+++ b/net/ptpd/files/patch-src-dep_net.c
@@ -0,0 +1,36 @@
+--- dep/net.c.orig
++++ dep/net.c
+@@ -8,26 +8,26 @@
+
+ /* set multicast group address based on subdomainName */
+ if (!memcmp(subdomainName, DEFAULT_PTP_DOMAIN_NAME, PTP_SUBDOMAIN_NAME_LENGTH))
+- memcpy(subdomainAddress, DEFAULT_PTP_DOMAIN_ADDRESS, NET_ADDRESS_LENGTH);
++ strncpy(subdomainAddress, DEFAULT_PTP_DOMAIN_ADDRESS, NET_ADDRESS_LENGTH);
+ else if(!memcmp(subdomainName, ALTERNATE_PTP_DOMAIN1_NAME, PTP_SUBDOMAIN_NAME_LENGTH))
+- memcpy(subdomainAddress, ALTERNATE_PTP_DOMAIN1_ADDRESS, NET_ADDRESS_LENGTH);
++ strncpy(subdomainAddress, ALTERNATE_PTP_DOMAIN1_ADDRESS, NET_ADDRESS_LENGTH);
+ else if(!memcmp(subdomainName, ALTERNATE_PTP_DOMAIN2_NAME, PTP_SUBDOMAIN_NAME_LENGTH))
+- memcpy(subdomainAddress, ALTERNATE_PTP_DOMAIN2_ADDRESS, NET_ADDRESS_LENGTH);
++ strncpy(subdomainAddress, ALTERNATE_PTP_DOMAIN2_ADDRESS, NET_ADDRESS_LENGTH);
+ else if(!memcmp(subdomainName, ALTERNATE_PTP_DOMAIN3_NAME, PTP_SUBDOMAIN_NAME_LENGTH))
+- memcpy(subdomainAddress, ALTERNATE_PTP_DOMAIN3_ADDRESS, NET_ADDRESS_LENGTH);
++ strncpy(subdomainAddress, ALTERNATE_PTP_DOMAIN3_ADDRESS, NET_ADDRESS_LENGTH);
+ else
+ {
+ h = crc_algorithm(subdomainName, PTP_SUBDOMAIN_NAME_LENGTH) % 3;
+ switch(h)
+ {
+ case 0:
+- memcpy(subdomainAddress, ALTERNATE_PTP_DOMAIN1_ADDRESS, NET_ADDRESS_LENGTH);
++ strncpy(subdomainAddress, ALTERNATE_PTP_DOMAIN1_ADDRESS, NET_ADDRESS_LENGTH);
+ break;
+ case 1:
+- memcpy(subdomainAddress, ALTERNATE_PTP_DOMAIN2_ADDRESS, NET_ADDRESS_LENGTH);
++ strncpy(subdomainAddress, ALTERNATE_PTP_DOMAIN2_ADDRESS, NET_ADDRESS_LENGTH);
+ break;
+ case 2:
+- memcpy(subdomainAddress, ALTERNATE_PTP_DOMAIN3_ADDRESS, NET_ADDRESS_LENGTH);
++ strncpy(subdomainAddress, ALTERNATE_PTP_DOMAIN3_ADDRESS, NET_ADDRESS_LENGTH);
+ break;
+ default:
+ ERROR("handle out of range for '%s'!\n", subdomainName);