On 01/02/12 14:26, Darren Hart wrote:
For machines that do not have a MAC in hardware and with drivers that don't generate a random one in the kernel, this init script will replace the string RANDOM_MAC in the network/interfaces file with one generated with "ranpwd -m". Care is taken to ensure multiple interfaces can use RANDOM_MAC and receive unique addresses. ranpwd generates MACs with the locally administered bit set and the multicast bit disabled. Signed-off-by: Darren Hart<dvh...@linux.intel.com> --- meta-sys940x/recipes-bsp/genmac/files/genmac | 46 ++++++++++++++++++++++++++ meta-sys940x/recipes-bsp/genmac/genmac.bb | 30 +++++++++++++++++ 2 files changed, 76 insertions(+), 0 deletions(-) create mode 100644 meta-sys940x/recipes-bsp/genmac/files/genmac create mode 100644 meta-sys940x/recipes-bsp/genmac/genmac.bb diff --git a/meta-sys940x/recipes-bsp/genmac/files/genmac b/meta-sys940x/recipes-bsp/genmac/files/genmac new file mode 100644 index 0000000..6ca069c --- /dev/null +++ b/meta-sys940x/recipes-bsp/genmac/files/genmac @@ -0,0 +1,46 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: Random MAC address generator +# Required-Start: $syslog +# Required-Stop: $syslog +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: Set a random MAC for tagged interfaces +# Description: Set a random MAC for interfaces with RANDOM_MAC +### END INIT INFO + +# Author: Darren Hart<dvh...@linux.intel.com> +# Based on /etc/init.d/skeleton + +PATH=/sbin:/usr/sbin:/bin:/usr/bin +DESC="Set a random MAC for tagged interfaces" +NAME=genmac +RANPWD=`which ranpwd` +SCRIPTNAME=/etc/init.d/$NAME + +# Exit if amixer is not installed
amixer?
+[ -x "$RANPWD" ] || exit 0 + +do_start() { + # Replace every occurance of RANDOM_MAC with a unique locally
occurrence?
+ # administered, unicast, randomly generated MAC address. + while grep -q RANDOM_MAC /etc/network/interfaces; do + sed -i "1,/RANDOM_MAC/s/RANDOM_MAC/$($RANPWD -m)/" /etc/network/interfaces + done
Otherwise looks good, feel free to add my SOB. Cheers, Joshua -- Joshua Lock Yocto Project "Johannes factotum" Intel Open Source Technology Centre _______________________________________________ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto