summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2016-02-25 09:24:31 +0000
committerFelix Fietkau <nbd@openwrt.org>2016-02-25 09:24:31 +0000
commitb4a1bd899290bc1279070c6ae643ee9e927ee9e2 (patch)
treed5d923a7c1b395e5684ba0664ac62b42d7fb3760
parent5e84051a0f1126a8e984bccd06bcaf093c7ba539 (diff)
downloadmaster-31e0f0ae-b4a1bd899290bc1279070c6ae643ee9e927ee9e2.tar.gz
master-31e0f0ae-b4a1bd899290bc1279070c6ae643ee9e927ee9e2.tar.bz2
master-31e0f0ae-b4a1bd899290bc1279070c6ae643ee9e927ee9e2.zip
dnsmasq: export tftp root to the procd jail
Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48761
-rw-r--r--package/network/services/dnsmasq/files/dnsmasq.init28
1 files changed, 17 insertions, 11 deletions
diff --git a/package/network/services/dnsmasq/files/dnsmasq.init b/package/network/services/dnsmasq/files/dnsmasq.init
index 504c4acf4c..90e3dc4d39 100644
--- a/package/network/services/dnsmasq/files/dnsmasq.init
+++ b/package/network/services/dnsmasq/files/dnsmasq.init
@@ -220,6 +220,12 @@ dnsmasq() {
xappend "--conf-dir=/tmp/dnsmasq.d"
echo >> $CONFIGFILE
+
+ config_get_bool enable_tftp "$cfg" enable_tftp 0
+ [ "$enable_tftp" -gt 0 ] && {
+ config_get tftp_root "$cfg" tftp_root
+ append EXTRA_MOUNT $tftp_root
+ }
}
dhcp_subscrid_add() {
@@ -555,17 +561,6 @@ start_service() {
config_load dhcp
- procd_open_instance
- procd_set_param command $PROG -C $CONFIGFILE -k -x /var/run/dnsmasq/dnsmasq.pid
- procd_set_param file $CONFIGFILE
- procd_set_param respawn
-
- procd_add_jail dnsmasq ubus log
- procd_add_jail_mount $CONFIGFILE $TRUSTANCHORSFILE $HOSTFILE /etc/passwd /etc/group /etc/TZ /dev/null /dev/urandom /etc/dnsmasq.conf /tmp/dnsmasq.d /tmp/resolv.conf.auto /etc/hosts /etc/ethers
- procd_add_jail_mount_rw /var/run/dnsmasq/ /tmp/dhcp.leases $TIMESTAMPFILE
-
- procd_close_instance
-
# before we can call xappend
mkdir -p /var/run/dnsmasq/
mkdir -p $(dirname $CONFIGFILE)
@@ -643,6 +638,17 @@ start_service() {
for DNS_SERVER in $DNS_SERVERS ; do
echo "nameserver $DNS_SERVER" >> /tmp/resolv.conf
done
+
+ procd_open_instance
+ procd_set_param command $PROG -C $CONFIGFILE -k -x /var/run/dnsmasq/dnsmasq.pid
+ procd_set_param file $CONFIGFILE
+ procd_set_param respawn
+
+ procd_add_jail dnsmasq ubus log
+ procd_add_jail_mount $CONFIGFILE $TRUSTANCHORSFILE $HOSTFILE /etc/passwd /etc/group /etc/TZ /dev/null /dev/urandom /etc/dnsmasq.conf /tmp/dnsmasq.d /tmp/resolv.conf.auto /etc/hosts /etc/ethers $EXTRA_MOUNT
+ procd_add_jail_mount_rw /var/run/dnsmasq/ /tmp/dhcp.leases $TIMESTAMPFILE
+
+ procd_close_instance
}
reload_service() {