svn commit: r257525 - in head/sys: dev/random net sys
Adrian Chadd
adrian at FreeBSD.org
Fri Nov 1 20:53:51 UTC 2013
Author: adrian
Date: Fri Nov 1 20:53:49 2013
New Revision: 257525
URL: http://svnweb.freebsd.org/changeset/base/257525
Log:
Convert the random entropy harvesting code to use a const void * pointer
rather than just void *.
Then, as part of this, convert a couple of mbuf m->m_data accesses
to mtod(m, const void *).
Reviewed by: markm
Approved by: security-officer (delphij)
Sponsored by: Netflix, Inc.
Modified:
head/sys/dev/random/harvest.c
head/sys/net/bpf.c
head/sys/net/if_ethersubr.c
head/sys/net/if_tun.c
head/sys/sys/random.h
Modified: head/sys/dev/random/harvest.c
==============================================================================
--- head/sys/dev/random/harvest.c Fri Nov 1 20:33:30 2013 (r257524)
+++ head/sys/dev/random/harvest.c Fri Nov 1 20:53:49 2013 (r257525)
@@ -86,7 +86,7 @@ randomdev_deinit_harvester(void)
* read which can be quite expensive.
*/
void
-random_harvest(void *entropy, u_int count, u_int bits, enum esource origin)
+random_harvest(const void *entropy, u_int count, u_int bits, enum esource origin)
{
if (reap_func)
(*reap_func)(get_cyclecount(), entropy, count, bits, origin);
Modified: head/sys/net/bpf.c
==============================================================================
--- head/sys/net/bpf.c Fri Nov 1 20:33:30 2013 (r257524)
+++ head/sys/net/bpf.c Fri Nov 1 20:53:49 2013 (r257525)
@@ -577,7 +577,7 @@ bpf_movein(struct uio *uio, int linktype
goto bad;
}
}
- bcopy(m->m_data, sockp->sa_data, hlen);
+ bcopy(mtod(m, const void *), sockp->sa_data, hlen);
}
*hdrlen = hlen;
Modified: head/sys/net/if_ethersubr.c
==============================================================================
--- head/sys/net/if_ethersubr.c Fri Nov 1 20:33:30 2013 (r257524)
+++ head/sys/net/if_ethersubr.c Fri Nov 1 20:53:49 2013 (r257525)
@@ -642,7 +642,7 @@ ether_input_internal(struct ifnet *ifp,
}
if (harvest.ethernet)
- random_harvest(&(m->m_data), 12, 2, RANDOM_NET_ETHER);
+ random_harvest(mtod(m, const void *), 12, 2, RANDOM_NET_ETHER);
ether_demux(ifp, m);
CURVNET_RESTORE();
Modified: head/sys/net/if_tun.c
==============================================================================
--- head/sys/net/if_tun.c Fri Nov 1 20:33:30 2013 (r257524)
+++ head/sys/net/if_tun.c Fri Nov 1 20:53:49 2013 (r257525)
@@ -919,7 +919,7 @@ tunwrite(struct cdev *dev, struct uio *u
return (EAFNOSUPPORT);
}
if (harvest.point_to_point)
- random_harvest(&(m->m_data), 12, 2, RANDOM_NET_TUN);
+ random_harvest(mtod(m, const void *), 12, 2, RANDOM_NET_TUN);
ifp->if_ibytes += m->m_pkthdr.len;
ifp->if_ipackets++;
CURVNET_SET(ifp->if_vnet);
Modified: head/sys/sys/random.h
==============================================================================
--- head/sys/sys/random.h Fri Nov 1 20:33:30 2013 (r257524)
+++ head/sys/sys/random.h Fri Nov 1 20:53:49 2013 (r257525)
@@ -58,7 +58,7 @@ enum esource {
RANDOM_PURE_RNDTEST,
ENTROPYSOURCE
};
-void random_harvest(void *, u_int, u_int, enum esource);
+void random_harvest(const void *, u_int, u_int, enum esource);
/* Allow the sysadmin to select the broad category of
* entropy types to harvest
More information about the svn-src-all
mailing list