Summary | fatal error clicking 'file manager' button: no class VFS_ |
Queue | Gollem |
Queue Version | HEAD |
Type | Bug |
State | No Feedback |
Priority | 1. Low |
Owners | slusarz (at) horde (dot) org |
Requester | herde (at) tu-harburg (dot) de |
Created | 11/11/2008 (6084 days ago) |
Due | |
Updated | 02/10/2009 (5993 days ago) |
Assigned | 01/29/2009 (6005 days ago) |
Resolved | 02/10/2009 (5993 days ago) |
Github Issue Link | |
Github Pull Request | |
Milestone | |
Patch | No |
State ⇒ Feedback
influence on what is being stored in the *server* session.
It's an IE bug again.(i test it under IE7). under opera and FF this
function works well.
I do not follow back the error but find some things:
1. in IE we have a $SESSION['gollem'] array always:
Array
(
[backends] => Array
(
)
[selectlist] => Array
(
)
[backend_key] =>
)
under opera and ff we have no $SESSION['gollem'] array in this case.
2. This cause the error in the redirect.php:
this if is always true if we go with IE:
if (isset($_SESSION['gollem']) &&
is_array($_SESSION['gollem']) &&
($_SESSION['gollem']['backend_key'] == $backend_key)) {
and this try redirect us to the gollem/manager.php and this cause the error.
3. we set up the SESSION in the lib/base.php in this line:
$registry = &Registry::singleton();
4. i do not follow back the error more - sorry limited time :-/
my solution is in redirect.php - line 64-66
version:
* $Horde: gollem/redirect.php,v 1.74 2009-01-06 17:50:05 jan Exp $
old one:
if (isset($_SESSION['gollem']) &&
is_array($_SESSION['gollem']) &&
($_SESSION['gollem']['backend_key'] == $backend_key)) {
new one:
if (isset($_SESSION['gollem']) &&
is_array($_SESSION['gollem']) &&
($_SESSION['gollem']['backend_key'] == $backend_key) &&
!empty($_SESSION['gollem']['backends'])
) {
i'm not sure this patch is good in all case.
State ⇒ Feedback
[17-Nov-2008 13:26:26] PHP Notice: Undefined index: backend_key in
/var/www/html/horde/gollem/redirect.php on line 66
...
[17-Nov-2008 13:26:27] PHP Notice: Undefined index: backend_key in
/var/www/html/horde/gollem/lib/Auth/gollem.php on line 99
indicate that $_SESSION['gollem'] is set, but the only place where
$_SESSION['gollem'] is set is in lib/Session.php, and in that function
we *always* set 'backend_key'. And we do automatically select the
first backend key as the default if no 'preferred' value is set. So
you will have to do further debugging to discover where
$_SESSION['gollem'] is being set. I can't reproduce this at all.
Milestone ⇒
State ⇒ Assigned
New Attachment: backends-skeleton.php
configuration.
entry - but the
problem still remains. i attach the config file without a lot of
inline php and with
commends instead. BTW the backend configuration works - this problem only
happens if i click onto the button 'fileserver' (not selecting a
backend) before i
select a backend.
The error messages in /var/log/php5 are:
[17-Nov-2008 13:26:26] PHP Notice: Undefined index: backend_key in
/var/www/html/horde/gollem/redirect.php on line 66
[17-Nov-2008 13:26:27] PHP Notice: Undefined index: gollem_backends
in /var/www/html/horde/gollem/lib/Gollem.php on line 667
[17-Nov-2008 13:26:27] PHP Warning: Invalid argument supplied for
foreach() in /var/www/html/horde/gollem/lib/Gollem.php on line 6
67
[17-Nov-2008 13:26:27] PHP Notice: Undefined index: backend_key in
/var/www/html/horde/gollem/lib/Auth/gollem.php on line 99
[17-Nov-2008 13:26:27] PHP Notice: Undefined index: gollem_backends
in /var/www/html/horde/gollem/lib/Gollem.php on line 982
[17-Nov-2008 13:26:27] PHP Warning: VFS::include_once(VFS/.php) [<a
href='function.VFS-include-once'>function.VFS-include-once</a>
]: failed to open stream: Datei oder Verzeichnis nicht gefunden in
/var/www/html/horde/lib/VFS.php on line 1061
[17-Nov-2008 13:26:27] PHP Warning: VFS::include_once() [<a
href='function.include'>function.include</a>]: Failed opening 'VFS/.ph
p' for inclusion
(include_path='/var/www/html/horde/lib:.:/usr/local/lib/php') in
/var/www/html/horde/lib/VFS.php on line 1061
[17-Nov-2008 13:26:27] PHP Warning: Missing argument 2 for
Horde::fatal(), called in /var/www/html/horde/gollem/lib/Auth/gollem.ph
p on line 101 and defined in /var/www/html/horde/lib/Horde.php on line 184
[17-Nov-2008 13:26:27] PHP Warning: Missing argument 3 for
Horde::fatal(), called in /var/www/html/horde/gollem/lib/Auth/gollem.ph
p on line 101 and defined in /var/www/html/horde/lib/Horde.php on line 184
[17-Nov-2008 13:26:27] PHP Notice: Undefined variable: line in
/var/www/html/horde/lib/Horde.php on line 225
[17-Nov-2008 13:26:27] PHP Notice: Undefined variable: file in
/var/www/html/horde/lib/Horde.php on line 225
Priority ⇒ 1. Low
default backend should be the first defined backend.
configuration.
option to define one of the backends which should be the default
other than this.
entry? That's the only way I can see to cause this error (VFS is
trying to load with a driver named '' or null).
pathes for home on the different smb shares for each authenticated
user in order to define the backend entries for the session in a loop
afterwarts.
As far as i understand, if choosing not to use the backend list the
default backend should be the first defined backend. I can't find an
option to define one of the backends which should be the default other
than this. If i am wrong i shurely should post this request on to the
gollem list
entry? That's the only way I can see to cause this error (VFS is
trying to load with a driver named '' or null).
Priority ⇒ 2. Medium
State ⇒ Unconfirmed
New Attachment: Gollem_Fehlermeldung_VFS_XXX Kopie.png
Patch ⇒ No
Milestone ⇒ H3 1.1
Queue ⇒ Gollem
Due ⇒ 11/11/2008
Summary ⇒ fatal error clicking 'file manager' button: no class VFS_
Type ⇒ Bug
a view backends (ssh2 and smb) are defined in our case.
Selecting the file manager icon before clicking any of the different backend
icons fatal error is thrown because there is no class VFS_ driver in the VFS.
See the attached screenshot please.
If i first select one of the backends it works as expected - if i
click on the file manager
icon afterwards the 'file manager login' appears.
There should be a default backend, propably the first defined ... all
backends have
full horde authentication enabled in our case - so it is not
nessessary to request any
extra credentials.