900fb7d0869b8a870bf4e44872aaf14ae44ad0f6
3 .
/lib
/functions
/system.sh
11 board
=$
(ramips_board_name
)
18 echo "Unsupported board"
25 ??
:??
:??
:??
:??
:??
) NEW_MAC
="$1";;
29 Unknown option/argument '$1'
30 Usage: $0 [-y] [<macaddr>]
40 local default
="$((! ${2:-0}))"
41 [ -n "$YES" ] && return 0
52 hexdump -e '/1 "%02x "'
56 dd if=/dev
/urandom bs
=6 count
=1 2>/dev
/null
59 mac
="$(mtd_get_mac_binary $partname $offset)"
64 echo "Current MAC address: $mac"
65 ask_bool
"Overwrite (y/N)?" 0 ||
exit
69 if [ -n "$NEW_MAC" ]; then
70 set -- $
(echo "$NEW_MAC" |
sed 's,:, ,g')
72 set -- $
(gen_mac | convert_hex
)
73 set -- $
(printf %02x $
(( (0x
$1 & 0xfe) |
0x02 ))) $2 $3 $4 $5 $6
75 echo "New MAC address: $1:$2:$3:$4:$5:$6"
76 ask_bool
"Write to EEPROM (y/N)?" ||
exit
78 part
=$
(find_mtd_part
"$partname")
79 [ -n "$part" ] ||
exit
80 echo -ne "\x$1\x$2\x$3\x$4\x$5\x$6" |
dd of
=$part conv
=notrunc bs
=1 count
=6 seek
=$offset 2>/dev
/null