sm8350-common: Add wifi mac generator shell script
Change-Id: I95593db840dc4a668f899d248b2c8e03d4ebbc3e
This commit is contained in:
parent
83d0538609
commit
72da964f9a
6 changed files with 75 additions and 0 deletions
9
wifi-mac-generator/Android.mk
Normal file
9
wifi-mac-generator/Android.mk
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
LOCAL_PATH := $(call my-dir)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := wifi-mac-generator
|
||||
LOCAL_MODULE_CLASS := ETC
|
||||
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES)
|
||||
LOCAL_SRC_FILES := wifi-mac-generator.sh
|
||||
LOCAL_INIT_RC := wifi-mac-generator.rc
|
||||
include $(BUILD_PREBUILT)
|
||||
9
wifi-mac-generator/wifi-mac-generator.rc
Normal file
9
wifi-mac-generator/wifi-mac-generator.rc
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
service vendor.wifi-mac-generator /vendor/bin/wifi-mac-generator
|
||||
class main
|
||||
user wifi
|
||||
group wifi
|
||||
oneshot
|
||||
disabled
|
||||
|
||||
on post-fs-data
|
||||
start vendor.wifi-mac-generator
|
||||
43
wifi-mac-generator/wifi-mac-generator.sh
Normal file
43
wifi-mac-generator/wifi-mac-generator.sh
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
#!/vendor/bin/sh
|
||||
WLAN_MAC_VENDOR_PREFIX="C0EEFB"
|
||||
WLAN_MAC_PERSIST_PATH="/mnt/vendor/persist/wlan_mac.bin"
|
||||
|
||||
function wait_for_file() {
|
||||
retries=0
|
||||
|
||||
while [ ! -f "${1}" ]; do
|
||||
retries=$((retries + 1))
|
||||
|
||||
if [ "${retries}" -eq 10 ]; then
|
||||
return 1
|
||||
fi
|
||||
|
||||
sleep 1
|
||||
done
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
if [[ ! -f "${WLAN_MAC_PERSIST_PATH}" ]] || [[ ! -s "${WLAN_MAC_PERSIST_PATH}" ]]; then
|
||||
MAC_0_PATH="/data/vendor/oemnvitems/4678_0"
|
||||
|
||||
if ! wait_for_file "${MAC_0_PATH}"; then
|
||||
MAC_0="${WLAN_MAC_VENDOR_PREFIX}`xxd -l 3 -p /dev/urandom | tr '[:lower:]' '[:upper:]'`"
|
||||
else
|
||||
MAC_0=`xxd -p "${MAC_0_PATH}" | tr '[:lower:]' '[:upper:]'`
|
||||
fi
|
||||
|
||||
MAC_1_PATH="/data/vendor/oemnvitems/4678_1"
|
||||
|
||||
if ! wait_for_file "${MAC_1_PATH}"; then
|
||||
MAC_1="${WLAN_MAC_VENDOR_PREFIX}`xxd -l 3 -p /dev/urandom | tr '[:lower:]' '[:upper:]'`"
|
||||
else
|
||||
MAC_1=`xxd -p "${MAC_1_PATH}" | tr '[:lower:]' '[:upper:]'`
|
||||
fi
|
||||
|
||||
echo "Intf0MacAddress=${MAC_0}" > "${WLAN_MAC_PERSIST_PATH}"
|
||||
echo "Intf1MacAddress=${MAC_1}" >> "${WLAN_MAC_PERSIST_PATH}"
|
||||
echo "Intf2MacAddress=000AF58989FD" >> "${WLAN_MAC_PERSIST_PATH}"
|
||||
echo "Intf3MacAddress=000AF58989FC" >> "${WLAN_MAC_PERSIST_PATH}"
|
||||
echo "END" >> "${WLAN_MAC_PERSIST_PATH}"
|
||||
fi
|
||||
Loading…
Add table
Add a link
Reference in a new issue