dnsmasq: add logfacility file to jail mounts
[openwrt/openwrt.git] / package / network / services / dnsmasq / files / dnsmasq.init
index d95502c0da6cb9e07c95dccf6d1728d05aa40094..040ceaea2fea1879f8693b69c4175ef0ce1edd5a 100755 (executable)
@@ -820,7 +820,7 @@ dnsmasq_ipset_add() {
 dnsmasq_start()
 {
        local cfg="$1"
-       local disabled user_dhcpscript
+       local disabled user_dhcpscript logfacility
        local resolvfile resolvdir localuse=0
 
        config_get_bool disabled "$cfg" disabled 0
@@ -933,7 +933,7 @@ dnsmasq_start()
        append_bool "$cfg" scriptarp "--script-arp"
 
        append_parm "$cfg" logfacility "--log-facility"
-
+       config_get logfacility "$cfg" "logfacility"
        append_parm "$cfg" cachesize "--cache-size"
        append_parm "$cfg" dnsforwardmax "--dns-forward-max"
        append_parm "$cfg" port "--port"
@@ -1167,6 +1167,10 @@ dnsmasq_start()
        procd_add_jail_mount $dnsmasqconffile $dnsmasqconfdir $resolvdir $user_dhcpscript
        procd_add_jail_mount /etc/passwd /etc/group /etc/TZ /etc/hosts /etc/ethers
        procd_add_jail_mount_rw /var/run/dnsmasq/ $leasefile
+       case "$logfacility" in */*)
+               [ ! -e "$logfacility" ] && touch "$logfacility"
+               procd_add_jail_mount_rw "$logfacility"
+       esac
 
        procd_close_instance
 }