Root/target/linux/brcm47xx/base-files/lib/preinit/15_set_preinit_interface_brcm

1#!/bin/sh
2
3port_net_echo() {
4    [ -n "$pi_ifname" ] && grep -q "$pi_ifname" /proc/net/dev && {
5        if [ "$pi_preinit_net_messages" = "y" ] || [ "$pi_failsafe_net_message" = "true" ] && [ "$pi_preinit_no_failsafe_netmsg" != "y" ]; then
6            netmsg $pi_broadcast "$1"
7        fi
8    }
9}
10
11preinit_ip_deconfig() {
12    if [ -z "$pi_ifname" ]; then
13        ifconfig $ifname 0.0.0.0 down
14    else
15        grep -q "$pi_ifname" /proc/net/dev && {
16            ifconfig $pi_ifname 0.0.0.0 down
17        }
18    fi
19}
20
21preinit_net_echo() {
22    preinit_ip
23
24    [ -d /proc/switch/eth0 ] && [ "$pi_ifname" = "eth0" ] && {
25        echo 1 > /proc/switch/eth0/reset
26
27        # this would be easier if we blasted the message across all ports
28        # but we don't want packets leaking across interfaces
29        for port in $(seq 0 4); do {
30            echo "$port ${cpu_port:-5u*}" > /proc/switch/eth0/vlan/0/ports
31            port_net_echo $1
32        }; done
33
34        echo "0 1 2 3 4 ${cpu_port:-5u*}" > /proc/switch/eth0/vlan/0/ports
35
36    } || port_net_echo $1
37}
38

Archive Download this file



interactive