diff options
Diffstat (limited to 'mod/_well_known.php')
-rw-r--r-- | mod/_well_known.php | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/mod/_well_known.php b/mod/_well_known.php index d88bc2391..46714deaa 100644 --- a/mod/_well_known.php +++ b/mod/_well_known.php @@ -7,6 +7,22 @@ function _well_known_init(&$a){ $arr = array('server' => $_SERVER, 'request' => $_REQUEST);
call_hooks('well_known', $arr);
+
+ if(! check_siteallowed($_SERVER['REMOTE_ADDR'])) {
+ logger('well_known: site not allowed. ' . $_SERVER['REMOTE_ADDR']);
+ killme();
+ }
+
+ // from php.net re: REMOTE_HOST:
+ // Note: Your web server must be configured to create this variable. For example in Apache
+ // you'll need HostnameLookups On inside httpd.conf for it to exist. See also gethostbyaddr().
+
+ if(get_config('system','siteallowed_remote_host') && (! check_siteallowed($_SERVER['REMOTE_HOST']))) {
+ logger('well_known: site not allowed. ' . $_SERVER['REMOTE_HOST']);
+ killme();
+ }
+
+
switch(argv(1)) {
case 'zot-info':
$a->argc -= 1;
@@ -33,6 +49,12 @@ function _well_known_init(&$a){ break;
default:
+ if(file_exists($a->cmd)) {
+ echo file_get_contents($a->cmd);
+ killme();
+ }
+ elseif(file_exists($a->cmd . '.php'))
+ require_once($a->cmd . '.php');
break;
}
|