Detecting share violations over cifs with PHP? Feature request
| From: | Ian Tighe | Date: | Wed, 16 Sep 2009 09:14:55 +0000 |
| Subject: | Detecting share violations over cifs with PHP? Feature request | ||
| Groups: | php.internals | ||
| Request: | Send a blank email to internals+get-45577@lists.php.net to get a copy of this message | ||
Hi. I hope this has been sent to the right place.
I am using files that are mount.cif share files. My client is a samba linux box but acting as a
client over cifs to an XP box (several in fact).
I am descending the share recursively with opendir and readdir detecting files ( and of course
directories ) before doing my processing.
I note from a wireshark trace I am getting errors - sharing violations reported by XP. I would very
much like to detect these events to take action - ignore the file for instance - but right now I
have a true or false return from readdir, is_dir, is_file or is_link which is not very helpful
during a fault condition such as a sharing violation. In other words a sharing violation looks like
a readdir saying no more files!
It seems that once the error condition comes about all my reads of a directory and tests of file
types fail until I reach the end of that directory and all of its parent directories. This is not so
good.
Am I missing a trick here? If not is it possible to bring out more error information so that I can
detect these events. An error array as an additional overloaded argument to readdir, opendir (indeed
any I/O) where the first element has the normal true/false perhaps but a second element has a return
code for smb/cifs/file_system failure/error/warning condition?
Thanks
Ian