I still run Fruity, a web-based configuration tool for Nagios. Yes, I still run Nagios. I ran into a problem today where Fruity would not export and relaunch Nagios. I noticed these entries in my logs:
Mon Aug 20 15:06:43 2012] [error] [client 96.245.113.112] PHP Warning: unlink(/tmp/512f590153b47413deef6b5d995dafc2/././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././../ in /usr/local/www/fruity/export.php on line 34, referer: https://fruity.example.org/fruity/export.php
Ummm, why is it doing that. Well, I hacked the code and came up with a fix:
//Remove all subdirectories foreach($dir as $subDir) { //If a subdirectory can't be removed, it's because it has subdirectories, so recursiveRemoveDirectory is called again passing the subdirectory as path if(!@rmdir($subDir)) //@ suppress the warning message { + if (basename($subDir) != '.' && basename($subDir) != '..') + { recursiveRemoveDirectory($subDir); + } } }
It’s not exactly a patch, but my added lines are prefixed with a +.
HTH.