Corinna Vinschen
49cc728adc
* fhandler_netdrive.cc (fhandler_netdrive::telldir): Remove since it's
...
equivalent to fhandler_virtual::telldir now anyway.
* fhandler.h (class fhandler_netdrive): Remove telldir.
2005-05-18 10:32:37 +00:00
Corinna Vinschen
bffaf54d76
* fhandler_netdrive.cc (fhandler_netdrive::telldir): Implement.
...
(fhandler_netdrive::seekdir): Implement.
(fhandler_netdrive::closedir): Call rewinddir to have only one point
of calling WNetCloseEnum.
2005-05-18 10:23:40 +00:00
Corinna Vinschen
5b59a2cc0d
* fhandler.h (class fhandler_netdrive): Add method rewinddir.
...
* fhandler_netdrive.cc (struct netdriveinf): New structure to
store thread arguments.
(thread_netdrive): Thread handling all potentially blocking
WNet... calls.
(create_thread_and_wait): Start and wait for above thread.
(fhandler_netdrive::exists): Change to call create_thread_and_wait
instead of calling WNet... function.
(fhandler_netdrive::readdir): Ditto. Fix error handling.
(fhandler_netdrive::rewinddir): New method.
2005-05-17 20:34:15 +00:00
Corinna Vinschen
0d5ba26ccd
* external.cc (cygwin_internal): Avoid compiler warning.
2005-05-17 08:46:41 +00:00
Christopher Faylor
dce0c241ef
white space
2005-05-17 01:29:27 +00:00
Christopher Faylor
4f7544bc97
* dcrt0.cc (dll_crt0_0): Don't do fixup_after_exec if dynamically loaded since
...
the state of fds is unknown at this point.
2005-05-17 01:27:31 +00:00
Christopher Faylor
5c8e6fbd8c
* include/sys/cygwin.h (enum cygwin_getinfo_types): Add CW_DEBUG_SELF.
...
* external.cc (cygwin_internal): Implement CW_DEBUG_SELF.
* init.cc (dll_entry): Minor rearrangement of code.
2005-05-17 01:21:06 +00:00
Christopher Faylor
b55ba2f3da
* path.cc (path_conv::check): Remove embedded dots before slashes.
2005-05-17 01:08:58 +00:00
Corinna Vinschen
451c738bef
* environ.cc (conv_envvars): Remove LD_LIBRARY_PATH entirely.
...
It doesn't belong here.
2005-05-16 15:48:36 +00:00
Corinna Vinschen
1f7b9e8bc6
* environ.cc (conv_envvars): Treat LD_LIBRARY_PATH as path list.
2005-05-15 12:04:13 +00:00
Corinna Vinschen
dad546a5eb
* fhandler_disk_file.cc (fhandler_base::fstat_by_handle): Check
...
return code from GetFileSize and set file size to 0 if necessary.
* fhandler_netdrive.cc (fhandler_netdrive::fstat): Set permissions
to read/execute for all.
2005-05-14 21:12:10 +00:00
Christopher Faylor
84778b9d8c
really fix typo.
2005-05-13 22:40:19 +00:00
Christopher Faylor
9156326733
fix typo
2005-05-13 22:09:32 +00:00
Christopher Faylor
17e5c6a8f0
* path.cc (normalize_posix_path): Do normalization on . and .. after a '//'.
2005-05-13 21:05:46 +00:00
Corinna Vinschen
50361e07d1
* fhandler.h (fhandler_netdrive::readdir): Remove useless comment.
2005-05-13 20:29:31 +00:00
Corinna Vinschen
e01eac68ed
* autoload.cc (WNetGetResourceParentA): Import.
...
(WNetOpenEnumA): Import.
(WNetEnumResourceA): Import.
(WNetCloseEnum): Import.
* fhandler.h (fhandler_netdrive::telldir): Add declaration.
(fhandler_netdrive::seekdir): Ditto.
(fhandler_netdrive::closedir): Ditto.
* fhandler_netdrive.cc: Drop explicit including windows.h. Include
winnetwk.h instead of shlwapi.h. Include dirent.h.
(fhandler_netdrive::readdir): Implement.
(fhandler_netdrive::telldir): New method.
(fhandler_netdrive::seekdir): New method.
(fhandler_netdrive::closedir): Ditto.
2005-05-13 20:20:02 +00:00
Christopher Faylor
063f1df2aa
Remove PC_FULL from path_conv usage throughout.
...
* path.h (enum pathconv_arg): Change PC_FULL to PC_NOUILL.
* path.cc (path_conv::check): Test for PC_NOFULL rather than !PC_FULL.
(cygwin_conv_to_win32_path): Use PC_NOFULL to force non-absolute path.
2005-05-13 15:46:07 +00:00
Christopher Faylor
eb6cd95fec
* fhandler_netdrive.cc (fhandler_netdrive::exists): Assert that "//" exists.
2005-05-13 13:23:38 +00:00
Christopher Faylor
66582dd6e7
* cygtls.cc (_cygtls::remove): Eliminate compiler warning.
...
* dir.cc (mkdir): Check path for writability.
(rmdir): Ditto. Remove check for special directories.
* path.cc (path_conv::check): Set PATH_RO for virtual devices. Set error if
read-only and asked for writability.
* path.h (pathconv_arg): Add PC_WRITABLE.
(path_types): Add PATH_RO.
(path_conv::isro): Add (currently unused) check for read-only filesystem.
Return "ENOSHARE" when we know a share doesn't exist.
* include/sys/mount.h: Add MOUNT_RO flag.
* autoload.cc (WNetGetResourceInformationA): Import.
* fhandler_netdrive.cc (fhandler_netdrive::exists): Detect actual existence of
remote system rather than always assuming that it exists.
2005-05-13 03:21:39 +00:00
Christopher Faylor
3ac78fd612
* dcrt0.cc (do_global_dtors): Don't call dll_global_dtors here.
...
(__main): Reinstate atexit of do_global_dtors.
(cygwin_exit): Call dll_global_dtors here.
(do_exit): And here.
2005-05-11 21:53:54 +00:00
Christopher Faylor
8ad65ff049
* cygtls.cc (_cygtls::remove): Clear exitsock after close.
...
* fhandler_console.cc (fhandler_console::write_normal): Store character in a
local variable for potential future inspection.
2005-05-11 03:33:38 +00:00
Corinna Vinschen
13505ca8fc
* Makefile.in (DLL_OFILES): Add fhandler_mailslot.o.
...
* devices.h (FH_KMSG): Define new device.
* devices.in: Add "/dev/kmsg" entry.
* devices.cc: Regenerate.
* dtable.cc (build_fh_pc): Handle case FH_KMSG.
* fhandler.h (class fhandler_mailslot): New class.
(class select_stuff): Add device_specific_mailslot pointer.
* fhandler_mailslot.cc: New file.
* select.cc (peek_mailslot): New function.
(verify_mailslot): Ditto.
(struct mailslotinf): New stuct to handle select on mailslots.
(thread_mailslot): New function.
(start_thread_mailslot): Ditto.
(mailslot_cleanup): Ditto.
(fhandler_mailslot::select_read): New method.
* syslog.cc (klog_guard): New muto.
(dev_kmsg): Local mailslot for kernel message device.
(vklog): New function.
(klog): Ditto.
* winsup.h (vklog): Declare.
(klog): Ditto.
* include/sys/syslog.h: Define _PATH_KLOG.
2005-05-10 20:56:07 +00:00
Christopher Faylor
a586e5b6ae
* dcrt0.cc (dll_crt0_1): Call cygwin_exit to ensure that destructors are
...
handled correctly.
2005-05-10 16:08:46 +00:00
Corinna Vinschen
94fed6a1f3
* path.cc (path_conv::check): Set correct file attributes for socket
...
files.
2005-05-10 09:08:20 +00:00
Pierre Humblet
adef8db0ae
2005-05-09 Pierre Humblet <pierre.humblet@ieee.org>
...
* fhandler.h (class fhandler_netdrive): New class.
* fhandler_netdrive.cc (fhandler_netdrive::fhandler_netdrive): New constructor.
(fhandler_netdrive::exists): New method.
(fhandler_netdrive::fstat): Ditto.
(fhandler_netdrive::readdir): Ditto.
(fhandler_netdrive::open): Ditto.
* dtable.cc (build_fh_pc): Handle case FH_NETDRIVE.
* path.cc (isvirtual_dev): Add FH_NETDRIVE.
(mount_info::conv_to_win32_path): Detect netdrive device and bypass mount
search for network paths.
2005-05-09 02:39:34 +00:00
Christopher Faylor
1cd8ccec87
* dcrt0.cc (get_cygwin_startup_info): New function pulled from dll_crt0_0.
...
(dll_crt0_0): Use get_cygwin_startup_info to retrieve cygwin-specific startup
pointer.
* external.cc (cygwin_internal): Implement CW_ARGV and CW_ENVP.
* include/sys/cygwin.h: Implement CW_ARGV and CW_ENVP.
2005-05-09 01:19:38 +00:00
Christopher Faylor
3f6494e216
* path.cc (normalize_posix_path): Don't treat '//' specially since newer
...
versions of bash now get this right.
2005-05-07 21:06:08 +00:00
Christopher Faylor
bbb3381289
* devices.cc: Regenerate with correct name for dev_netdrive_storage.
2005-05-07 20:20:51 +00:00
Christopher Faylor
bcd1a9b6d1
move comment
2005-05-06 21:09:58 +00:00
Christopher Faylor
e73f487b3c
fix breakpoint example
2005-05-06 21:09:35 +00:00
Christopher Faylor
8cdcc8803a
* Makefile.in (DLL_O_FILES): Add fhandler_netdrive.o.
...
* fhandler_netdrive.cc: Placeholder file for future development.
* devices.h (FH_NETDRIVE): Define new virtual device type.
(netdrive_dev): Define.
* devices.in (dev_netdrive_storage): Define.
* devices.cc: Regenerate.
2005-05-06 04:06:17 +00:00
Corinna Vinschen
56f235345d
* cygerrno.h (__set_errno): Remove useless parentheses.
2005-05-04 11:05:11 +00:00
Corinna Vinschen
5d4750a996
* cygerrno.h (__set_errno): Define as inline function here.
...
(set_errno): Always define as call to __set_errno.
* debug.cc (__set_errno): Move to cygerrno.h.
2005-05-04 11:00:22 +00:00
Christopher Faylor
530d0e0191
* shared.cc (user_shared_initialize): Rework locking so that nothing is checked
...
until cb is non-zero.
2005-05-04 01:20:05 +00:00
Christopher Faylor
782e53ca69
* shared.cc (user_shared_initialize): Rework locking so that nothing is checked
...
until cb is non-zero.
2005-05-04 01:14:47 +00:00
Corinna Vinschen
21b9fe3e33
* fhandler_disk_file.cc (fhandler_disk_file::fchmod): Don't treat
...
inability to open file as failure if only SetFileAttributes is
going to be called. Only call set_file_attribute if really necessary.
2005-05-03 19:03:20 +00:00
Corinna Vinschen
2ba719de27
* fhandler_socket.cc (get_inet_addr): Add missing __seterrno call.
2005-05-03 14:07:19 +00:00
Christopher Faylor
05726ddd86
white space and minor comment cleanup.
2005-05-02 03:50:11 +00:00
Christopher Faylor
b9b1b38358
* fhandler_tty.cc (fhandler_tty_slave::read): Actually read input when vmin ==
...
vtime == 0.
2005-05-02 00:17:45 +00:00
Christopher Faylor
f0b14f146e
* environ.cc (spenv::force_into_environment): Rename from add_always.
...
(spenv::add_if_exists): Rename from force.
(build_env): Accommodate name changes. Make sure that stuff that is always
supposed to be in the environment is actually added to the environment.
* shared.cc (open_shared): Restore VirtualFree eliminated by 2005-04-28 change.
2005-04-30 17:07:05 +00:00
Christopher Faylor
06e0dc9a46
* errno.cc (errmap): Sort table.
2005-04-30 04:10:39 +00:00
Christopher Faylor
7b076c36fc
* errno.cc (errmap): Map ERROR_NETNAME_DELETED to ENOSHARE.
2005-04-30 03:40:26 +00:00
Christopher Faylor
c4ffa3c427
* shared_info.h (cygwin_shared_address): Bump to a higher value to avoid
...
collision with large data areas.
* fhandler_console.cc (fhandler_console::get_tty_stuff): Accommodate changes to
open_shared arguments.
* fhandler_tape.cc (mtinfo_init): Ditto.
* pinfo.cc (pinfo::init): Use open_shared rather than win32 mmap calls.
* shared.cc (user_shared_initialize): Ditto.
(memory_init): Ditto.
(open_shared): Change to allow use a smore general mmap handler.
* shared_info.h (shared_locations): Add SH_JUSTCREATE, SH_JUSTOPEN.
(open_shared): Change declaration to match new usage.
* autoload.cc (LoadDLLfuncEx2): Define in terms of LoadDLLfuncEx3.
(LoadDLLfuncEx3): New macro.
2005-04-28 23:59:44 +00:00
Christopher Faylor
5c70f2f92e
(check in files that should have been checked in previously)
...
* fhandler.cc (fhandler_base::open_9x): Remove (broken) check for
O_CREAT|O_EXCL.
* syscalls.cc (open): Do O_CREAT|O_EXCL check here first.
2005-04-28 03:41:09 +00:00
Christopher Faylor
faae8c50a5
* fhandler.cc (fhandler_base::open_9x): Remove (broken) check for
...
O_CREAT|O_EXCL.
* syscalls.cc (open): Do O_CREAT|O_EXCL check here first.
2005-04-28 03:33:19 +00:00
Christopher Faylor
dd991a7572
* environ.cc (build_env): Ensure that win32 array is properly filled in when a
...
missing value has to be generated.
2005-04-27 03:09:59 +00:00
Christopher Faylor
0aedc5e99a
* include/cygwin/version.h: Bump DLL minor number to 17.
2005-04-26 17:27:40 +00:00
Joshua Daniel Franklin
46bf13ffc0
* how-to-debug-cygwin.txt: Fix typo.
2005-04-25 05:03:53 +00:00
Christopher Faylor
bc79d16453
* shared.cc (user_shared_initialize): Implement locking similar to shared_info
...
when initializing shared region.
2005-04-23 03:24:21 +00:00
Christopher Faylor
098a429002
* fhandler.h (dev_console::set_color): Define new function.
...
(dev_console::set_default_attr): Ditto, moved from fhandler_console.
(dev_console::fillin_info): Ditto. Accommodate this change throughout this
file.
(fhandler_console::get_win32_attr): Eliminate.
* fhandler_console.cc (fhandler_console::get_tty_stuff): Properly set default
attributes on initialization.
(fhandler_console::open): Set current attributes rather than default color on
open.
(fhandler_console::get_win32_attr): Eliminate.
(dev_console::set_color): New function. Move get_win32_attr stuff here.
(dev_console::set_default_attr): New function, moved from fhandler_console.
(dev_console::fillin_info): Ditto.
(fhandler_console::char_command): Call set_color to set screen characteristics.
2005-04-22 17:03:38 +00:00