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

Reply via email to