This is the mail archive of the cygwin-patches@cygwin.com mailing list for the Cygwin project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
This patch superceeds "Fix for incorrect handling of open flags in fhandler_proc". Fixes the following bugs: * '.' and '..' directory entries were missing. * fhandler_*::open() were using the mode parameter as if it was the flags parameter. This has been corrected and some minor changes made to the error handling logic. * Correctly indentifies the case when you try to create a new file in /proc or one of its subdirectories. * dup() was broken, hence cat </proc/uptime, etc. failed. This has now been corrected. * fhandler_registry::telldir didn't return the correct position in the directory. * fhandler_registry::seekdir didn't work. Regards Chris 2002-05-03 Christopher January <chris@atomice.net> * fhandler_proc.cc (fhandler_proc::open): Change use of mode to flags. If the file does not exist already, fail with EROFS if O_CREAT flag is set. Use cmalloc to allocate memory for filebuf. * fhandler_process.cc (fhandler_process::open): Ditto. * fhandler_registry.cc (fhandler_registry::open): Ditto. Move check for open for writing before open_key. * path.cc (path_conv::check): Do not return ENOENT if a file is not found in /proc. * fhandler_virtual.cc (fhandler_virtual::write): Change EROFS error to EACCES error. * fhandler_virtual.cc (fhandler_virtual::open): Set the NOHANDLE flag. * fhandler_virtual.cc (fhandler_virtual::dup): Add call to fhandler_base::dup. Allocate child's filebuf using cmalloc. Copy filebuf from parent to child. * fhandler_virtual.cc (fhandler_virtual::close): Use cfree to free filebuf. * fhandler_proc.cc: Add '.' and '..' to directory listing. * fhandler_process.cc: Ditto. * fhandler_registry.cc: Ditto. * fhandler_registry.cc (fhandler_registry::readdir): Add support for '.' and '..' files in subdirectories of /proc/registry. * fhandler_registry.cc (fhandler_registry::telldir): Use lower 16 bits of __d_position as position in directory. * fhandler_registry.cc (fhandler_registry::seekdir): Ditto.
Attachment:
ChangeLog2
Description: Binary data
Attachment:
proc.patch.3
Description: Binary data
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |