Jukebox VFS module almost finished :-)

Andreas Lund floyd at atc.no
Sat Mar 23 02:16:02 GMT 2002

This module is coming along very well, the module uses mysql for caching
directory contents so clients can browse the media without the changer having
to work overtime. And it's sooo close to working!

But... I get hundreds, nay thousands of requests for "desktop.ini". Now, if I
just return a "fake" stat buffer saying the file is here, everything works,
but very slowly since the client will then always follow up by trying to open
the non-existing file a few times before moving on.

However if I tell the truth and have jukebox_stat() return -1 when desktop.ini
doesn't exist, then the client refuses to show any files at all!

[2002/03/23 02:24:16, 1] jukebox.c:jukebox_stat(661)
  stat failed, file not found (returned -1)
[2002/03/23 02:24:16, 3] smbd/trans2.c:call_trans2qfilepathinfo(1503)
  fileinfo of My Directory/desktop.ini failed (Resource temporarily
[2002/03/23 02:24:16, 3] smbd/error.c:error_packet(91)
  error string = Resource temporarily unavailable
[2002/03/23 02:24:16, 3] smbd/error.c:error_packet(106)
  error packet at smbd/trans2.c(1508) cmd=50 (SMBtrans2)

The directory in question does indeed exist, and the client has just received
a list of files through opendir/readdir. Also, the client has received a valid
stat record for each of those files.

Can anyone tell me what I'm missing here? Why is a missing file interpreted as
a "temporarily unavailable" directory? This is the only obstacle I have left
before I have a working module so I'd really _really_ like to find a solution.


Andreas Lund (floyd at atc.no)
Tel: +47 / +47
Ano-Tech Computers (http://www.atc.no/)
** Never send a human to do a machine's job  **

ps. As a bonus question, can anyone tell me what they were smoking at
Microsoft the day they decided it would be a neat idea to stat for desktop.ini
in every single directory every time the user scrolls his explorer window up
or down?

More information about the samba-technical mailing list