48 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			48 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
| #!/bin/sh
 | |
| # Copyright (C) 2006 OpenWrt.org
 | |
| # Copyright (C) 2010 Vertical Communications
 | |
| 
 | |
| preinit_ip() {
 | |
| 	# if the preinit interface isn't specified and ifname is set in
 | |
| 	# preinit.arch use that interface
 | |
| 	if [ -z "$pi_ifname" ]; then
 | |
| 		pi_ifname=$ifname
 | |
| 	fi
 | |
| 
 | |
| 	[ -n "$pi_ifname" ] && grep -q "$pi_ifname" /proc/net/dev && {
 | |
| 		ip link set dev $pi_ifname up
 | |
| 		ip -4 address add $pi_ip/$pi_netmask broadcast $pi_broadcast dev $pi_ifname
 | |
| 	}
 | |
| }
 | |
| 
 | |
| preinit_ip_deconfig() {
 | |
| 	[ -n "$pi_ifname" ] && grep -q "$pi_ifname" /proc/net/dev && {
 | |
| 		ip -4 address flush dev $pi_ifname
 | |
| 		ip link set dev $pi_ifname down
 | |
| 	}
 | |
| }
 | |
| 
 | |
| preinit_net_echo() {
 | |
| 	[ -n "$pi_ifname" ] && grep -q "$pi_ifname" /proc/net/dev && {
 | |
| 		{
 | |
| 			[ "$pi_preinit_net_messages" = "y" ] || {
 | |
| 				[ "$pi_failsafe_net_message" = "true" ] &&
 | |
| 					[ "$pi_preinit_no_failsafe_netmsg" != "y" ]
 | |
| 			}
 | |
| 		} && netmsg $pi_broadcast "$1"
 | |
| 	}
 | |
| }
 | |
| 
 | |
| preinit_echo() {
 | |
| 	preinit_net_echo $1
 | |
| 	echo $1
 | |
| }
 | |
| 
 | |
| pi_indicate_preinit() {
 | |
| 	preinit_net_echo "Doing Lede Preinit\n"
 | |
| 	set_state preinit
 | |
| }
 | |
| 
 | |
| boot_hook_add preinit_main preinit_ip
 | |
| boot_hook_add preinit_main pi_indicate_preinit
 |