6.0.0-beta1
7/9/25

[#7664] fatal error clicking 'file manager' button: no class VFS_
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

History
02/10/2009 04:53:54 PM Chuck Hagenbuch State ⇒ No Feedback
 
02/10/2009 04:53:45 PM Chuck Hagenbuch State ⇒ Not A Bug
 
01/29/2009 10:58:26 AM Jan Schneider Comment #8
State ⇒ Feedback
Reply to this comment
This doesn't make any sense to me, since the browser has absolutely no 
influence on what is being stored in the *server* session.
01/26/2009 02:43:40 PM horde (at) smartsector (dot) hu Comment #7 Reply to this comment
I found the problem as i think:



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.


12/22/2008 03:06:11 AM Chuck Hagenbuch State ⇒ No Feedback
 
12/07/2008 07:19:10 PM Michael Slusarz Comment #6
State ⇒ Feedback
Reply to this comment
I really have no clue.  These lines:

[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.
12/07/2008 06:55:08 PM Jan Schneider Assigned to Michael Slusarz
Milestone ⇒
State ⇒ Assigned
 
11/17/2008 12:35:55 PM herde (at) tu-harburg (dot) de Comment #5
New Attachment: backends-skeleton.php Download
Reply to this comment
Correct. But it appears that backend is missing a valid 'driver'
configuration.
'preferred' parameter.
I tried to set the preferred parameter to the hostname of the fist 
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




11/14/2008 08:38:38 PM Michael Slusarz Comment #4
Priority ⇒ 1. Low
Reply to this comment
As far as i understand, if choosing not to use the backend list the
default backend should be the first defined backend.
Correct. But it appears that backend is missing a valid 'driver' 
configuration.
I can't find an
option to define one of the backends which should be the default
other than this.
'preferred' parameter.
11/12/2008 06:22:26 AM herde (at) tu-harburg (dot) de Comment #3 Reply to this comment
And your backends file correctly defines the driver for the default
entry?  That's the only way I can see to cause this error (VFS is
trying to load with a driver named '' or null).
My backend file is very complicated because i have to compute the 
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
11/12/2008 12:37:59 AM Chuck Hagenbuch State ⇒ Feedback
 
11/12/2008 12:35:38 AM Michael Slusarz Comment #2 Reply to this comment
And your backends file correctly defines the driver for the default 
entry?  That's the only way I can see to cause this error (VFS is 
trying to load with a driver named '' or null).
11/11/2008 11:49:25 AM herde (at) tu-harburg (dot) de Comment #1
Priority ⇒ 2. Medium
State ⇒ Unconfirmed
New Attachment: Gollem_Fehlermeldung_VFS_XXX Kopie.png Download
Patch ⇒ No
Milestone ⇒ H3 1.1
Queue ⇒ Gollem
Due ⇒ 11/11/2008
Summary ⇒ fatal error clicking 'file manager' button: no class VFS_
Type ⇒ Bug
Reply to this comment
Horde 3.2 , Framework_3 , gollem head of 2008/11/11 -

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.


Saved Queries