#!/bin/sh /etc/rc.common
# Copyright (c) 2011-2012 OpenWrt.org
START=80
-. /lib/functions/network.sh
-. /lib/functions/service.sh
start_6relayd() {
local cfg="$1"
fi
# Configure feature options
- local always_rewrite_dns
+ local always_rewrite_dns rewrite_dns_addr
config_get_bool always_rewrite_dns "$cfg" always_rewrite_dns 0
- [ "$always_rewrite_dns" -eq 1 ] && append args "-n"
+ config_get rewrite_dns_addr "$cfg" rewrite_dns_addr
+ [ "$always_rewrite_dns" -eq 1 -o -n "$rewrite_dns_addr" ] && append args "-n$rewrite_dns_addr"
local always_assume_default
config_get_bool always_assume_default "$cfg" always_assume_default 0
[ "$always_assume_default" -eq 1 ] && append args "-u"
- [ "$ndp" = "relay" ] && append args "-N -s -l"
+ local compat_ula
+ config_get_bool compat_ula "$cfg" compat_ula 0
+ [ "$compat_ula" -eq 1 ] && append args "-c"
+
+ [ "$ndp" = "relay" ] && append args "-N -s"
[ "$rd" = "relay" ] && append args "-Rrelay"
[ "$rd" = "server" ] && append args "-Rserver"
[ "$dhcpv6" = "relay" ] && append args "-Drelay"
}
restart_affected() {
+ . /lib/functions/service.sh
+ . /lib/functions/network.sh
local net="$1"
config_load 6relayd
config_foreach restart_affected_6relayd server "$net"
}
stop() {
+ . /lib/functions/service.sh
for pid in /var/run/6relayd-*.pid; do
SERVICE_PID_FILE="$pid"
service_stop /usr/sbin/6relayd
}
start() {
+ . /lib/functions/service.sh
+ . /lib/functions/network.sh
config_load 6relayd
config_foreach start_6relayd server
config_foreach start_6relayd relay relay