Viewing File server/web/environment.test.php of 1.10.0a
|
1: <?php 2: /* ------------------------------------------------------------- 3: This file is part of FreeNATS 4: 5: FreeNATS is (C) Copyright 2008-2010 PurplePixie Systems 6: 7: FreeNATS is free software: you can redistribute it and/or modify 8: it under the terms of the GNU General Public License as published by 9: the Free Software Foundation, either version 3 of the License, or 10: (at your option) any later version. 11: 12: FreeNATS is distributed in the hope that it will be useful, 13: but WITHOUT ANY WARRANTY; without even the implied warranty of 14: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15: GNU General Public License for more details. 16: 17: You should have received a copy of the GNU General Public License 18: along with FreeNATS. If not, see www.gnu.org/licenses 19: 20: For more information see www.purplepixie.org/freenats 21: -------------------------------------------------------------- */ 22: 23: function test_funcs($funcs) 24: { 25: if (!is_array($funcs)) $funcs=array($funcs); 26: $out=""; 27: for($a=0; $a<count($funcs); $a++) 28: { 29: if (!function_exists($funcs[$a])) 30: { 31: $out.=$funcs[$a]." "; 32: } 33: } 34: if ($out!="") $out.="functions required"; 35: return $out; 36: } 37: 38: function test_mod($mod,$funcs) 39: { 40: $text=test_funcs($funcs); 41: if ($text=="") 42: { 43: echo "<b style=\"color: green;\">".$mod."</b> - Ok<br>"; 44: return true; 45: } 46: else 47: { 48: echo "<b style=\"color: red;\">".$mod."</b> - ".$text."<br>"; 49: return false; 50: } 51: } 52: 53: if (!isset($env_test_web)) // PHP CLI Test 54: { 55: if (!test_mod("IMAP","imap_open")) 56: { 57: echo "IMAP is not supported - don't configure IMAP tests or your environment will hang<br>"; 58: } 59: if (!test_mod("Sockets","fsockopen")) 60: { 61: echo "Sockets are not supported - fatal error<br>"; 62: } 63: if (!test_mod("Streams","fopen")) 64: { 65: echo "Streams are not supported - fatal error<br>"; 66: } 67: if (!test_mod("MySQL","mysql_connect")) 68: { 69: echo "MySQL is not supported - fatal error<br>"; 70: } 71: if (!test_mod("Mail","mail")) 72: { 73: echo "mail() not supported, may have to use direct SMTP or maybe no mail will work!<br>"; 74: } 75: if (!test_mod("PHP5","str_split")) 76: { 77: echo "Don't appear to be running PHP5 - FreeNATS may not work on PHP4<br>"; 78: } 79: if (!test_mod("XML","xml_parser_create")) 80: { 81: echo "XML Parser not present in PHP CLI - nodeside testing and anything else dependent on XML (discovery/import tools etc) will fail!<br>"; 82: } 83: exit(1); 84: } 85: else // PHP Web/Apache Module Test 86: { 87: if (!test_mod("MySQL","mysql_connect")) 88: { 89: echo "MySQL is not supported - fatal error<br>"; 90: } 91: if (!test_mod("Mail","mail")) 92: { 93: echo "mail() not supported, may have to use direct SMTP or maybe no mail will work!<br>"; 94: } 95: if (!test_mod("PHP5","str_split")) 96: { 97: echo "Don't appear to be running PHP5 - FreeNATS may not work on PHP4<br>"; 98: } 99: if (!test_mod("GD Graphics",array("imagecreate","imagepng"))) 100: { 101: echo "GD Graphics does not appear to be supported or does not support PNG - historic graphs will not work!<br>"; 102: } 103: if (!test_mod("XML","xml_parser_create")) 104: { 105: echo "XML Parser not present in PHP web - nodeside and other functions from within the web interface will fail<br>"; 106: } 107: } 108: 109: ?> 110: