mirror of
https://github.com/fbelavenuto/arpl.git
synced 2026-01-09 11:32:07 +08:00
Fixing custom MAC address
This commit is contained in:
33
files/board/arpl/overlayfs/etc/init.d/S41dhcpcd
Executable file
33
files/board/arpl/overlayfs/etc/init.d/S41dhcpcd
Executable file
@@ -0,0 +1,33 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Start/stop dhcpcd
|
||||
#
|
||||
|
||||
DAEMON=/usr/sbin/dhcpcd
|
||||
CONFIG=/etc/dhcpcd.conf
|
||||
PIDFILE=/var/run/dhcpcd/pid
|
||||
|
||||
[ -f $CONFIG ] || exit 0
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
echo "Starting dhcpcd..."
|
||||
start-stop-daemon -S -x "$DAEMON" -p "$PIDFILE" -- -f "$CONFIG"
|
||||
;;
|
||||
stop)
|
||||
echo "Stopping dhcpcd..."
|
||||
start-stop-daemon -K -x "$DAEMON" -p "$PIDFILE" -o
|
||||
;;
|
||||
reload|force-reload)
|
||||
echo "Reloading dhcpcd configuration..."
|
||||
"$DAEMON" -s reload
|
||||
;;
|
||||
restart)
|
||||
"$0" stop
|
||||
sleep 1 # Prevent race condition: ensure dhcpcd stops before start.
|
||||
"$0" start
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|restart|reload|force-reload}"
|
||||
exit 1
|
||||
esac
|
||||
@@ -102,18 +102,19 @@ echo -e "Cmdline:\n\033[1;36m${CMDLINE_LINE}\033[0m"
|
||||
|
||||
# Wait for an IP
|
||||
COUNT=0
|
||||
echo -n "IP: "
|
||||
echo -n "IP"
|
||||
while true; do
|
||||
IP=`ip route get 1.1.1.1 2>/dev/null | awk '{print$7}'`
|
||||
if [ -n "${IP}" ]; then
|
||||
echo -e "\033[1;32m${IP}\033[0m"
|
||||
echo -e ": \033[1;32m${IP}\033[0m"
|
||||
break
|
||||
elif [ ${COUNT} -eq 15 ]; then
|
||||
echo -e "\033[1;31mERROR\033[0m"
|
||||
echo -e ": \033[1;31mERROR\033[0m"
|
||||
break
|
||||
fi
|
||||
COUNT=$((${COUNT}+1))
|
||||
sleep 1
|
||||
echo -n "."
|
||||
done
|
||||
|
||||
echo -e "\033[1;37mLoading DSM kernel...\033[0m"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
|
||||
ARPL_VERSION="0.3-alpha3"
|
||||
ARPL_VERSION="0.3-alpha4"
|
||||
|
||||
# Define paths
|
||||
TMP_PATH="/tmp"
|
||||
|
||||
@@ -59,6 +59,14 @@ if [ ! -f "${USER_CONFIG_FILE}" ]; then
|
||||
writeConfigKey "addons" "{}" "${USER_CONFIG_FILE}"
|
||||
fi
|
||||
|
||||
# Set custom MAC if defined
|
||||
MAC1=`readConfigKey "cmdline.mac1" "${USER_CONFIG_FILE}"`
|
||||
if [ -n "${MAC1}" ]; then
|
||||
MAC="${MAC1:0:2}:${MAC1:2:2}:${MAC1:4:2}:${MAC1:6:2}:${MAC1:8:2}:${MAC1:10:2}"
|
||||
ip link set dev eth0 address ${MAC} >/dev/null 2>&1 && \
|
||||
(/etc/init.d/S41dhcpcd restart >/dev/null 2>&1 &) || true
|
||||
fi
|
||||
|
||||
# Get the VID/PID if we are in USB
|
||||
VID="0x0000"
|
||||
PID="0x0000"
|
||||
|
||||
@@ -315,6 +315,11 @@ function cmdlineMenu() {
|
||||
writeConfigKey "cmdline.mac1" "${MAC1}" "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "cmdline.netif_num" "1" "${USER_CONFIG_FILE}"
|
||||
fi
|
||||
/etc/init.d/S30arpl-mac restart 2>&1 | dialog --backtitle "`backtitle`" \
|
||||
--title "User cmdline" --progressbox "Changing mac" 20 70
|
||||
/etc/init.d/S41dhcpcd restart 2>&1 | dialog --backtitle "`backtitle`" \
|
||||
--title "User cmdline" --progressbox "Renewing IP" 20 70
|
||||
IP=`ip route get 1.1.1.1 2>/dev/null | awk '{print$7}'`
|
||||
;;
|
||||
s)
|
||||
ITEMS=""
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user