diff --git a/conf/dokuwiki.php b/conf/dokuwiki.php index 35f946b10ac74df4b797ff9dc14565bda4694d4d..cbd42115df3a1f19377d3f207488526f61a3da29 100644 --- a/conf/dokuwiki.php +++ b/conf/dokuwiki.php @@ -158,6 +158,7 @@ $conf['renderer_xhtml'] = 'xhtml'; //renderer to use for main page generat $conf['readdircache'] = 0; //time cache in second for the readdir operation, 0 to deactivate. /* Network Settings */ +$conf['dnslookups'] = 1; //disable to disallow IP to hostname lookups // Proxy setup - if your Server needs a proxy to access the web set these $conf['proxy']['host'] = ''; $conf['proxy']['port'] = ''; diff --git a/inc/common.php b/inc/common.php index 22a315901591d5e2153331b5d4f74f63b2805fc3..6ea536c44f54cc9e1d400a8693beeb8873a0da1e 100644 --- a/inc/common.php +++ b/inc/common.php @@ -676,10 +676,15 @@ function clientismobile(){ /** * Convert one or more comma separated IPs to hostnames * + * If $conf['dnslookups'] is disabled it simply returns the input string + * * @author Glen Harris <astfgl@iamnota.org> * @returns a comma separated list of hostnames */ function gethostsbyaddrs($ips){ + global $conf; + if(!$conf['dnslookups']) return $ips; + $hosts = array(); $ips = explode(',',$ips); diff --git a/lib/plugins/config/lang/en/lang.php b/lib/plugins/config/lang/en/lang.php index d588e02f86d9c85190afed99544f6a71d08b500d..83c843b3a497e68a396676c3345773af6390eabf 100644 --- a/lib/plugins/config/lang/en/lang.php +++ b/lib/plugins/config/lang/en/lang.php @@ -177,6 +177,9 @@ $lang['renderer_xhtml'] = 'Renderer to use for main (xhtml) wiki output'; $lang['renderer__core'] = '%s (dokuwiki core)'; $lang['renderer__plugin'] = '%s (plugin)'; +/* Network Options */ +$lang['dnslookups'] = 'DokuWiki will lookup hostnames for remote IP addresses of users editing pages. If you have a slow or non working DNS server or don\'t want this feature, disable this option'; + /* Proxy Options */ $lang['proxy____host'] = 'Proxy servername'; $lang['proxy____port'] = 'Proxy port'; diff --git a/lib/plugins/config/settings/config.metadata.php b/lib/plugins/config/settings/config.metadata.php index 997495b2e698a2744567d172b313a0705f0233e4..3607f56c6509500ffa24ac00504ed276249d7e0c 100644 --- a/lib/plugins/config/settings/config.metadata.php +++ b/lib/plugins/config/settings/config.metadata.php @@ -207,6 +207,7 @@ $meta['renderer_xhtml'] = array('renderer','_format' => 'xhtml','_choices' => ar $meta['readdircache'] = array('numeric'); $meta['_network'] = array('fieldset'); +$meta['dnslookups'] = array('onoff'); $meta['proxy____host'] = array('string','_pattern' => '#^(|[a-z0-9\-\.+]+)$#i'); $meta['proxy____port'] = array('numericopt'); $meta['proxy____user'] = array('string');