mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2025-04-21 12:27:27 +03:00
ipv6-support: Add new IPv6-support meta-package
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34422 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
52
package/network/ipv6/ipv6-support/files/dhcpv6.sh
Executable file
52
package/network/ipv6/ipv6-support/files/dhcpv6.sh
Executable file
@@ -0,0 +1,52 @@
|
||||
#!/bin/sh
|
||||
# Copyright (c) 2012 OpenWrt.org
|
||||
. /lib/ipv6/support.sh
|
||||
. /lib/netifd/netifd-proto.sh
|
||||
|
||||
local device="$1"
|
||||
local state="$2"
|
||||
local network=""
|
||||
|
||||
resolve_network network "$device"
|
||||
|
||||
# Unknown network
|
||||
[ -z "$network" ] && exit 0
|
||||
|
||||
|
||||
# Announce prefixes
|
||||
for prefix in $PREFIXES; do
|
||||
announce_prefix "$prefix" "$network"
|
||||
done
|
||||
|
||||
for prefix in $PREFIXES_LOST; do
|
||||
announce_prefix "$prefix" "$network" delprefix
|
||||
done
|
||||
|
||||
|
||||
# Enable relaying if requested
|
||||
local prefix_fallback
|
||||
config_get prefix_fallback "$network" prefix_fallback
|
||||
[ "$prefix_fallback" == "relay" -a -z "$PREFIXES" -a "$state" != "unbound" ] &&
|
||||
restart_relay "$network" 1
|
||||
|
||||
# Disable relay if requested
|
||||
[ "$prefix_fallback" != "relay" -o -n "$PREFIXES" -o "$state" == "unbound" ] &&
|
||||
stop_relay "$network"
|
||||
|
||||
|
||||
# Operations in case of success
|
||||
[ "$state" == "timeout" || "$state" == "unbound" ] && exit 0
|
||||
|
||||
local peerdns
|
||||
config_get_bool peerdns "$network" peerdns 0
|
||||
[ "peerdns" -eq "1" ] && {
|
||||
proto_init_update "*" 1
|
||||
for server in $RDNSS; do
|
||||
proto_add_dns_server "$server"
|
||||
done
|
||||
for domain in $DOMAINS; do
|
||||
proto_add_dns_search "$domain"
|
||||
done
|
||||
proto_send_update "$network"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user