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 [ -d "/proc/switch/$ifname" ] && { 20 echo 1 > "/proc/switch/$ifname/reset" 21 echo "0 1 2 3 4 ${cpu_port:-5u*}" > "/proc/switch/$ifname/vlan/0/ports" 22 } 23 24} 25 26preinit_net_echo() { 27 preinit_ip 28 29 [ -d "/proc/switch/$ifname" ] && { 30 echo 1 > "/proc/switch/$ifname/reset" 31 32 # this would be easier if we blasted the message across all ports 33 # but we don't want packets leaking across interfaces 34 for port in $(seq 0 4); do { 35 echo "$port ${cpu_port:-5u*}" > "/proc/switch/$ifname/vlan/0/ports" 36 port_net_echo $1 37 }; done 38 39 echo "0 ${cpu_port:-5u*}" > "/proc/switch/$ifname/vlan/0/ports" 40 41 } || port_net_echo $1 42} 43 44 45