2002-06-24 21:01:50 +08:00
|
|
|
2002-06-23 Pierre Humblet <pierre.humblet@ieee.org>
|
|
|
|
|
|
|
|
* security.cc (get_group_sidlist): Add pw argument and use pw->pw_name
|
|
|
|
in call to get_supplementary_group_sidlist.
|
|
|
|
(create_token): Add pw argument and use it in call to
|
|
|
|
get_group_sidlist.
|
|
|
|
* security.h: Add pw argument in declaration of create_token.
|
|
|
|
* syscalls.cc (seteuid32): Add pw argument in call to create_token.
|
|
|
|
|
2002-06-24 10:23:14 +08:00
|
|
|
2002-06-23 Conrad Scott <conrad.scott@dsl.pipex.com>
|
|
|
|
|
|
|
|
* fhandler.cc (fhandler_base::fstat): Set S_IFIFO for pipes.
|
|
|
|
* fhandler_socket.cc (fhandler_socket.cc::fstat): Set S_IFSOCK.
|
|
|
|
|
2002-06-24 10:08:41 +08:00
|
|
|
2002-06-23 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* lib/_cygwin_S_IEXEC.cc: Remove obsolete file.
|
|
|
|
|
2002-06-24 06:56:58 +08:00
|
|
|
2002-06-23 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
Use cygwin_{shm,ipc}.h instead of /sys/{shm,ipc}.h throughout.
|
|
|
|
* sys/ipc.h: Remove.
|
|
|
|
* sys/shm.h: Remove.
|
|
|
|
* cygwin_ipc.h: New file.
|
|
|
|
* cygwin_shm.h: New file.
|
|
|
|
|
2002-06-24 02:55:23 +08:00
|
|
|
2002-06-23 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* cygwin.sc: Add recent changes from ld sources.
|
|
|
|
|
|
|
|
2002-06-23 Conrad Scott <conrad.scott@dsl.pipex.com>
|
|
|
|
|
|
|
|
* winsup.h: Move #ifdef EXPCGF code into "winbase.h".
|
|
|
|
* winbase.h: #ifdef EXPCGF code moved here from "winsup.h".
|
|
|
|
|
2002-06-23 15:36:21 +08:00
|
|
|
2002-06-12 Thomas Pfaff <tpfaff@gmx.net>
|
|
|
|
|
|
|
|
* thread.h (pthread::cleanup_stack): Renamed cleanup_handlers to
|
|
|
|
cleanup_stack.
|
|
|
|
* thread.cc (pthread::pthread): Ditto.
|
|
|
|
(pthread::create): Fixed mutex verification.
|
|
|
|
(pthread::push_cleanup_handler): Renamed cleanup_handlers to
|
|
|
|
cleanup_stack.
|
|
|
|
Mutex calls removed, used InterlockedExchangePointer instead.
|
|
|
|
(pthread::pop_cleanup_handler): Renamed cleanup_handlers to
|
|
|
|
cleanup_stack.
|
|
|
|
(pthread::pop_all_cleanup_handlers): Ditto.
|
|
|
|
(__pthread_once): Check state first and return if already done.
|
|
|
|
(__pthread_join): DEADLOCK test reverted to __pthread_equal
|
|
|
|
call.
|
|
|
|
(__pthread_detach): Unlock mutex before deletion.
|
|
|
|
|
2002-06-22 10:56:56 +08:00
|
|
|
2002-06-21 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* Makefile.in (cygrun.exe): Move -lgcc where it will do some good.
|
|
|
|
|
2002-06-21 23:01:19 +08:00
|
|
|
2002-06-21 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* syscalls.cc (stat64_to_stat32): Correctly evaluate st_rdev.
|
|
|
|
(fstat64): Set st_rdev to same value as st_dev.
|
|
|
|
(stat_worker): Ditto.
|
|
|
|
|
2002-06-21 20:57:19 +08:00
|
|
|
2002-06-21 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* security.cc (alloc_sd): Carefully check owner_sid again after trying
|
|
|
|
SIDs from cygheap.
|
|
|
|
|
2002-06-21 20:37:51 +08:00
|
|
|
2002-06-21 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* security.cc (alloc_sd): Remove unnecessary retrieval of owner name.
|
|
|
|
Check uid for current user first and use SIDs from cygheap if so.
|
|
|
|
Set errno to EINVAL if user SID isn't retrievable. Just print user SID
|
|
|
|
as debug output.
|
|
|
|
Don't bail out if group SID isn't retrievable. Change debug output
|
|
|
|
appropriately.
|
|
|
|
|
2002-06-21 13:47:09 +08:00
|
|
|
2002-06-21 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* errno.cc: Change text description for EBADF throughout.
|
|
|
|
|
2002-06-21 13:01:17 +08:00
|
|
|
2002-06-20 Pierre Humblet <pierre.humblet@ieee.org>
|
|
|
|
|
|
|
|
* uinfo.cc (cygheap_user::ontherange): Use env_name for NetUserGetInfo.
|
|
|
|
(cygheap_user::env_logsrv): Verify env_domain is valid.
|
|
|
|
* environ.cc: Include child_info.h and keep spenvs[] sorted.
|
|
|
|
(environ_init): Check child_proc_info instead of myself->ppid_handle.
|
|
|
|
|
2002-06-20 08:36:40 +08:00
|
|
|
2002-06-19 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler.cc (fhandler_base::set_flags): Change priority of "linked
|
|
|
|
in" default binmode setting so that it has priority over optional
|
|
|
|
setting.
|
|
|
|
|
2002-06-19 23:27:27 +08:00
|
|
|
2002-06-19 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
2002-06-21 13:01:56 +08:00
|
|
|
Use hMainProc where appropriate, throughout.
|
2002-06-19 23:27:27 +08:00
|
|
|
* environ.cc (spenv::retrieve): Add debugging statements.
|
|
|
|
|
|
|
|
* pinfo.cc (set_myself): Don't call strace.hello if already stracing.
|
|
|
|
* strace.cc (strace): Move NO_COPY keyword so that it will actually
|
|
|
|
take effect.
|
|
|
|
|
2002-06-19 21:56:34 +08:00
|
|
|
2002-06-19 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* uinfo.cc (cygheap_user::ontherange): Call NetUserGetInfo() only with
|
|
|
|
non-NULL logserver parameter.
|
|
|
|
|
2002-06-17 07:34:43 +08:00
|
|
|
2002-06-16 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* cygheap.h (cygheap_user::issetuid): New method.
|
|
|
|
* dtable.cc (dtable::vfork_child_dup): Use new method to determine if
|
|
|
|
we are in "setuid mode."
|
|
|
|
* fork.cc (fork_parent): Ditto.
|
|
|
|
* spawn.cc (spawn_guts): Ditto.
|
|
|
|
* syscalls.cc (seteuid32): Ditto.
|
|
|
|
(setegid32): Ditto.
|
|
|
|
* environ.cc (spenv::retrieve): (Suggested by Pierre Humblet) Do
|
|
|
|
potential recalculation of cygheap_user stuff when in setuid mode.
|
2002-06-17 07:38:50 +08:00
|
|
|
Return special value when environment variable should be calculated but
|
|
|
|
not added.
|
2002-06-17 07:34:43 +08:00
|
|
|
(build_env): Don't add retrieved value to dstp if it is 'dont_add'.
|
|
|
|
|
2002-06-16 13:45:37 +08:00
|
|
|
2002-06-16 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
Changes suggested by Pierre Humblet.
|
|
|
|
* environ.cc (NL): New macro.
|
|
|
|
(conv_envvars): Use NL macro to fill in name and namelen.
|
|
|
|
(spenv::namelen): New field.
|
|
|
|
(spenvs): Use NL to fill in name and namelen.
|
|
|
|
(spenv::retrieve): Eliminate length argument. Instead, use namelen
|
|
|
|
throughout.
|
|
|
|
(build_env): Don't calculate length of initial FOO= part of
|
|
|
|
environment. Accommodate spenv::retrive argument change.
|
|
|
|
|
2002-06-16 13:26:14 +08:00
|
|
|
2002-06-16 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* cygheap.h (cygheap_user::winname): New field.
|
|
|
|
* cygheap.cc (cygheap_user::set_name): Clear winname when name changes.
|
|
|
|
* uinfo.cc (cygheap_user::env_logsrv): Avoid calculating server when
|
|
|
|
Windows user == SYSTEM.
|
|
|
|
(cygheap_user::env_domain): Set winname here too.
|
|
|
|
(cygheap_user::env_userprofile): Eliminate superfluous tests.
|
|
|
|
(cygheap_user::env_name): Seed winname by calling env_domain().
|
|
|
|
|
2002-06-16 12:25:54 +08:00
|
|
|
2002-06-12 Pierre Humblet <pierre.humblet@ieee.org>
|
|
|
|
|
|
|
|
* spawn.cc (spawn_guts): Revert removal of ciresrv.moreinfo->uid =
|
|
|
|
ILLEGAL_UID.
|
|
|
|
|
2002-06-16 05:59:32 +08:00
|
|
|
2002-06-15 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* child_info.h (child_proc_info): Declare as base class.
|
|
|
|
(spawn_info): Declare as alias of child_proc_info to aid debugging.
|
|
|
|
(fork_info): Ditto.
|
|
|
|
* cygheap.cc (cygheap_fixup_in_child): Use child_proc_info global
|
|
|
|
rather than parameter.
|
|
|
|
* cygheap.h (cygheap_fixup_in_child): Reflect above change in
|
|
|
|
declaration.
|
|
|
|
* dcrt0.cc (_dll_crt0): Move 'si' definition here. Assign
|
|
|
|
child_proc_info.
|
|
|
|
(dll_crt0_1): Accommodate cygheap_fixup_in_child and *_info changes.
|
|
|
|
* environ.cc (spenv::retrieve): Make regparm.
|
|
|
|
* environ.h (environ_init): Ditto.
|
|
|
|
(win_env::add_cache): Ditto.
|
|
|
|
(build_env): Ditto.
|
|
|
|
(getwinenv): Ditto.
|
|
|
|
* fork.cc (sync_with_parent): Use fork_info global.
|
|
|
|
(fork_child): Ditto.
|
|
|
|
|
2002-06-15 09:17:45 +08:00
|
|
|
2002-06-14 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* uinfo.cc (cygheap_user::ontherange): Don't set HOMEDRIVE or HOMEPATH
|
|
|
|
unless one or the other is specified.
|
|
|
|
|
2002-06-15 05:46:19 +08:00
|
|
|
2002-06-14 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* cygheap.h (cygheap_user::userprofile_env_buf): New static member.
|
|
|
|
* environ.cc (build_env): Add debugging statement.
|
|
|
|
(spenvs): Switch functions for USERDOMAIN and USERNAME.
|
|
|
|
* spawn.cc (spawn_guts): Move environment initialization prior to
|
|
|
|
cygheap_setup_for_child or environment info will never be copied to
|
|
|
|
child.
|
|
|
|
|
2002-06-15 04:36:42 +08:00
|
|
|
2002-06-14 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* cygheap.h (cygheap_user): Add static members to hold home{drive,path}
|
|
|
|
info.
|
|
|
|
* uinfo.cc (cygheap_user::ontherange): Use static class members for
|
|
|
|
local HOME* storage.
|
|
|
|
|
2002-06-15 02:01:21 +08:00
|
|
|
2002-06-14 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* cygheap.cc (cygheap_user::set_logsrv): Remove.
|
|
|
|
(cygheap_user::set_domain): Ditto.
|
|
|
|
* cygheap.h (cygheap_user::set_logsrv): Remove declaration.
|
|
|
|
(cygheap_user::set_domain): Ditto.
|
|
|
|
(cygheap_user::env_domain): Declare new method.
|
|
|
|
(cygheap_user::env_name): Ditto.
|
|
|
|
* environ.cc (spenvs): Add two environment variables.
|
|
|
|
* spawn.cc (spawn_guts): Call build_env after RevertToSelf. Always set
|
|
|
|
ciresrv.mount_h.
|
|
|
|
(cygheap_user::ontherange): Recalculate homedrive/homepath if they are
|
|
|
|
empty. Use env_logsrv to get logon server.
|
|
|
|
(cygheap_user::env_logsrv): Calculate server name here rather than
|
|
|
|
relying on it having been previously calculated.
|
|
|
|
(cygheap_user::env_domain): Ditto for domain name.
|
|
|
|
(cygheap-user::env_name): New method.
|
|
|
|
|
|
|
|
2002-06-12 Pierre Humblet <pierre.humblet@ieee.org>
|
|
|
|
|
|
|
|
* syscalls.cc (seteuid32): Do not get or set the environment. Do not
|
|
|
|
call LookupAccountSid nor internal_getlogin. Set cygheap->user name
|
|
|
|
and sid from the passwd entry.
|
|
|
|
* uinfo.cc (uinfo_init): Only call internal_getlogin when starting from
|
|
|
|
a non Cygwin process and use the values returned in user.
|
|
|
|
(internal_getlogin): Simplify to case where starting from a non Cygwin
|
|
|
|
process. Store return values in user and return void. Do not set the
|
|
|
|
Windows default environment.
|
|
|
|
* dcrt0.cc (dll_crt0_1): Call uinfo_init only when needed. Do not set
|
|
|
|
myself->uid nor reset user.sid.
|
|
|
|
* spawn.cc (spawn_guts): Get the sid from cygheap->user. Always
|
|
|
|
RevertToSelf(). Don't set uid in impersonated case.
|
|
|
|
* cygheap.cc (cygheap_user::set_sid): Do not set orig_sig.
|
|
|
|
(cygheap_user::set_orig_sid): New.
|
|
|
|
* cygheap.h: Declare cygheap_user::set_sid.
|
|
|
|
* winsup.h: Add argument to uinfo_init().
|
|
|
|
|
2002-06-14 22:08:07 +08:00
|
|
|
2002-06-14 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* environ.cc (build_env): If realloc moves envblock, move s with it.
|
|
|
|
|
2002-06-14 01:28:11 +08:00
|
|
|
2002-06-13 Nicholas S. Wourms <nwourms@netscape.net>
|
|
|
|
|
|
|
|
* winver.rc: Add more words to copyright.
|
|
|
|
|
2002-06-14 00:30:18 +08:00
|
|
|
2002-06-13 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* cygheap.cc (cygheap_user::set_name): Revert previous change.
|
|
|
|
* environ.cc (spenv::retrieve): Check return value of call to
|
|
|
|
cygheap->user.*from_cygheap().
|
|
|
|
|
2002-06-13 19:35:11 +08:00
|
|
|
2002-06-13 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* cygheap.cc (cygheap_user::set_name): Remove setting homedrive and
|
|
|
|
homepath to NULL.
|
|
|
|
(cygheap_user::set_logsrv): Fix free'ing of plogsrv.
|
|
|
|
* cygheap.h (cygheap_user::cygheap_user): Initialize homedrive and
|
|
|
|
homepath to NULL.
|
|
|
|
|
2002-06-13 13:30:49 +08:00
|
|
|
2002-06-13 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* security.cc (get_logon_server): Use strcasematch rather than
|
|
|
|
strcasecmp.
|
|
|
|
|
2002-06-13 11:04:50 +08:00
|
|
|
2002-06-12 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* path.cc (chdir): Minor cleanup.
|
|
|
|
|
2002-06-13 09:28:51 +08:00
|
|
|
2002-06-12 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* environ.cc (build_env): Correctly fill out windows environment block
|
|
|
|
with win32 paths rather than posix paths.
|
|
|
|
|
2002-06-12 13:13:54 +08:00
|
|
|
2002-06-12 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* cygheap.cc (cygheap_user::set_name): Set homedrive and homepath to
|
|
|
|
NULL on user name change.
|
|
|
|
(cygheap_user::set_logsrv): Allocate enough space for leading \\ so
|
|
|
|
that we can put this in the environment, if needed.
|
|
|
|
* cygheap.h (homebodies): New enum.
|
|
|
|
(cygheap_user::homedrive): New field.
|
|
|
|
(cygheap_user::homepath): Ditto.
|
|
|
|
(cygheap_user::env_logsrv): New method.
|
|
|
|
(cygheap_user::env_homepath): New method.
|
|
|
|
(cygheap_user::env_homedrive): New method.
|
|
|
|
(cygheap_user::env_userprofile): New method.
|
|
|
|
(cygheap_user::ontherange): New method.
|
|
|
|
* environ.cc (envsize): Eliminate debugging argument.
|
|
|
|
(environ_init): Assume that envc counts number of elments not total
|
|
|
|
size.
|
|
|
|
(spenv): New class.
|
|
|
|
(spenvs): New array, renamed from forced_winenv_vars, using spenv.
|
|
|
|
(spenv::retrieve): New method.
|
|
|
|
(build_env): Rename from 'winenv' -- one stop shopping for building new
|
|
|
|
environment blocks for both windows and "unix".
|
|
|
|
* environ.h (build_env: Declare.
|
|
|
|
(winenv): Delete declaration.
|
|
|
|
(envsize): Ditto.
|
|
|
|
* spawn.cc (spawn_guts): Use build_env to build windows and cygwin
|
|
|
|
environment blocks.
|
|
|
|
* uinfo.cc (internal_getlogin): Eliminate environment manipulation.
|
|
|
|
Default to info from GetUserName if it exists. Move HOMEPATH and
|
|
|
|
HOMEDRIVE stuff elsewhere. Move HOME setting elsewhere. Only set HOME
|
|
|
|
environment variable in processes that are not parented by a cygwin
|
|
|
|
process.
|
|
|
|
(cygheap_user::ontherange): Define new method.
|
|
|
|
(cygheap_user::env_logsrv): Ditto.
|
|
|
|
(cygheap_user::env_homepath): Ditto.
|
|
|
|
(cygheap_user::env_homedrive): Ditto.
|
|
|
|
(cygheap_user::env_userprofile): Ditto.
|
|
|
|
|
2002-06-12 00:06:16 +08:00
|
|
|
2002-06-11 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* spawn.cc (spawn_guts): More hToken removal cleanup.
|
|
|
|
|
2002-06-11 10:22:02 +08:00
|
|
|
2002-06-09 Pierre Humblet <pierre.humblet@ieee.org>
|
|
|
|
|
|
|
|
* spawn.cc (spawn_guts): Define sec_attribs and call sec_user_nih()
|
|
|
|
only once.
|
|
|
|
|
2002-06-11 10:08:00 +08:00
|
|
|
2002-06-10 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* Makefile.in: Ensure that -MD gets added to CFLAGS regardless of
|
|
|
|
CFLAGS command-line setting.
|
|
|
|
|
|
|
|
* cygwin.din: Export sexec* functions as function which returns ENOSYS
|
|
|
|
(i.e., sexec* is deprecated).
|
|
|
|
* dtable.cc (dtable::vfork_child_dup): Ensure that impersonation is
|
|
|
|
restored even on failure.
|
|
|
|
* exec.cc: Throughout, remove references to sexec* and _spawnve.
|
|
|
|
* pinfo.h: Remove _spawnve declaration.
|
|
|
|
* spawn.cc: Rename _spawnve to spawnve and use throughout.
|
|
|
|
(spawn_guts): Eliminate hToken argument and processing of same. Just
|
|
|
|
perform special actions if impersonating.
|
|
|
|
(spawnve): Rename from _spawnve.
|
|
|
|
|
2002-06-11 03:58:21 +08:00
|
|
|
2002-06-10 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* include/sys/strace.h (strace): Avoid use of constructor.
|
|
|
|
|
2002-06-11 01:08:09 +08:00
|
|
|
2002-06-10 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* dcrt0.cc (dll_crt0_1): Initialize wincap and check for sanity before
|
|
|
|
running global ctors.
|
|
|
|
* wincap.h (wincap): Eliminate constructor. Default is to zero memory,
|
|
|
|
anyway.
|
|
|
|
* wincap.cc (wincap): Copy this on fork to avoid initialization in
|
|
|
|
forked processes.
|
|
|
|
|
2002-06-10 19:07:44 +08:00
|
|
|
2002-06-10 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* fhandler.h (fhandler_socket::fixup_after_fork): Revert patch from
|
|
|
|
2002-06-04.
|
|
|
|
* fhandler_socket.cc (fhandler_socket::fixup_after_fork): Ditto.
|
|
|
|
(fhandler_socket::dup): Ditto.
|
|
|
|
* net.cc (fdsock): Make sockets explicitely noninheritable on NT.
|
|
|
|
|
2002-06-10 09:25:47 +08:00
|
|
|
2002-06-09 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler_disk_file.cc (fhandler_disk_file::fstat_helper): Correctly
|
|
|
|
set number of links for directory, if appropriate.
|
|
|
|
|
2002-06-10 10:40:13 +08:00
|
|
|
2002-06-10 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* thread.cc: Variation of a patch from Thomas Pffaf.
|
2002-06-21 13:01:56 +08:00
|
|
|
(__pthread_detach): Cleanup thread object if the thread has terminated.
|
2002-06-10 10:40:13 +08:00
|
|
|
(__pthread_join): Change order of error checks, and lock against
|
|
|
|
join/detach/exit races.
|
|
|
|
(__pthread_exit): Lock object against join/detach/exit races.
|
|
|
|
(pthread::thread_init_wrapper): Ditto.
|
|
|
|
(thread_init_wrapper): Rename to pthread::thread_init_wrapper.
|
|
|
|
(pthread::create): Check that the mutex initialized correctly.
|
|
|
|
(pthread::push_cleanup_handler): Lock against potential cancellation
|
|
|
|
race. NB: this may not be required if pthread_cleanup_push is non-
|
|
|
|
cancelable.
|
|
|
|
* thread.h (pthread::mutex): New member.
|
|
|
|
(thread_init_wrapper): Rename to pthread::thread_init_wrapper.
|
|
|
|
(pthread::thread_init_wrapper_: New static member.
|
|
|
|
|
2002-06-10 09:10:45 +08:00
|
|
|
2002-06-10 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* cygwin.din: Add _pthread_cleanup_push and _pthread_cleanup_pop.
|
|
|
|
* pthread.cc: Change __pthread_self to pthread::self() thruoghout.
|
|
|
|
(_pthread_cleanup_push): New function.
|
|
|
|
(_pthread_cleanup_pop): Ditto.
|
|
|
|
* thread.cc: Thanks to Thomas Pfaff for the pthread cleanup_push,_pop
|
|
|
|
patch, this work is derived from that.
|
|
|
|
Change __pthread_self to pthread::self() thruoghout.
|
|
|
|
(__pthread_self): Rename to pthread::self.
|
|
|
|
(pthread::self): New method.
|
|
|
|
(pthread::pthread): Initialize new member.
|
|
|
|
(pthread::push_cleanup_handler): New method.
|
|
|
|
(pthread::pop_cleanup_handler): New method.
|
|
|
|
(pthread::pop_all_cleanup_handlers): New method.
|
|
|
|
(__pthread_exit): Pop all cleanup handlers.
|
|
|
|
* thread.h (pthread::push_cleanup_handler): Declare.
|
|
|
|
(pthread::pop_cleanup_handler): Ditto.
|
|
|
|
(pthread::pop_all_cleanup_handlers): Ditto.
|
|
|
|
(pthread::self): New static method.
|
|
|
|
(__pthread_exit): Give C++ linkage.
|
|
|
|
(__pthread_join): Ditto.
|
|
|
|
(__pthread_detach): Ditto.
|
|
|
|
(__pthread_self): Remove.
|
|
|
|
|
|
|
|
2002-04-24 Thomas Pfaff <tpfaff@gmx.net>
|
|
|
|
|
2002-06-10 09:25:47 +08:00
|
|
|
* include/pthread.h (__pthread_cleanup_handler): New structure.
|
|
|
|
(pthread_cleanup_push): Rewritten.
|
2002-06-10 09:10:45 +08:00
|
|
|
(pthread_cleanup_pop): Ditto.
|
|
|
|
(_pthread_cleanup_push): New prototype.
|
2002-06-10 09:25:47 +08:00
|
|
|
(_pthread_cleanup_pop): Ditto.
|
2002-06-10 09:10:45 +08:00
|
|
|
|
|
|
|
2002-04-24 Thomas Pfaff <tpfaff@gmx.net>
|
|
|
|
|
|
|
|
* thread.cc (thread_init_wrapper): Check if thread is already joined.
|
|
|
|
(__pthread_join): Set joiner first.
|
|
|
|
(__pthread_detach): Ditto.
|
|
|
|
|
2002-06-10 07:02:00 +08:00
|
|
|
2002-06-10 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* cygserver_transport.cc (create_server_transport): Finish the split
|
|
|
|
out of sockets code from transport_layer_base. Thanks to Nicholas
|
|
|
|
Wourms and Conrad Scott for catching this.
|
|
|
|
|
2002-06-09 11:54:07 +08:00
|
|
|
2002-06-08 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* pinfo.cc (pinfo_dummy): Initialize to correct size.
|
|
|
|
|
2002-06-09 08:48:38 +08:00
|
|
|
2002-06-08 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* path.cc: Change MOUNT_AUTO to MOUNT_CYGDRIVE throughout.
|
|
|
|
* shared_info.h (CURR_MOUNT_MAGIC): Update.
|
|
|
|
|
2002-06-09 08:31:03 +08:00
|
|
|
2002-06-08 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* external.cc (cygwin_internal): Make v1 mount table access invalid.
|
|
|
|
* path.cc (mount_info::init): Remove had_to_create_mount_areas initialization.
|
|
|
|
(mount_info::from_registry): Remove v1 table import.
|
|
|
|
(mount_info::read_v1_mounts): Eliminate.
|
|
|
|
(mount_info::import_v1_mounts): Ditto.
|
|
|
|
* shared_info.h (mount_info): Ditto for both of above.
|
|
|
|
* sys/mount.h (MOUNT_DEVFS): New enum.
|
|
|
|
(MOUNT_PROC): Ditto.
|
|
|
|
|
2002-06-09 00:55:47 +08:00
|
|
|
2002-06-08 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* include/wchar.h: Define __need_size_t.
|
|
|
|
|
2002-06-08 09:24:58 +08:00
|
|
|
2002-06-07 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler_socket.cc (fhandler_socket::fstat): Don't assume that socket
|
|
|
|
is unix-domain socket.
|
|
|
|
|
|
|
|
2002-06-07 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* times.cc (hires_ms::prime): Set init flag.
|
|
|
|
|
|
|
|
2002-06-07 Conrad Scott <conrad.scott@dsl.pipex.com>
|
|
|
|
|
|
|
|
* times.cc (hires_ms::prime): Adjust epoch of initime_us from 1601 to
|
|
|
|
1970.
|
|
|
|
|
2002-06-07 11:44:33 +08:00
|
|
|
2002-06-06 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* autoload.cc (timeGetDevCaps): Define new autoload function.
|
|
|
|
(timeGetTime): Ditto.
|
|
|
|
(timeBeginPeriod): Ditto.
|
|
|
|
(timeEndPeriod): Ditto.
|
|
|
|
* hires.h (hires_base): New class. Renamed from hires.
|
|
|
|
(hires_us): New class.
|
|
|
|
(hires_ms): New class.
|
|
|
|
* strace.cc (strace::microseconds): Use hires_us class.
|
|
|
|
* times.cc (gettimeofday): Use hires-ms class.
|
|
|
|
(hires_us::prime): Renamed from hires::prime.
|
|
|
|
(hires_us::usecs): Renamed from hires:usecs.
|
|
|
|
(hires_ms::prime): New method.
|
|
|
|
(hires_ms::usecs): New method.
|
|
|
|
(hires_ms::~hires_ms): New destructor.
|
|
|
|
|
2002-06-07 07:53:45 +08:00
|
|
|
2002-06-06 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* autoload.cc (noload): Correctly save argument count register.
|
|
|
|
|
2002-06-06 23:35:09 +08:00
|
|
|
2002-06-05 Conrad Scott <conrad.scott@dsl.pipex.com>
|
|
|
|
|
|
|
|
* fhandler.cc (fhandler_base::fstat): Initialise tv_nsec member of
|
|
|
|
st_atim, st_mtim, and st_ctim fields.
|
|
|
|
* fhandler_disk_file.cc (fhandler_disk_file::fstat_helper): Ditto.
|
|
|
|
* fhandler_process.cc (fhandler_process::fstat): Ditto.
|
2002-06-07 07:53:45 +08:00
|
|
|
* glob.c (stat32_to_STAT): Copy across the whole st_atim, st_mtime, and
|
|
|
|
st_ctim fields.
|
2002-06-06 23:35:09 +08:00
|
|
|
* syscalls.cc (stat64_to_stat32): Ditto.
|
|
|
|
* times.cc (to_timestruc_t): New function.
|
|
|
|
(time_as_timestruc_t): New function.
|
|
|
|
* winsup.h: Add to_timestruc_t and time_as_timestruc_t functions.
|
2002-06-07 07:53:45 +08:00
|
|
|
* include/cygwin/stat.h: Replace time_t with timestruc_t throughout for
|
|
|
|
all file times, removing the st_spare1, st_spare2, and st_spare3 fields
|
|
|
|
in the process. Add macros to access tv_sec fields by old names.
|
|
|
|
* include/cygwin/types.h: Typedef timespec_t and timestruc_t as struct
|
|
|
|
timespec.
|
2002-06-06 23:35:09 +08:00
|
|
|
|
2002-06-06 19:17:51 +08:00
|
|
|
2002-06-03 Pierre Humblet <pierre.humblet@ieee.org>
|
|
|
|
|
|
|
|
* sec_helper.cc (lookup_name): Suppress.
|
|
|
|
* security.cc (alloc_sd): Remove logsrv argument.
|
|
|
|
Remove two calls to lookup_name.
|
|
|
|
(set_security_attribute): Remove logsrv argument.
|
|
|
|
Remove logsrv argument in call to alloc_sd.
|
|
|
|
(set_nt_attribute): Remove logsrv argument.
|
|
|
|
Remove logsrv argument in call to set_security_attribute.
|
|
|
|
(set_file_attribute): Remove logsrv argument.
|
|
|
|
Remove logsrv argument in call to set_nt_attribute.
|
|
|
|
(set_file_attribute): Remove logsrv argument.
|
|
|
|
Remove logsrv argument in call to set_file_attribute.
|
|
|
|
* syscalls.cc (chown_worker): Remove logserver argument in
|
|
|
|
call to set_file_attribute.
|
|
|
|
(chmod): Ditto.
|
|
|
|
* shm.cc (shmget): Remove logsrv argument in call to alloc_sd.
|
|
|
|
* uinfo.cc (internal_getlogin): Replace calls to
|
|
|
|
lookup_name by call to LookupAccountName.
|
|
|
|
* security.h: Remove logsrv in declarations of set_file_attribute
|
|
|
|
and alloc_sd. Remove declaration of lookup_name.
|
|
|
|
|
2002-06-06 09:49:56 +08:00
|
|
|
2002-06-05 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* child_info.h (CHILD_INFO_MAGIC): Oops. Revert previous change. gcc
|
|
|
|
3.1 bug?
|
|
|
|
|
2002-06-06 09:31:16 +08:00
|
|
|
2002-06-05 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* child_info.h (CHILD_INFO_MAGIC): Update.
|
|
|
|
|
2002-06-06 09:26:33 +08:00
|
|
|
2002-06-05 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* strace.cc (strace::hello): Set inited, when appropriate.
|
|
|
|
|
2002-06-06 08:09:55 +08:00
|
|
|
2002-06-05 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* cygwin.din: Eliminate some newlib wrappers.
|
|
|
|
* path.cc (get_devn): Only consider first 99 potential com devices.
|
|
|
|
(get_device_number): Ditto.
|
|
|
|
* times.cc (_times): Eliminate.
|
|
|
|
(_times): Renamed from times().
|
|
|
|
|
2002-06-06 00:01:55 +08:00
|
|
|
2002-06-05 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* dir.cc (rmdir): Streamline. Detect attempts to remove directories
|
|
|
|
from "read-only" virtual devices. (Suggested by Pavel Tsekov)
|
2002-06-07 07:53:45 +08:00
|
|
|
* syscalls.cc (unlink): Detect attempts to remove directories from
|
|
|
|
"read-only" virtual devices. (From Pavel Tsekov)
|
2002-06-06 00:01:55 +08:00
|
|
|
|
2002-06-05 23:43:49 +08:00
|
|
|
2002-06-05 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* dtable.cc (handle_to_fn): Check error return value from NtQueryObject
|
|
|
|
first before seeing if name buffer is NULL.
|
|
|
|
|
|
|
|
* grp.cc (read_etc_group): Fix gcc warning regarding snprintf format.
|
|
|
|
* passwd.cc (read_etc_passwd): Ditto.
|
|
|
|
|
2002-06-05 20:39:55 +08:00
|
|
|
2002-04-18 Thomas Pfaff <tpfaff@gmx.net>
|
|
|
|
|
|
|
|
* thread.h (pthread::joiner): New member.
|
|
|
|
* thread.cc (pthread::pthread): Initialize joiner to NULL
|
|
|
|
(pthread::create): Increment of thread counter moved from
|
|
|
|
__pthread_create to this location.
|
|
|
|
(__pthread_create): Increment thread counter removed.
|
|
|
|
(thread_init_wrapper): Set joiner to self when thread was created
|
|
|
|
detached.
|
|
|
|
(__pthread_exit): delete thread when it is detached and not
|
|
|
|
joined.
|
|
|
|
(__pthread_join): Check for deadlock and delete thread when it has
|
|
|
|
terminated.
|
|
|
|
(__pthread_detach): Set joiner to self when thread state
|
|
|
|
changed to detached.
|
|
|
|
|
2002-06-05 19:56:56 +08:00
|
|
|
2002-06-05 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* grp.cc (read_etc_group): When emulating nonexisting group file on
|
|
|
|
NT systems, read primary group SID from process token. Use that info
|
|
|
|
to create correct group entry. On error or on 9x systems fallback
|
|
|
|
to emulating Administrators group as before.
|
2002-06-06 16:37:24 +08:00
|
|
|
* passwd.cc (read_etc_passwd): When emulating nonexisting passwd file
|
2002-06-07 07:53:45 +08:00
|
|
|
on NT systems, read user and primary group SID from process token.
|
2002-06-06 16:37:24 +08:00
|
|
|
Use that info to create correct passwd entry. On error or on 9x
|
|
|
|
systems fallback to emulating user with Administrator user id and
|
|
|
|
Administrators group as before.
|
2002-06-05 19:56:56 +08:00
|
|
|
|
2002-06-05 19:10:15 +08:00
|
|
|
2002-06-05 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* grp.cc (etc_group): Removed.
|
|
|
|
(parse_grp): Make line parameter nonconst. Don't copy data into new
|
|
|
|
allocated memory. Check for CR instead of LF to accomodate new
|
|
|
|
read method.
|
|
|
|
(add_grp_line): Make line parameter nonconst.
|
|
|
|
(read_etc_group): Rearrange using new pwdgrp_read class.
|
|
|
|
* passwd.cc (parse_pwd): Don't copy data into new allocated memory.
|
|
|
|
Check for CR instead of LF to accomodate new read method.
|
|
|
|
(read_etc_passwd): Rearrange using new pwdgrp_read class.
|
|
|
|
* pwdgrp.h (pwdgrp_check::set_last_modified): Use different
|
|
|
|
parameters.
|
|
|
|
(class pwdgrp_read): New class for opening and reading passwd and
|
|
|
|
group files.
|
|
|
|
|
2002-06-05 12:01:43 +08:00
|
|
|
2002-06-04 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* dtable.cc (handle_to_fn): Attempt to handle "raw" accesses to remote
|
|
|
|
shares.
|
|
|
|
* path.cc (mount_info::conv_to_win32_path): Set flags to binary when
|
|
|
|
mount entry is not found.
|
|
|
|
(mount_info::set_flags_from_win32_path): Ditto.
|
|
|
|
|
2002-06-05 10:42:15 +08:00
|
|
|
2002-06-04 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* dtable.cc (handle_to_fn): Correct placement and length of name
|
2002-06-06 00:01:55 +08:00
|
|
|
buffer. (Suggested by Pavel Tsekov)
|
2002-06-05 10:42:15 +08:00
|
|
|
|
2002-06-05 09:42:28 +08:00
|
|
|
2002-06-04 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
Remove fcntl.h includes throughout.
|
|
|
|
* fhandler.h: Move fcntl.h include here.
|
|
|
|
(fhandler_base::set_flags): Accept supplied_bin argument. Make
|
|
|
|
non-inlined.
|
|
|
|
* dtable.cc (dtable::init_std_file_from_handle): Just use binmode from
|
|
|
|
pc.
|
|
|
|
(reset_to_open_binmode): Use set_flags.
|
|
|
|
* cygwin.din (open): Avoid newlib wrapper.
|
|
|
|
(read): Ditto.
|
|
|
|
(unlink): Ditto.
|
|
|
|
(write): Ditto.
|
|
|
|
* fhandler.cc (fhandler_base::set_flags): Accept supplied_bin argument.
|
|
|
|
Make binmode decisions here.
|
|
|
|
(fhandler_base::open): Avoid using pc if it is NULL. Eliminate binmode
|
|
|
|
logic. Just call set_flags with binmode argument.
|
|
|
|
(fhandler_base::init): Call set_flags with binmode argument.
|
|
|
|
* fhandler_clipboard.cc (fhandler_dev_clipboard::open): Ditto.
|
|
|
|
* fhandler_console.cc (fhandler_console::open): Ditto.
|
|
|
|
(fhandler_console::init): Force binary on open.
|
|
|
|
* fhandler_disk_file.cc (fhandler_disk_file::open): Don't set binmode
|
|
|
|
here. Let it happen in base class.
|
|
|
|
* fhandler_dsp.cc (fhandler_dev_dsp::open): Force binmode open. Set
|
|
|
|
return value appropriately if unable to open.
|
|
|
|
* fhandler_proc.cc (fhandler_proc::open): Make sure flags are set
|
|
|
|
before open_status.
|
|
|
|
* fhandler_process.cc (fhandler_process::open): Ditto.
|
|
|
|
* fhandler_registry.cc (fhandler_registry::open): Ditto.
|
|
|
|
* fhandler_random.cc (fhandler_dev_random::fhandler_dev_random): Ditto.
|
|
|
|
* fhandler_raw.cc (fhandler_dev_raw::open): Force O_BINARY by default.
|
|
|
|
* fhandler_serial.cc (fhandler_serial::init): Ditto.
|
|
|
|
* fhandler_tty.cc (fhandler_tty_slave::open): Ditto.
|
|
|
|
(fhandler_pty_master::open): Ditto.
|
|
|
|
* fhandler_virtual.cc (fhandler_virtual::open): Ditto.
|
|
|
|
* fhandler_windows.cc (fhandler_windows::open): Ditto.
|
|
|
|
* fhandler_zero.cc (fhandler_dev_zero::open): Ditto.
|
|
|
|
* net.cc (fdsock): Ditto.
|
|
|
|
* path.cc (path_conv::check): Avoid checking for executable extension
|
|
|
|
when directory. (Suggested by Pavel Tsekov)
|
|
|
|
(set_flags): Set PATH_TEXT explicitly, when appropriate.
|
|
|
|
(mount_info::conv_to_win32_path): Use set_flags() to set path flags.
|
|
|
|
* path.h (PATH_TEXT): New enum.
|
|
|
|
(path_conv::binmode): Return appropriate constant based on binmode.
|
|
|
|
* pipe.cc (make_pipe): Set binmode to O_TEXT xor O_BINARY.
|
|
|
|
* syscalls.cc (setmode_helper): Make debugging message a little
|
|
|
|
clearer.
|
|
|
|
(setmode): Set binmode via set_flags.
|
|
|
|
|
2002-06-05 00:38:13 +08:00
|
|
|
2002-06-04 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* fhandler.h (class fhandler_socket): Add private method
|
|
|
|
fixup_after_fork (bool, HANDLE).
|
|
|
|
* fhandler_socket.cc (fhandler_socket::fixup_after_fork): Move
|
|
|
|
functionality to new private method. Add closing parent socket
|
|
|
|
if not called from dup(). Create method new calling private method
|
|
|
|
with appropriate parameter.
|
|
|
|
(fhandler_socket::fixup_after_exec): Call private method
|
|
|
|
fixup_after_fork with appropriate parameter.
|
|
|
|
(fhandler_socket::dup): Ditto.
|
|
|
|
|
|
|
|
2002-06-04 Corinna Vinschen <corinna@vinschen.de>
|
2002-06-04 19:18:46 +08:00
|
|
|
|
|
|
|
* fhandler_dsp.cc (fhandler_dev_dsp::open): Set errno to EACCES if
|
|
|
|
requested mode isn't supported.
|
|
|
|
|
2002-06-04 09:40:53 +08:00
|
|
|
2002-06-03 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler.cc (fhandler_base::open): Don't set binmode if already set.
|
|
|
|
Don't check for file. Files should already be set. Report on binary
|
|
|
|
mode for debugging.
|
|
|
|
(fhandler_base::fhandler_base): Don't set default binmode here. That's
|
|
|
|
for later.
|
|
|
|
* fhandler_console.cc (fhandler_console::output_tcsetattr): Don't set
|
|
|
|
binmode, ever, for console.
|
|
|
|
* fhandler_disk_file.cc (fhandler_disk_file::open): Always set the
|
|
|
|
binary mode to the value derived from mount table.
|
|
|
|
* path.cc (mount_info::conv_to_win32_path): Default to binmode if path
|
|
|
|
does not translate into anything in the mount table.
|
|
|
|
|
2002-06-04 01:56:10 +08:00
|
|
|
2002-06-03 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* external.cc (cygwin_internal): Add CW_EXTRACT_DOMAIN_AND_USER
|
|
|
|
handling to call extract_nt_dom_user() from applications.
|
|
|
|
* include/sys/cygwin.h (cygwin_getinfo_types): Add
|
|
|
|
CW_EXTRACT_DOMAIN_AND_USER.
|
|
|
|
|
2002-06-04 01:44:09 +08:00
|
|
|
2002-06-03 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* syscalls.cc (stat64_to_stat32): Transform st_dev correctly.
|
|
|
|
(fstat64): Add evaluating st_ino and st_dev.
|
|
|
|
(stat_worker): Evaluate st_dev as 32 bit value.
|
|
|
|
* include/cygwin/stat.h: Use new dev_t definition throughout.
|
|
|
|
* include/cygwin/types.h: Define __dev16_t and __dev32_t. Define
|
|
|
|
dev_t according to __CYGWIN_USE_BIG_TYPES__ setting.
|
|
|
|
* include/sys/sysmacros.h: Define major, minor and makedev
|
|
|
|
according to __CYGWIN_USE_BIG_TYPES__ setting.
|
|
|
|
|
2002-06-04 01:11:14 +08:00
|
|
|
2002-06-03 Pierre Humblet <pierre.humblet@ieee.org>
|
|
|
|
|
|
|
|
* syscalls.cc (setegid32): Verify the correctness of the gid
|
|
|
|
of the group returned by getgrgid32.
|
|
|
|
|
2002-06-04 01:04:03 +08:00
|
|
|
2002-06-03 Pierre Humblet <pierre.humblet@ieee.org>
|
|
|
|
|
|
|
|
* security.cc (lsa2wchar): Suppressed.
|
|
|
|
(get_lsa_srv_inf): Suppressed.
|
|
|
|
(get_logon_server_and_user_domain): Suppressed.
|
|
|
|
(get_logon_server): Essentially new.
|
|
|
|
(get_user_groups): Add "domain" argument. Only lookup the
|
|
|
|
designated server and use "domain" in LookupAccountName.
|
|
|
|
(is_group_member): Simplify the arguments.
|
|
|
|
(get_user_local_groups): Simplify the arguments. Do only a
|
|
|
|
local lookup. Use "BUILTIN" and local domain in LookupAccountName.
|
|
|
|
(get_user_primary_group). Only lookup the designated server.
|
|
|
|
(get_group_sidlist): Remove logonserver argument. Do not lookup
|
|
|
|
any server for the SYSTEM account.
|
|
|
|
(create_token): Delete logonserver and call to get_logon_server.
|
|
|
|
Adjust arguments of get_group_sidlist, see above.
|
|
|
|
* security.h: Delete declaration of get_logon_server_and_user_domain
|
2002-06-05 09:42:28 +08:00
|
|
|
and add declaration of get_logon_server.
|
2002-06-04 01:04:03 +08:00
|
|
|
* uinfo.cc (internal_get_login): Call get_logon_server instead of
|
|
|
|
get_logon_server_and_user_domain.
|
|
|
|
|
2002-06-03 01:48:05 +08:00
|
|
|
2002-06-02 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
2002-06-05 09:42:28 +08:00
|
|
|
* dtable.cc (handle_to_fn): Use largest match for device. Correctly
|
|
|
|
(?) deal with remote drive weirdness.
|
2002-06-03 01:48:05 +08:00
|
|
|
|
2002-06-03 00:53:29 +08:00
|
|
|
2002-06-02 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler_disk_file.cc (fhandler_disk_file::fstat_by_name): Check
|
|
|
|
specifically for non-existent file, first.
|
|
|
|
(fhandler_disk_file::fstat): Perform fd open on files with funny
|
|
|
|
characters.
|
|
|
|
|
2002-06-03 00:42:02 +08:00
|
|
|
2002-06-02 Christopher January <chris@atomice.net>
|
|
|
|
|
|
|
|
* fhandler_process.cc (fhandler_process::open): Set fileid.
|
|
|
|
|
2002-06-02 14:07:01 +08:00
|
|
|
2002-06-02 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
Remove unneeded sigproc.h includes throughout.
|
|
|
|
* fhandler.h (fhandler_proc::fill_filebuf): Take a pinfo argument.
|
|
|
|
* fhandler_proc.cc (fhandler_proc::get_proc_fhandler): Simplify search
|
|
|
|
for given pid.
|
|
|
|
(fhandler_proc::readdir): Assume that pid exists if it shows up in the
|
|
|
|
winpid list.
|
|
|
|
* fhandler_process.cc (fhandler_process::open): Simplify search for
|
|
|
|
given pid. Call fill_filebuf with pinfo argument.
|
|
|
|
(fhandler_process::fill_filebuf): Pass pinfo here and assume that it
|
|
|
|
exists.
|
|
|
|
* pinfo.h (pinfo::remember): Define differently if sigproc.h is not
|
|
|
|
included.
|
|
|
|
|
|
|
|
2002-06-02 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* dll_init.cc (dll_list::detach): Don't run destructor on exit.
|
|
|
|
|
2002-06-02 11:13:22 +08:00
|
|
|
2002-06-01 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler.cc (fhandler_base::fstat): Move dev and ino calculation into
|
|
|
|
caller.
|
|
|
|
* syscalls.cc (stat_worker): Calculate dev and ino calculation here, if
|
|
|
|
zero.
|
|
|
|
* fhandler_proc.cc (fhandler_proc::fhandler_proc): Minor reorg for
|
|
|
|
debugging.
|
|
|
|
* fhandler_process.cc (fhandler_process::exists): Return 0 on
|
|
|
|
nonexistence.
|
|
|
|
(fhandler_process::fstat): Simplify pid logic.
|
|
|
|
* fhandler_tape.cc (fhandler_dev_tape::fstat): Minor reformatting.
|
|
|
|
|
2002-06-02 02:20:51 +08:00
|
|
|
2002-06-01 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* path.cc (chdir): Don't allow cd'ing to a non-directory virtual path.
|
|
|
|
|
2002-06-01 10:45:38 +08:00
|
|
|
2002-05-31 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler_disk_file.cc (readdir): Move inode calculation into caller.
|
|
|
|
(fhandler_cygdrive::readdir): Add "." and "..".
|
|
|
|
* dir.cc (readdir): Move inode calculation here so that fhandler
|
|
|
|
readdirs can benefit.
|
|
|
|
|
2002-06-01 06:53:25 +08:00
|
|
|
2002-05-31 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler_console.cc (fhandler_console::open): Reinstate setting of
|
|
|
|
flags.
|
|
|
|
|
2002-06-01 06:59:57 +08:00
|
|
|
* dtable.cc (dtable::init_std_file_from_handle): Default to using
|
|
|
|
binmode derived from path_conv, when required.
|
|
|
|
* fhandler.h (fhandler_base::get_w_binary): Default to binmode if
|
|
|
|
nothing else is specified.
|
|
|
|
* fhandler.h (fhandler_base::get_r_binary): Ditto.
|
|
|
|
|
|
|
|
* fhandler_disk_file.cc (fhandler_disk_file::fstat_by_handle): Work
|
|
|
|
around g++ warning.
|
|
|
|
|
|
|
|
* path.cc (path_conv::check): Remove a debugging statement.
|
|
|
|
|
2002-06-01 06:35:57 +08:00
|
|
|
2002-05-31 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler_console.cc (fhandler_console::open): Always default to
|
|
|
|
binmode.
|
|
|
|
(fhandler_console::write_normal): Don't honor binmode setting. There
|
|
|
|
is already a termios setting for this.
|
|
|
|
(fhandler_console::init): Correct argument order in init call.
|
|
|
|
|
2002-06-01 04:48:14 +08:00
|
|
|
2002-05-31 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler.cc (fhandler_base::open): Make default open mode == binmode.
|
|
|
|
(fhandler_base::init): Set open flags based on derived binmode argument.
|
|
|
|
|
2002-06-01 04:34:40 +08:00
|
|
|
2002-05-31 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* dll_init.cc (dll_list::init): Eliminate unneeded debugging statement.
|
|
|
|
|
2002-06-01 04:30:36 +08:00
|
|
|
2002-05-31 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler_proc.cc (fhandler_proc::readdir): Set errno when no more
|
|
|
|
files.
|
|
|
|
* fhandler_process.cc (fhandler_process::readdir): Ditto.
|
|
|
|
* fhandler_registry.cc (fhandler_registry::readdir): Ditto.
|
|
|
|
|
2002-05-31 11:11:21 +08:00
|
|
|
2002-05-30 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* path.cc (path_conv::check): Set fileattr to INVALID_FILE_ATTRIBUTES
|
|
|
|
for nonexistent virtual device path.
|
|
|
|
(chdir): Set correct errno when attempt is made to cd to nonexistent
|
|
|
|
virtual device path.
|
|
|
|
|
2002-05-31 08:15:22 +08:00
|
|
|
2002-05-30 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler_disk_file.cc (fhandler_disk_file::fstat): Always call
|
|
|
|
fstat_by_name if fd is not opened to allow fstat_by_name to properly
|
|
|
|
set errno.
|
|
|
|
|
2002-05-30 15:45:30 +08:00
|
|
|
2002-05-30 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* autoload.cc: Replace autoload statments for ZwXXX by NtXXX.
|
|
|
|
Drop ZwQuerySystemInformation since NtQuerySystemInformation was
|
|
|
|
already available.
|
|
|
|
* fhandler_proc.cc (format_proc_uptime): Replace call to
|
|
|
|
ZwQuerySystemInformation by call to NtQuerySystemInformation.
|
|
|
|
(format_proc_stat): Ditto.
|
|
|
|
* fhandler_process.cc (format_process_stat): Replace call to
|
|
|
|
ZwQueryInformationProcess by call to NtQueryInformationProcess.
|
|
|
|
(get_process_state): Ditto.
|
|
|
|
(get_mem_values): Ditto. Replace call to ZwQueryVirtualMemory by
|
|
|
|
call to NtQueryVirtualMemory.
|
|
|
|
* ntdll.h: Cleanup. Drop ZwQuerySystemInformation since
|
|
|
|
NtQuerySystemInformation was already available. Replace declarations
|
|
|
|
of ZwXXX functions by declarations of NtXXX.
|
|
|
|
* pinfo.cc (winpids::enumNT): Replace call to ZwQuerySystemInformation
|
|
|
|
by call to NtQuerySystemInformation.
|
|
|
|
|
2002-05-31 08:15:22 +08:00
|
|
|
2002-05-29 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler.cc (binmode): Default to binmode when mode is not known.
|
|
|
|
|
2002-05-30 05:00:55 +08:00
|
|
|
2002-05-29 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* include/sys/cygwin.h (EXTERNAL_PINFO_VERSION): Reinstate.
|
|
|
|
* external.cc (fillout_pinfo): Use it.
|
|
|
|
|
2002-05-30 04:07:54 +08:00
|
|
|
2002-05-29 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* external.cc (fillout_pinfo): Use new version define.
|
|
|
|
* include/sys/cygwin.h (external_pinfo): Define
|
|
|
|
EXTERNAL_PINFO_VERSION_16_BIT and EXTERNAL_PINFO_VERSION_32_BIT
|
|
|
|
instead of just EXTERNAL_PINFO_VERSION.
|
|
|
|
|
2002-05-30 01:12:07 +08:00
|
|
|
2002-05-29 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* external.cc (fillout_pinfo): Set new version field in external_pinfo
|
|
|
|
structure.
|
|
|
|
* include/sys/cygwin.h (external_pinfo): Replace strace_file with
|
|
|
|
version field.
|
|
|
|
|
2002-05-29 23:04:29 +08:00
|
|
|
2002-05-29 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
Change internal uid datatype from __uid16_t to __uid32_t
|
|
|
|
throughout.
|
|
|
|
* cygwin.din: Export new symbols getpwuid32, getpwuid_r32, getuid32,
|
|
|
|
geteuid32, setuid32, seteuid32.
|
|
|
|
* passwd.cc (getpwuid32): New function.
|
|
|
|
(getpwuid_r32): Ditto.
|
|
|
|
* syscalls.cc (seteuid32): Ditto.
|
|
|
|
(setuid32): Ditto.
|
|
|
|
* uinfo.cc (getuid32): Ditto.
|
|
|
|
(geteuid32): Ditto.
|
2002-05-30 11:14:04 +08:00
|
|
|
* winsup.h (uid16touid32): New macro, correct casting from __uid16_t
|
2002-05-29 23:04:29 +08:00
|
|
|
to __uid32_t.
|
|
|
|
(gid16togid32): Ditto fir gids.
|
|
|
|
(getuid32): Declare.
|
|
|
|
(geteuid32): Ditto.
|
|
|
|
(getpwuid32): Ditto.
|
|
|
|
* include/sys/cygwin.h (struct external_pinfo): Add members uid32 and
|
|
|
|
gid32.
|
|
|
|
|
2002-05-29 15:38:54 +08:00
|
|
|
2002-05-29 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* include/cygwin/socket.h: Protect some symbols against multiple
|
|
|
|
definition.
|
|
|
|
* include/netinet/ip.h: Ditto.
|
|
|
|
* include/netinet/tcp.h: Ditto.
|
|
|
|
|
|
|
|
2002-05-29 Wu Yongwei <adah@netstd.com>
|
|
|
|
|
|
|
|
* include/netinet/ip.h: Replace by BSD derived version of the file.
|
|
|
|
* include/netinet/tcp.h: Ditto.
|
|
|
|
* include/netinet/udp.h: New file.
|
|
|
|
* include/cygwin/ip.h: Remove.
|
|
|
|
|
2002-05-29 13:15:43 +08:00
|
|
|
2002-05-29 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* dtable.cc (dtable::init_std_file_from_handle): Attempt stronger
|
|
|
|
detection of invalid handle.
|
|
|
|
(handle_to_fn): Detect pathological condition where NT resets the
|
|
|
|
buffer pointer to NULL on an invalid handle.
|
|
|
|
|
2002-05-29 11:06:37 +08:00
|
|
|
2002-05-28 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler_disk_file.cc (fhandler_disk_file::fstat_helper): Properly
|
|
|
|
check for whether we should be opening the file to search for #!
|
2002-05-29 11:42:12 +08:00
|
|
|
characters. Set path_conv structure execability, too, when
|
|
|
|
appropriate.
|
2002-05-29 11:06:37 +08:00
|
|
|
|
2002-05-28 22:58:13 +08:00
|
|
|
2002-05-28 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* security.cc (set_security_attribute): Call getegid32() instead of
|
|
|
|
getegid().
|
|
|
|
* include/cygwin/grp.h: Declare getegid32().
|
|
|
|
|
Change internal gid datatype from __gid16_t to __gid32_t
throughout.
* cygwin.din: Export new symbols chown32, fchown32, getegid32,
getgid32, getgrgid32, getgrnam32, getgroups32, initgroups32, lchown32,
setgid32, setegid32, getgrent32.
* grp.cc (grp32togrp16): New static function.
(getgrgid32): New function.
(getgrnam32): Ditto.
(getgrent32): Ditto.
(getgroups32): Change name of internal function from getgroups.
(getgroups32): New function.
(initgroups32): Ditto.
* syscalls.cc (chown32): Ditto.
(lchown32): Ditto.
(fchown32): Ditto.
(setegid32): Ditto.
(setgid32): Ditto.
* uinfo.cc (getgid32): Ditto.
(getegid32): Ditto.
* include/cygwin/grp.h: Remove declaration of getgrgid() and getgrnam().
Declare getgrgid32() and getgrnam32() instead. Declare getgid32().
2002-05-28 22:10:55 +08:00
|
|
|
2002-05-28 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
Change internal gid datatype from __gid16_t to __gid32_t
|
|
|
|
throughout.
|
|
|
|
* cygwin.din: Export new symbols chown32, fchown32, getegid32,
|
|
|
|
getgid32, getgrgid32, getgrnam32, getgroups32, initgroups32, lchown32,
|
|
|
|
setgid32, setegid32, getgrent32.
|
|
|
|
* grp.cc (grp32togrp16): New static function.
|
|
|
|
(getgrgid32): New function.
|
|
|
|
(getgrnam32): Ditto.
|
|
|
|
(getgrent32): Ditto.
|
|
|
|
(getgroups32): Change name of internal function from getgroups.
|
|
|
|
(getgroups32): New function.
|
|
|
|
(initgroups32): Ditto.
|
|
|
|
* syscalls.cc (chown32): Ditto.
|
|
|
|
(lchown32): Ditto.
|
|
|
|
(fchown32): Ditto.
|
|
|
|
(setegid32): Ditto.
|
|
|
|
(setgid32): Ditto.
|
|
|
|
* uinfo.cc (getgid32): Ditto.
|
|
|
|
(getegid32): Ditto.
|
|
|
|
* include/cygwin/grp.h: Remove declaration of getgrgid() and getgrnam().
|
|
|
|
Declare getgrgid32() and getgrnam32() instead. Declare getgid32().
|
|
|
|
|
2002-05-28 10:09:15 +08:00
|
|
|
2002-05-27 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* autoload.cc (noload): Properly mask low order word for determining
|
|
|
|
number of bytes to pop.
|
|
|
|
|
2002-05-28 10:00:55 +08:00
|
|
|
2002-05-27 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler_disk_file.cc (fhandler_disk_file::fstat): Minor logic
|
|
|
|
cleanup.
|
|
|
|
|
2002-05-28 09:55:40 +08:00
|
|
|
2002-05-27 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* autoload.cc (LoadFuncEx): Define via new LoadFuncEx2 macro.
|
|
|
|
(LoadFuncEx2): Adapted from LoadFuncEx. Provides control of return
|
|
|
|
value for nonexistent function.
|
|
|
|
(NtQueryObject): Declare.
|
|
|
|
(IsDebuggerPresent): Declare via LoadFuncEx2 and always return true if
|
|
|
|
not available.
|
|
|
|
* debug.h (being_debugged): Just rely on IsDebuggerPresent return
|
|
|
|
value.
|
|
|
|
* dtable.cc (handle_to_fn): New function.
|
|
|
|
(dtable::init_std_file_from_handle): Attempt to derive std handle's
|
|
|
|
name via handle_to_fn.
|
|
|
|
(dtable::build_fhandler_from_name): Fill in what we can in path_conv
|
|
|
|
structure when given a handle and path doesn't exist.
|
|
|
|
* fhandler.cc (fhandler_base::open): Don't set the file pointer here.
|
|
|
|
Use pc->exists () to determine if file exists rather than calling
|
|
|
|
GetFileAttributes again.
|
|
|
|
* fhandler.h (fhandler_base::exec_state_isknown): New method.
|
|
|
|
(fhandler_base::fstat_helper): Add extra arguments to declaration.
|
|
|
|
(fhandler_base::fstat_by_handle): Declare new method.
|
|
|
|
(fhandler_base::fstat_by_name): Declare new method.
|
|
|
|
* fhandler_disk_file (num_entries): Make __stdcall.
|
|
|
|
(fhandler_base::fstat_by_handle): Define new method.
|
|
|
|
(fhandler_base::fstat_by_name): Define new method.
|
|
|
|
(fhandler_base:fstat): Call fstat_by_{handle,name} as appropriate.
|
|
|
|
(fhandler_disk_file::fstat_helper): Accept extra arguments for filling
|
|
|
|
out stat structure. Move handle or name specific stuff to new methods
|
|
|
|
above.
|
|
|
|
(fhandler_disk_file::open): Use real_path->exists rather than calling
|
|
|
|
GetFileAttributes again.
|
|
|
|
* ntdll.h (FILE_NAME_INFORMATION): Define new structure.
|
|
|
|
(OBJECT_INFORMATION_CLASS): Partially define new enum.
|
|
|
|
(OBJECT_NAME_INFORMATION): Define new structure.
|
|
|
|
(NtQueryInformationFile): New declaration.
|
|
|
|
(NtQueryObject): New declaration.
|
|
|
|
* path.cc (path_conv::fillin): Define new method.
|
|
|
|
* path.h (path_conv::fillin): Declare new method.
|
|
|
|
(path_conv::drive_thpe): Rename from 'get_drive_type'.
|
|
|
|
(path_conv::volser): Declare new method.
|
|
|
|
(path_conv::volname): Declare new method.
|
|
|
|
(path_conv::root_dir): Declare new method.
|
|
|
|
* syscalls.cc (fstat64): Send real path_conv to fstat as second
|
|
|
|
argument.
|
|
|
|
|
2002-05-27 19:58:49 +08:00
|
|
|
2002-05-24 Pierre Humblet <pierre.humblet@ieee.org>
|
|
|
|
|
|
|
|
* security.cc (lsa2str): New function.
|
|
|
|
(get_priv_list): Call lsa2str instead of sys_wcstombs.
|
|
|
|
|
2002-05-27 19:48:15 +08:00
|
|
|
2002-05-22 Pierre Humblet <pierre.humblet@ieee.org>
|
|
|
|
|
|
|
|
* syscalls.cc (seteuid): Do not take allow_ntsec into account.
|
|
|
|
Attempt to use an existing or new token even when the uid
|
|
|
|
matches orig_uid, but the gid is not in the process token.
|
|
|
|
Major reorganization after several incremental changes.
|
|
|
|
(setegid): Do not take allow_ntsec into account. Minor
|
|
|
|
reorganization after several incremental changes.
|
|
|
|
|
2002-05-27 10:25:28 +08:00
|
|
|
2002-05-26 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* debug.h (being_debugged): New macro.
|
|
|
|
* dtable.cc (dtable::extend): Use new macro.
|
|
|
|
* exceptions.cc (try_to_debug): Ditto.
|
|
|
|
* strace.cc (strace::hello): Only output debugging info when we think
|
|
|
|
we're being debugged.
|
|
|
|
|
2002-05-27 10:09:19 +08:00
|
|
|
2002-05-25 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* winsup.h: Remove duplicate declarations of malloc_lock and
|
|
|
|
malloc_unlock.
|
|
|
|
|
2002-05-25 10:22:50 +08:00
|
|
|
2002-05-24 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
Remove unneeded sync.h, where appropriate, throughout.
|
|
|
|
Remove unneeded heap.h, where appropriate, throughout.
|
|
|
|
Remove unneeded exceptions.h, where appropriate, throughout.
|
|
|
|
Remove unneeded perprocess.h, where appropriate, throughout.
|
|
|
|
|
2002-05-24 22:44:05 +08:00
|
|
|
2002-05-22 Pierre Humblet <pierre.humblet@ieee.org>
|
|
|
|
|
|
|
|
* security.cc (create_token): Call __sec_user() instead of
|
|
|
|
sec_user() to remove dependence on allow_ntsec. Verify that
|
|
|
|
the returned sd is non-null.
|
|
|
|
|
2002-05-24 22:24:33 +08:00
|
|
|
2002-05-25 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* gmon.c (fake_sbrk): Correctly return -1 on failed malloc's.
|
|
|
|
|
2002-05-24 13:44:10 +08:00
|
|
|
2002-05-24 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* dtable.cc (dtable::build_fhandler_from_name): Just pass posix path
|
|
|
|
along to set_name via return_and_clear_normalized_path.
|
|
|
|
(dtable::build_fhandler): New method with const char * argument.
|
|
|
|
(dtable::reset_unix_path_name): Eliminate.
|
|
|
|
(dtable::dup_worker): Use correct build_fhandler method.
|
|
|
|
* mmap.cc (mmap_record::alloc_fh): Ditto.
|
|
|
|
* dtable.h (dtable::build_fhandler): New method.
|
|
|
|
(dtable::reset_unix_path_name): Eliminate.
|
|
|
|
* fhandler.cc (fhandler_base::set_name): Assume that unix_name has
|
|
|
|
already been cmalloced.
|
|
|
|
(fhandler_base::reset_unix_path_name): Eliminate.
|
|
|
|
(fhandler_base::~fhandler_base): Coercion for cfree.
|
|
|
|
* fhandler.h (fhandler_base::unix_path_name): Make const char *.
|
|
|
|
(fhandler_base::win32_path_name): Ditto.
|
|
|
|
(fhandler_base::reset_unix_path_name): Eliminate.
|
|
|
|
* fhandler_disk_file.cc (fhandler_cygdrive::set_drives): Accommodate
|
|
|
|
const char *ness of win32_path_name.
|
|
|
|
* fhandler_socket.cc (fhandler_socket::fstat): Accommodate new set_name
|
|
|
|
requirements.
|
|
|
|
* path.cc (path_conv::return_and_clear_normalized_path): New method.
|
|
|
|
(path_conv::clear_normalized_path): Eliminate.
|
|
|
|
(path_conv::~path_conv): Ditto.
|
|
|
|
(path_conv::check): Accommodate new build_fhandler method.
|
|
|
|
* path.h (path_conv::~path_conv): Eliminate.
|
|
|
|
(path_conv::clear_normalized_path): Ditto.
|
|
|
|
(path_conv::return_and_clear_normalized_path): Declare new method.
|
|
|
|
|
2002-05-24 04:01:46 +08:00
|
|
|
2002-05-23 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* path.cc (path_conv::check): Make sure any trailing path component is
|
|
|
|
part of potential normalized posix path.
|
|
|
|
|
2002-05-23 14:00:49 +08:00
|
|
|
2002-05-23 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* smallprint.c (__small_vsprintf): Implement '%o' after all these
|
|
|
|
years.
|
|
|
|
|
2002-05-23 06:09:58 +08:00
|
|
|
2002-05-22 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler.h (fhandler_virtual::exists): Eliminate path argument.
|
|
|
|
(fhandler_proc::exists): Ditto.
|
|
|
|
(fhandler_registry::exists): Ditto.
|
|
|
|
(fhandler_process::exists): Ditto.
|
|
|
|
* fhandler_proc.cc (fhandler_proc::exists): Ditto. Use built-in name.
|
|
|
|
* fhandler_process.cc (fhandler_process::exists): Ditto.
|
|
|
|
(fstat): Ditto.
|
|
|
|
* fhandler_registry.cc (fhandler_registry::exists): Ditto.
|
|
|
|
(fhandler_registry::fstat): Ditto.
|
|
|
|
* fhandler_virtual.cc (fhandler_virtual::opendir): Ditto.
|
|
|
|
* path.cc (path_conv::check): Ditto. Add debugging.
|
|
|
|
|
|
|
|
2002-05-22 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* syscalls.cc (dup): Always call dup2 for error handling.
|
|
|
|
|
2002-05-22 20:47:54 +08:00
|
|
|
2002-05-22 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* include/cygwin/types.h: Revert previous patch.
|
|
|
|
|
2002-05-22 18:33:39 +08:00
|
|
|
2002-05-22 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* include/cygwin/types.h: Define pthread stuff only if _POSIX_THREADS
|
|
|
|
is defined.
|
|
|
|
|
2002-05-21 22:50:26 +08:00
|
|
|
2002-05-19 Pierre Humblet <pierre.humblet@ieee.org>
|
|
|
|
|
2002-05-23 06:09:58 +08:00
|
|
|
* security.cc (open_local_policy): Initialize lsa to
|
2002-05-21 22:50:26 +08:00
|
|
|
INVALID_HANDLE_VALUE instead of NULL.
|
|
|
|
(get_logon_server_and_user_domain): Test for INVALID_HANDLE_VALUE
|
|
|
|
instead of NULL.
|
|
|
|
(create_token): Both of the above.
|
|
|
|
|
2002-05-19 05:07:18 +08:00
|
|
|
2002-05-18 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler_disk_file.cc (fhandler_disk_file::fstat): Make handling of
|
|
|
|
nlink consistent for remote files.
|
|
|
|
|
2002-05-19 04:27:49 +08:00
|
|
|
2002-05-18 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* path.cc (path_conv::check): Always set executable bit for executable
|
|
|
|
extension.
|
|
|
|
|
2002-05-18 03:30:52 +08:00
|
|
|
2002-05-17 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler.cc (fhandler_base::lseek): Avoid calling SetFilePointer with
|
|
|
|
high order part of 64 bit address on OS's which do not support that
|
|
|
|
kind of operation. Otherwise Windows 95 will become confused.
|
|
|
|
|
2002-05-17 17:32:45 +08:00
|
|
|
2002-05-16 Pierre Humblet <pierre.humblet@ieee.org>
|
|
|
|
|
|
|
|
* fhandler_raw.cc (fhandler_dev_raw::open): Replace set_errno()
|
|
|
|
by __seterrno_from_win_error().
|
|
|
|
* security.cc (open_local_policy): Ditto.
|
|
|
|
(get_lsa_srv_inf): Ditto.
|
|
|
|
(get_user_groups): Ditto.
|
|
|
|
(get_user_primary_group): Ditto.
|
|
|
|
(create_token): Ditto.
|
|
|
|
(subauth): Ditto.
|
|
|
|
|
2002-05-17 16:32:29 +08:00
|
|
|
2002-05-17 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* times.cc (utimes): Use FILE_WRITE_ATTRIBUTES even on 9x/Me when
|
|
|
|
opening file for writing timestamp.
|
|
|
|
* wincap.cc: Remove flag has_specific_access_rights.
|
|
|
|
* wincap.h: Ditto.
|
|
|
|
|
2002-05-16 17:30:48 +08:00
|
|
|
2002-05-13 Pierre Humblet <pierre.humblet@ieee.org>
|
|
|
|
|
|
|
|
* syscalls.cc (seteuid): Set default dacl in process token.
|
|
|
|
Replace in-line code by call to verify_token().
|
|
|
|
(setegid): Reverse change from 2002-01-21. Add call to
|
|
|
|
RevertToSelf and set primary group in impersonation token.
|
|
|
|
* security.cc (create_token): Store pgrpsid in token security
|
|
|
|
descriptor, except if it already appears in my_grps.
|
|
|
|
Use sec_acl() in place of get_dacl().
|
|
|
|
(verify_token): Create from code in seteuid(), with tighter checks.
|
2002-06-10 09:25:47 +08:00
|
|
|
(get_dacl): Deleted.
|
2002-05-16 17:30:48 +08:00
|
|
|
(get_group_sidlist): Add argument to indicate if pgrpsid is already
|
|
|
|
in the groups.
|
|
|
|
* security.h: Define verify_token().
|
|
|
|
* autoload.cc: Load GetKernelObjectSecurity().
|
|
|
|
|
2002-05-14 03:53:46 +08:00
|
|
|
2002-05-13 Mark Bradshaw <bradshaw@staff.crosswalk.com>
|
|
|
|
|
|
|
|
* cygwin.din: Add strlcat and strlcpy.
|
|
|
|
* include/cygwin/version.h: Increment API minor version number.
|
|
|
|
|
2002-05-23 06:09:58 +08:00
|
|
|
2002-05-09 Pierre Humblet <pierre.humblet@ieee.org>
|
2002-05-13 20:10:49 +08:00
|
|
|
|
|
|
|
* shared.cc (__sec_user): Split into sec_acl() and call orig_sid().
|
|
|
|
(sec_acl): Create from part of __sec_user(), except creator/owner.
|
|
|
|
* security.h: Define sec_acl() and MAX_DACL_LEN.
|
|
|
|
|
2002-05-13 03:20:01 +08:00
|
|
|
2002-05-12 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler_disk_file.cc (fhandler_disk_file::open): Avoid using
|
|
|
|
O_DIROPEN when OS doesn't support it. Return proper errno in that
|
|
|
|
case.
|
|
|
|
|
2002-05-12 12:43:29 +08:00
|
|
|
2002-05-12 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
2002-05-12 12:55:10 +08:00
|
|
|
* syscalls.cc (_read): Change error to EBADF if attempt to read from a
|
|
|
|
non-readable fd.
|
2002-05-12 12:43:29 +08:00
|
|
|
|
2002-05-12 11:08:59 +08:00
|
|
|
2002-05-11 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler.h (executable_states): For now, make dont_care_if_executable
|
|
|
|
equivalent to not_executable.
|
|
|
|
* sys/mount.h: Define MOUNT_NOTEXEC.
|
|
|
|
* path.h (fs_info): New class.
|
|
|
|
(path_conv): Move fs-specific fields to new 'fs' structure.
|
|
|
|
(path_conv::update_fs_info): Move to fs_info and rename to just 'update'.
|
|
|
|
* path.cc (fs_info::update): Ditto. Return 'true' if successful.
|
|
|
|
(fillout_mntent): Add ',noexec' to list of reported options.
|
|
|
|
|
2002-05-12 09:59:53 +08:00
|
|
|
2002-05-11 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler_virtual.cc (fhandler_virtual::close): Quiet a compiler
|
|
|
|
warning.
|
|
|
|
|
2002-05-12 09:37:48 +08:00
|
|
|
2002-05-10 Christopher January <chris@atomice.net>
|
|
|
|
|
|
|
|
* autoload.cc: Add dynamic load statements for
|
|
|
|
'ZwQueryInformationProcess' and 'ZwQueryVirtualMemory'.
|
|
|
|
* fhandler.h: Change type of bufalloc and filesize members of
|
|
|
|
fhandler_virtual from int to size_t. Change type of position member
|
|
|
|
from __off32_t to __off64_t. Add new fileid member to fhandler_virtual
|
|
|
|
class. Make seekdir take an __off64_t argument. Make lseek take an
|
|
|
|
__off64_t argument. Add fill_filebuf method to fhandler_virtual. Add
|
|
|
|
fill_filebuf method to fhandler_proc. Add fill_filebuf method to
|
|
|
|
fhandler_registry. Add fill_filebuf method to fhandler_process. Add
|
|
|
|
saved_pid and saved_p members to fhandler_process.
|
|
|
|
* fhandler_proc.cc (proc_listing_array): Add 'loadavg', 'meminfo', and 'stat'.
|
|
|
|
(proc_fhandlers array): Ditto.
|
|
|
|
(fhandler_proc::open): Use fill_filebuf to flesh out the file contents.
|
|
|
|
(fhandler_proc::fill_filebuf): New method.
|
|
|
|
(fhandler_proc::format_proc_meminfo): Ditto.
|
|
|
|
(fhandler_proc::format_proc_stat): Ditto.
|
|
|
|
(fhandler_proc::format_proc_uptime): Ditto.
|
|
|
|
* fhandler_process.cc (process_listing): Add 'stat' and 'statm'.
|
|
|
|
(fhandler_process::fstat): Find the _pinfo structure for the process
|
|
|
|
named in the filename. Return ENOENT if the process is no longer
|
|
|
|
around. Set the gid and uid fields of the stat structure.
|
|
|
|
(fhandler_process::open): Store pid and pointer to _pinfo structure in
|
|
|
|
saved_pid and saved_p respectively. Use fill_filebuf to flesh out file
|
|
|
|
contents.
|
|
|
|
(fhandler_proc::fill_filebuf): New method.
|
|
|
|
(format_process_stat): New function.
|
|
|
|
(format_process_status): Ditto.
|
|
|
|
(format_process_statm): Ditto.
|
|
|
|
(get_process_state): Ditto.
|
|
|
|
(get_mem_values): Ditto.
|
|
|
|
* fhandler_registry.cc (fhandler_registry::seekdir): Change argument
|
|
|
|
type from __off32_t to __off64_t.
|
|
|
|
(fhandler_registry::fill_filebuf): New method.
|
|
|
|
* fhandler_virtual.cc (fhandler_virtual::seekdir): Change argument type
|
|
|
|
from __off32_t to __off64_t.
|
|
|
|
(fhandler_virtual::lseek): Ditto.
|
|
|
|
(fhandler_virtual::fill_filebuf): New method.
|
|
|
|
(fhandler_virtual::fhandler_virtual): Initialise fileid to -1.
|
|
|
|
* wincap.cc: Set flag has_process_io_counters appropriately.
|
|
|
|
* wincap.h: Add flag has_process_io_counters.
|
|
|
|
|
|
|
|
2002-05-09 Christopher Faylor <cgf@redhat.com>
|
2002-05-10 06:55:08 +08:00
|
|
|
|
|
|
|
* syscalls.cc (_write): Change error to EBADF if attempt to write to a
|
2002-05-12 12:55:10 +08:00
|
|
|
non-writeable fd.
|
2002-05-10 06:55:08 +08:00
|
|
|
|
2002-05-08 22:21:08 +08:00
|
|
|
2002-05-08 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* cygheap.h (class cygheap_user): Add member `orig_psid'.
|
|
|
|
Add method `orig_sid()'.
|
|
|
|
* cygheap.cc (cygheap_user::set_sid): Maintain orig_psid.
|
|
|
|
|
2002-05-07 21:18:44 +08:00
|
|
|
2002-04-28 Norbert Schulze <norbert.schulze@web.de>
|
|
|
|
|
|
|
|
* localtime.cc (tzsetwall): Use wildabbr if generated timezone name
|
|
|
|
length < 3.
|
|
|
|
|
2002-05-06 18:05:46 +08:00
|
|
|
2002-05-05 Pierre Humblet <pierre.humblet@ieee.org>
|
|
|
|
|
|
|
|
* spawn.cc (spawn_guts): Move call to set_process_privilege()
|
|
|
|
to load_registry_hive().
|
|
|
|
* registry.cc (load_registry_hive): ditto.
|
|
|
|
* fork.cc (fork_parent): Call sec_user_nih() only once.
|
|
|
|
|
|
|
|
2002-05-04 Christopher January <chris@atomice.net>
|
2002-05-05 02:27:27 +08:00
|
|
|
|
|
|
|
* path.h (path_conv::path_conv): Initialise normalized_path to NULL.
|
|
|
|
|
2002-05-04 11:24:35 +08:00
|
|
|
2002-05-03 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* net.cc (getdomainname): Change second argument of getdomainname to
|
|
|
|
size_t.
|
|
|
|
|
|
|
|
2002-05-03 Christopher January <chris@atomice.net>
|
|
|
|
|
|
|
|
* fhandler_proc.cc (proc_listing): Add '.' and '..' to directory
|
|
|
|
listing.
|
|
|
|
(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. Change
|
|
|
|
EROFS error to EACCES error when writing to a file. Use cmalloc to
|
|
|
|
allocate memory for filebuf.
|
|
|
|
(fhandler_proc::close): Use cfree to free filebuf.
|
|
|
|
(fhandler_proc::get_proc_fhandler): Properly detect attempts to access
|
|
|
|
unknown subdir.
|
|
|
|
* fhandler_process.cc (process_listing): Add '.' and '..' to directory
|
|
|
|
listing.
|
|
|
|
(fhandler_process::open): Use cmalloc to allocate memory for filebuf.
|
|
|
|
(fhandler_process::close): Use cfree to free filebuf.
|
|
|
|
* fhandler_registry.cc (registry_listing): Add . and '..' to directory
|
|
|
|
listing.
|
|
|
|
(fhandler_registry::open): Move check for open for writing before
|
|
|
|
open_key. Use cmalloc to allocate memory for filebuf.
|
|
|
|
(fhandler_registry::close): Use cfree to free filebuf.
|
|
|
|
(fhandler_registry::telldir): Use lower 16 bits of __d_position as
|
|
|
|
position in directory.
|
|
|
|
(fhandler_registry::seekdir): Ditto.
|
|
|
|
* fhandler_virtual.cc (fhandler_virtual::write): Change EROFS error to
|
|
|
|
EACCES error.
|
|
|
|
(fhandler_virtual::open): Set the NOHANDLE flag.
|
|
|
|
(fhandler_virtual::dup): Add call to fhandler_base::dup. Allocate
|
|
|
|
child's filebuf using cmalloc. Copy filebuf from parent to child.
|
|
|
|
(fhandler_virtual::close): Use cfree to free filebuf.
|
|
|
|
(fhandler_virtual::~fhandler_virtual): Ditto.
|
|
|
|
(from Chris Faylor <cgf@redhat.com>).
|
|
|
|
(fhandler_registry::readdir): Add support for '.' and '..' files in
|
|
|
|
subdirectories of /proc/registry.
|
|
|
|
* path.cc (path_conv::check): Do not return ENOENT if a file is not
|
|
|
|
found in /proc.
|
|
|
|
|
2002-05-03 10:43:45 +08:00
|
|
|
2002-05-02 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler_proc.cc (fhandler_proc::fstat): Use fhandler name rather
|
|
|
|
than path_conv name.
|
|
|
|
(fhandler_proc::open): Ditto.
|
|
|
|
* fhandler_process.cc (fhandler_process::fstat): Use fhandler name
|
|
|
|
rather than path_conv name.
|
|
|
|
(fhandler_process::open): Ditto.
|
|
|
|
* fhandler_registry.cc (fhandler_registry::fstat): Use fhandler name
|
|
|
|
rather than path_conv name.
|
|
|
|
(fhandler_registry::open): Ditto.
|
|
|
|
* path.cc (path_conv::check): Don't copy posix path when virtual.
|
|
|
|
(mount_info::conv_to_win32_path): Don't zero string when isproc. Just
|
|
|
|
derive normal windows path.
|
|
|
|
|
|
|
|
* path.h (path_conv::clear_normalized_path): Declare new method.
|
|
|
|
* path.cc (path_conv::clear_normalized_path): Define new method.
|
|
|
|
* dtable.cc (build_fhandler_from_name): Clear normalized path when
|
|
|
|
finished to conserve space.
|
|
|
|
|
2002-05-03 07:58:20 +08:00
|
|
|
2002-05-02 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler_proc.cc (fhandler_proc::fstat): Prime with information from
|
|
|
|
fhandler_base::fstat. Use defines rather than constants for permission
|
|
|
|
settings.
|
|
|
|
|
2002-05-03 00:46:12 +08:00
|
|
|
2002-04-30 Eric Blake <ebb9@email.byu.edu>
|
|
|
|
|
|
|
|
* path.cc (hash_path_name): Improve hash function strength.
|
|
|
|
|
2002-05-02 19:26:22 +08:00
|
|
|
2002-05-02 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* thread.cc (__pthread_cond_dowait): Fix a race on signalling from a
|
|
|
|
thread woken by the same condition variable it's signalling on. Thanks
|
|
|
|
to Michael Beach for the report and test case.
|
|
|
|
|
2002-05-02 12:13:48 +08:00
|
|
|
2002-05-02 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* path.h (pathconv_arg): Add PC_POSIX.
|
|
|
|
(path_conv): Add normalized_path field.
|
|
|
|
* path.cc (path_conv::~path_conv): New destructor.
|
|
|
|
(path_conv::check): Set normalized_path, where appropriate.
|
|
|
|
* dtable.cc (build_fhandler_from_name): Use normalized path from
|
|
|
|
path_conv.
|
|
|
|
* syscalls.cc (chroot): Ditto.
|
|
|
|
|
|
|
|
* cygheap.h: Remove path_prefix_p declaration.
|
|
|
|
|
|
|
|
2002-02-26 Christopher January <chris@atomice.net>
|
|
|
|
Christopher Faylor <cgf@redhat.com> (minor fixups)
|
|
|
|
|
|
|
|
* Makefile.in: Add fhandler_proc.o, fhandler_registry.o,
|
|
|
|
fhandler_process.o and fhandler_virtual.o.
|
|
|
|
* dtable.cc (dtable::build_fhandler): Add entries for FH_PROC,
|
|
|
|
FH_REGISTRY and FH_PROCESS. Set unix_name to the normalized posix
|
|
|
|
path.
|
|
|
|
* fhandler.h: Add constants for FH_PROC, FH_REGISTRY and FH_PROCESS.
|
|
|
|
Add class declarations for fhandler_virtual, fhandler_proc,
|
|
|
|
fhandler_registry and fhandler_virtual. Update fhandler_union
|
|
|
|
accordingly.
|
|
|
|
* fhandler_proc.cc: New file. Add implementation for fhandler_proc.
|
|
|
|
* fhandler_virtual.cc: New file. Add implementation for
|
|
|
|
fhandler_virtual.
|
|
|
|
* fhandler_process.cc: New file. Add implementation for
|
|
|
|
fhandler_process.
|
|
|
|
* fhandler_registry.cc: New file. Add implementation for
|
|
|
|
fhandler_registry.
|
2002-05-04 11:24:35 +08:00
|
|
|
* path.cc (isproc): New macro.
|
|
|
|
(isvirtual_dev): Ditto.
|
2002-05-02 12:13:48 +08:00
|
|
|
* path.cc (path_conv::check): Add check for virtual devices.
|
|
|
|
* path.cc (mount_info::conv_to_win32_path): Convert paths in /proc to
|
|
|
|
empty Win32 paths.
|
|
|
|
* path.cc (chdir): Replace check for FH_CYGDRIVE with more generic
|
|
|
|
isvirtual_dev macro. Force setting of posix path for virtual
|
|
|
|
fhandlers.
|
2002-05-04 11:24:35 +08:00
|
|
|
* path.h (path_prefix_p): Declare.
|
2002-05-02 12:13:48 +08:00
|
|
|
|
|
|
|
|
2002-05-02 04:26:33 +08:00
|
|
|
Wed May 1 16:06:02 2002 Jason Tishler <jason@tishler.net>
|
|
|
|
|
|
|
|
* include/cygwin/types.h: Include <sys/sysmacros.h>.
|
|
|
|
|
2002-04-18 17:11:54 +08:00
|
|
|
Wed Apr 17 11:27:04 2002 Jason Tishler <jason@tishler.net>
|
|
|
|
|
|
|
|
* security.cc (get_lsa_srv_inf): Prevent extraneous backslashes for
|
|
|
|
the NT Domain case.
|
|
|
|
|
2002-04-12 22:52:36 +08:00
|
|
|
2002-04-12 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* net.cc (cygwin_accept): Set socket type for accepted socket.
|
|
|
|
(socketpair): Set socket type for both sockets.
|
|
|
|
|
|
|
|
2002-04-12 Egor Duda <deo@logos-m.ru>
|
|
|
|
|
2002-05-02 12:13:48 +08:00
|
|
|
* fhandler.h (class fhandler_socket): New member to store socket type.
|
2002-04-12 22:52:36 +08:00
|
|
|
(fhandler_socket::get_socket_type): Access it.
|
|
|
|
(fhandler_socket::set_socket_type): Ditto.
|
|
|
|
* net.cc (cygwin_socket): Store socket type.
|
|
|
|
(cygwin_connect): Disable security checks for connectionless sockets.
|
|
|
|
(cygwin_accept): Ditto.
|
|
|
|
|
2002-04-10 07:47:26 +08:00
|
|
|
2002-04-09 Mark Bradshaw <bradshaw@staff.crosswalk.com>
|
|
|
|
|
|
|
|
* cygwin.din: Add strptime.
|
|
|
|
* include/cygwin/version.h: Increment API version number.
|
|
|
|
|
2002-04-10 00:33:13 +08:00
|
|
|
2002-04-09 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* fork.cc (fork_child): Call fixup_mmaps_after_fork() somewhat earlier.
|
|
|
|
|
2002-04-09 21:01:00 +08:00
|
|
|
2002-04-09 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* fhandler.cc (fhandler_base::open): Set read-only bit in
|
|
|
|
file_attributes when adequate.
|
|
|
|
|
2002-03-28 13:20:53 +08:00
|
|
|
2002-03-28 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* times.cc (gettimeofday): Fix typo in previous patch.
|
|
|
|
|
2002-03-28 12:56:06 +08:00
|
|
|
2002-03-27 Wu Yongwei <adah@netstd.com>
|
|
|
|
|
|
|
|
* times.cc (gettimeofday): Revert to setting timezone info if tz !=
|
|
|
|
NULL.
|
|
|
|
|
2002-03-22 12:27:52 +08:00
|
|
|
2002-03-21 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler_disk_file.cc (fhandler_disk_file::fstat_helper): Always set
|
|
|
|
st_[ug]id to value derived from get_file_attributes.
|
|
|
|
|
2002-03-22 11:24:30 +08:00
|
|
|
2002-03-21 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* spawn.cc (find_exec): Return input if file not found.
|
|
|
|
|
2002-03-20 01:12:49 +08:00
|
|
|
2002-03-19 Boris Schaeling <boriss@web.de>
|
|
|
|
|
2002-05-02 12:13:48 +08:00
|
|
|
* poll.cc (poll): Add support for invalid descriptors.
|
2002-03-20 01:12:49 +08:00
|
|
|
|
2002-03-19 12:39:01 +08:00
|
|
|
2002-03-15 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* fhandler.h (fhandler_termios::lseek): Override lseek.
|
|
|
|
* fhandler_termios.cc (fhandler_termios::lseek): Implement this.
|
|
|
|
|
2002-03-16 05:52:05 +08:00
|
|
|
2002-03-15 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* cygserver.cc: Include stdlib.h for exit declaration.
|
|
|
|
* threaded_queue.cc: Ditto.
|
|
|
|
|
2002-03-16 05:49:12 +08:00
|
|
|
2002-03-15 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* pinfo.cc (pinfo::init): Use PID_ALLPIDS flag to control when a
|
|
|
|
redirected block should be marked as nonexistent.
|
|
|
|
(winpids::add): Use PID_ALLPIDS when looking for all pids.
|
|
|
|
* cygwin.h (PID_ALLPIDS): New enum element.
|
|
|
|
|
2002-04-09 21:01:00 +08:00
|
|
|
2002-03-15 Corinna Vinschen <corinna@vinschen.de>
|
2002-03-15 18:12:31 +08:00
|
|
|
|
2002-05-02 12:13:48 +08:00
|
|
|
* glob.c (stat32_to_STAT): New function.
|
2002-03-15 18:12:31 +08:00
|
|
|
(g_lstat): Call user space functions always with 32 bit struct stat
|
|
|
|
as a workaround.
|
|
|
|
(g_stat): Ditto.
|
|
|
|
* include/glob.h (struct glob): Don't prototype function pointers
|
|
|
|
when compiling Cygwin.
|
|
|
|
|
2002-03-15 07:14:19 +08:00
|
|
|
2002-03-14 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* pinfo.cc (pinfo::init): Properly handle execed process stub when
|
|
|
|
PID_NOREDIR is specified.
|
|
|
|
|
2002-03-14 20:15:31 +08:00
|
|
|
2002-03-13 Boris Schaeling <boriss@web.de>
|
|
|
|
|
2002-03-14 23:34:32 +08:00
|
|
|
* poll.cc (poll): Remove variable open_fds. Rearrange and add code to
|
|
|
|
fix settings of revents.
|
2002-03-14 20:15:31 +08:00
|
|
|
|
2002-04-09 21:01:00 +08:00
|
|
|
2002-03-13 Corinna Vinschen <corinna@vinschen.de>
|
2002-03-14 04:54:57 +08:00
|
|
|
|
|
|
|
* mmap.cc (mmap_record::map_map): Return -1 if VirtualProtect fails.
|
|
|
|
(list::erase): New method with no argument. Erase latest record
|
|
|
|
added.
|
|
|
|
(mmap64): Fail if map_map() fails.
|
|
|
|
|
2002-04-09 21:01:00 +08:00
|
|
|
2002-03-12 Corinna Vinschen <corinna@vinschen.de>
|
2002-03-12 16:57:22 +08:00
|
|
|
|
|
|
|
* sysconf.cc (sysconf): Fix condition.
|
|
|
|
|
2002-04-09 21:01:00 +08:00
|
|
|
2002-03-11 Corinna Vinschen <corinna@vinschen.de>
|
2002-03-12 04:23:09 +08:00
|
|
|
|
|
|
|
* mmap.cc (msync): Check area given by addr and len for being a
|
|
|
|
contigeous mmap'd region.
|
|
|
|
|
2002-04-09 21:01:00 +08:00
|
|
|
2002-03-11 Corinna Vinschen <corinna@vinschen.de>
|
2002-03-12 01:57:22 +08:00
|
|
|
|
|
|
|
* fork.cc (fork_child): Call fixup_mmaps_after_fork() before
|
|
|
|
closing parent process handle. Call fixup_mmaps_after_fork()
|
|
|
|
with parent process handle as parameter.
|
|
|
|
* mmap.cc (mmap_record::access): New method.
|
|
|
|
(fixup_mmaps_after_fork): Take process handle as parameter.
|
|
|
|
In case of FILE_MAP_COPY access, copy valid memory regions to child.
|
|
|
|
* pinfo.h (fixup_mmaps_after_fork): Change prototype accordingly.
|
|
|
|
|
2002-04-09 21:01:00 +08:00
|
|
|
2002-03-07 Corinna Vinschen <corinna@vinschen.de>
|
2002-03-07 22:32:53 +08:00
|
|
|
|
|
|
|
* autoload.cc (NetGetDCName): Add symbol.
|
|
|
|
(NetServerEnum): Remove symbol.
|
|
|
|
* security.cc (get_lsa_srv_inf): Call NetGetDCName() instead of
|
|
|
|
NetServerEnum() since it's faster. Don't call it at all if machine
|
|
|
|
is not a domain member.
|
|
|
|
|
2002-03-07 09:31:08 +08:00
|
|
|
2002-03-06 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* path.cc (normalize_posix_path): Avoid runs of '.'s > 2.
|
|
|
|
|
2002-03-06 02:11:20 +08:00
|
|
|
2002-03-05 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* errno.cc: Change EPERM associated text to "Operation not permitted"
|
|
|
|
throughout.
|
|
|
|
|
2002-03-06 02:02:53 +08:00
|
|
|
2002-03-05 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler_socket.cc (fhandler_socket::close): Respond to signals while
|
|
|
|
looping, waiting for socket to close. Superstitiously clear last error
|
|
|
|
when WSAEWOULDBLOCK.
|
|
|
|
|
2002-03-05 20:58:24 +08:00
|
|
|
2002-03-05 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
2002-05-02 12:13:48 +08:00
|
|
|
* cygserver_transport_pipes.cc (transport_layer_pipes::transport_layer_pipes):
|
2002-03-05 20:58:24 +08:00
|
|
|
Always init - until static members work correctly.
|
|
|
|
* shm.cc (shmget): Initialize the security descriptor - thanks Corinna!
|
2002-05-02 12:13:48 +08:00
|
|
|
* include/sys/ipc.h: Make the ipc control constants partitioned off from the sem
|
2002-03-05 20:58:24 +08:00
|
|
|
control constants.
|
|
|
|
|
2002-03-05 16:15:28 +08:00
|
|
|
2002-03-04 Christian Lestrade <christian.lestrade@free.fr>
|
|
|
|
|
|
|
|
* include/sys/termios.h: Define _POSIX_VDISABLE. Define CCEQ macro.
|
|
|
|
* fhandler_termios.cc: Include <sys/termios.h>.
|
|
|
|
(line_edit): Recognize disabled c_cc[] chars. Ignore VDISCARD when
|
|
|
|
not in ICANON mode.
|
|
|
|
|
2002-03-05 00:47:41 +08:00
|
|
|
2002-03-04 Dmitry Timoshkov <dmitry@baikal.ru>
|
|
|
|
|
|
|
|
* syscalls.cc (truncate64): Use ftruncate64 directly to not lose
|
|
|
|
upper 32 bits.
|
|
|
|
|
2002-03-04 16:45:40 +08:00
|
|
|
2002-03-04 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* cygserver_shm.cc (delete_shmnode): New function.
|
|
|
|
(client_request_shm::serve): Use it.
|
|
|
|
|
2002-03-04 16:12:53 +08:00
|
|
|
2002-03-04 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* cygserver_shm.cc (client_request_shm::serve): Implement SHM_DETACH.
|
|
|
|
* shm.cc (shmdt): Implement.
|
|
|
|
|
2002-03-04 15:22:08 +08:00
|
|
|
2002-03-04 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* cygserver_shm.cc: Run indent.
|
|
|
|
(deleted_head): New global for storing shm id's pending deletion.
|
|
|
|
(client_request_shm::serve): Return ENOSYS for invalid request types.
|
|
|
|
Implement SHM_DEL - delete a shm id.
|
|
|
|
* cygserver_shm.h (SHM_DEL): New type value.
|
|
|
|
* shm.cc (delete_inprocess_shmds): New function, does what it's name implies.
|
|
|
|
(shmctl): Implement shm_rmid control type.
|
|
|
|
|
2002-03-04 05:46:38 +08:00
|
|
|
2002-03-04 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* Makefile.in (install): Remove install-bin to allow make install to work.
|
|
|
|
|
2002-03-03 20:52:59 +08:00
|
|
|
2002-03-03 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* shm.cc (shmat): Prevent a compile error.
|
|
|
|
(shmdt): Set errno as this function is incomplete.
|
|
|
|
|
2002-03-01 03:36:11 +08:00
|
|
|
2002-02-28 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* times.cc: Remove if 0'd code. Clean up slightly.
|
|
|
|
|
2002-02-28 22:30:38 +08:00
|
|
|
2002-02-28 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* Merged cygwin_daemon into head minus the new shm and ipc exports.
|
|
|
|
|
|
|
|
2002-02-28 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* fhandler_tty.cc (fhandler_tty_slave::open): More debugging.
|
|
|
|
(fhandler_tty_slave::read): Fix printf type for the handle.
|
|
|
|
* tty.cc (tty::common_init): Add a FIXME for security.
|
|
|
|
|
|
|
|
2002-01-29 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* Makefile.in (OBJS): Remove duplicate localtime.o.
|
|
|
|
|
|
|
|
2002-01-17 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
2002-05-02 12:13:48 +08:00
|
|
|
* cygserver.cc (check_and_dup_handle): Consolidate the two variants for
|
2002-02-28 22:30:38 +08:00
|
|
|
simplicity.
|
|
|
|
Add Some basic debug output.
|
|
|
|
(client_request_attach_tty::serve): Use the new debug_printf for clarity.
|
|
|
|
Mark the duplicated handles as inheritable - fixup_after_fork() doesn't reopen
|
|
|
|
tty's.
|
|
|
|
|
|
|
|
2002-01-16 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* cygserver.cc (transport): Correct scope.
|
|
|
|
(client_request_attach_tty::serve): Add more debug information.
|
|
|
|
Fix erroneous use of transport instead of conn.
|
|
|
|
* cygserver_transport_pipes.cc (transport_layer_pipes::close): More debug.
|
|
|
|
(transport_layer_pipes::read): Ditto.
|
|
|
|
(transport_layer_pipes::write): Ditto.
|
|
|
|
(transport_layer_pipes::impersonate_client): Ditto.
|
|
|
|
|
|
|
|
Mon Oct 8 7:41:00 2001 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* cygserver.cc (server_request::process): Rename client_request_shm_get to
|
|
|
|
client_request_shm.
|
|
|
|
* cygserver_process.cc (process_cache::add): Rename to add_task.
|
|
|
|
Use process_cleanup instead of process_request.
|
|
|
|
(process_cache::remove_process): New method.
|
|
|
|
(process::process): Initialize new members.
|
|
|
|
(process::~process): New member.
|
|
|
|
(process::cleanup): New method.
|
|
|
|
(process::add_cleanup_routine): New method.
|
|
|
|
(process_request::process): Rename to process_cleanup.
|
|
|
|
Call the process object's cleanup method and then delete it.
|
|
|
|
(process_process_param::request_loop): Remove the signalling process.
|
|
|
|
* cygserver_shm.cc: Globally rename client_request_shm_get to client_request_shm.
|
|
|
|
(client_request_shm_get::serve): Handle attach request counting.
|
|
|
|
* cygserver_shm.h: Globally rename client_request_shm_get to client_request_shm.
|
|
|
|
(class shm_cleanup): New class.
|
|
|
|
* shm.cc: Globally rename client_request_shm_get to client_request_shm.
|
|
|
|
(client_request_shm::client_request_shm): New constructor for attach requests.
|
|
|
|
(shmat): Use it.
|
2002-05-02 12:13:48 +08:00
|
|
|
* include/cygwin/cygserver_process.h (class process_request): Rename to
|
2002-02-28 22:30:38 +08:00
|
|
|
process_cleanup.
|
|
|
|
(class cleanup_routine): New class.
|
|
|
|
(class process): New members and methods to allow calling back when the process
|
|
|
|
terminates.
|
|
|
|
|
|
|
|
Thu Oct 4 14:12:00 2001 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
* cygserver.cc (request_loop): Make static.
|
|
|
|
(main): Use new cache constructor syntax.
|
|
|
|
Start cache worker threads.
|
|
|
|
Cleanup the cache at shutdown.
|
|
|
|
* cygserver_process.cc: Run indent.
|
|
|
|
(process_cache::process_cache): Add a trigger to use when adding a process.
|
|
|
|
(process_cache::process): Move process_entry to process.
|
|
|
|
Insert at the end of the list.
|
|
|
|
Trigger the request loop when new process's inserted.
|
|
|
|
(process_cache::process_requests): Do it.
|
|
|
|
(process_cache::add): New method.
|
|
|
|
(process_cache::handle_snapshot): New method.
|
|
|
|
(process::process): Merge in the process_entry fields.
|
|
|
|
(process::handle): Make a stub function.
|
|
|
|
(process::exit_code): New method.
|
|
|
|
(process_request::process): New method.
|
|
|
|
(process_process_param::request_loop): New method.
|
|
|
|
* cygserver_shm.cc: New header dependency - threaded_queue.h.
|
|
|
|
* threaded_queue.cc (threaded_queue::cleanup): Clearer messages.
|
|
|
|
(queue_process_param::stop): Short spinlock on interruptible threads.
|
|
|
|
* threaded_queue.h (class threaded_queue): New constructor.
|
|
|
|
* include/cygwin/cygserver_process.h (process_request): New class.
|
|
|
|
(process_entry): Remove.
|
|
|
|
(process): Merge in process_entry.
|
|
|
|
(process_cache): Inherit from threaded_queue.
|
|
|
|
|
|
|
|
Tue Oct 2 23:24:00 2001 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* cygserver.cc (class server_process_param): Use new constructor syntax.
|
|
|
|
* cygserver_process.cc (process_cache::~process_cache): New function.
|
|
|
|
* threaded_queue.cc: Define condition debug_printf.
|
|
|
|
Run indent.
|
|
|
|
(threaded_queue::cleanup): Move queue_process_param guts to a method.
|
|
|
|
(threaded_queue::process_requests): Ditto.
|
|
|
|
(queue_process_param::queue_process_param): New method.
|
|
|
|
(queue_process_param::~queue_process_param): Ditto.
|
|
|
|
(queue_process_param::start): Ditto.
|
|
|
|
(queue_process_param::stop): Ditto.
|
2002-05-02 12:13:48 +08:00
|
|
|
* threaded_queue.h (class queue_process_param): Add support for
|
2002-02-28 22:30:38 +08:00
|
|
|
interruptible request loops.
|
|
|
|
* cygwin/include/cygwin/cygserver_process.h (class process_cache): Add
|
|
|
|
destructor.
|
|
|
|
|
|
|
|
Tue Oct 2 23:24:00 2001 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* cygserver_client.cc: New flag allow_daemon to disable the daemon completely.
|
|
|
|
(cygserver_request): Check it.
|
|
|
|
(cygserver_init): Ditto.
|
|
|
|
* environ.cc (parse_thing): Add (no)daemon option.
|
|
|
|
|
|
|
|
Tue Oct 2 23:00:00 2001 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* shm.cc: Update to handle include changes from HEAD.
|
|
|
|
|
|
|
|
Tue Oct 2 16:06:00 2001 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
2002-05-02 12:13:48 +08:00
|
|
|
* Makefile.in: Remove cygserver_shm.o from cygwin1.dll.
|
2002-02-28 22:30:38 +08:00
|
|
|
Rename cygserver_shm_outside.o to cygserver_shm.o.
|
|
|
|
* cygserver.cc (server_request::process): Use the new client_request
|
|
|
|
constructor.
|
|
|
|
* cygserver_client.cc: Remove the #ifdef's stubs for the server method
|
|
|
|
within cygwin.
|
|
|
|
(client_request_attach_tty::client_request_attach_tty): Use the new
|
|
|
|
client_request constructor.
|
|
|
|
(client_request_shutdown::client_request_shutdown): Ditto.
|
|
|
|
(client_request::client_request): Ditto.
|
2002-05-02 12:13:48 +08:00
|
|
|
* cygserver_shm.cc (client_request_shm_get::serve): Remove the
|
2002-02-28 22:30:38 +08:00
|
|
|
#ifdef'd stub for in-cygwin builds.
|
|
|
|
(client_request_shm_get::client_request_shm_get): Use the new
|
|
|
|
client_request constructor, and remove the in-cygwin variants.
|
|
|
|
* cygserver_shm.h (class client_request_shm_get): #ifndef test the
|
|
|
|
serve method - it's only used in cygserver.
|
|
|
|
* shm.cc (client_request_shm_get::client_request_shm_get): New function.
|
|
|
|
* include/cygwin/cygserver.h (request_header): New constructor.
|
2002-05-02 12:13:48 +08:00
|
|
|
(class client_request): Use it.
|
2002-02-28 22:30:38 +08:00
|
|
|
New constructor accepting the header size.
|
|
|
|
#ifndef test the server method - it's only used within cygserver.
|
|
|
|
(client_request_get_version): #ifdef test the server method.
|
|
|
|
(client_request_shutdown): Ditto.
|
|
|
|
(client_request_attach_tty): Ditto.
|
|
|
|
|
|
|
|
Tue Oct 2 9:57:00 2001 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* Makefile.in: add threaded_queue.o to cygserver.exe.
|
|
|
|
* cygserver.cc: Include threaded_queue.h
|
|
|
|
(class server_request): Inherit from queue_request.
|
|
|
|
(class server_process_param): Inherit from queue_process_param.
|
|
|
|
(class server_request_queue): Inherit from threaded_queue.
|
|
|
|
(request_loop): Adjust for new types.
|
2002-05-02 12:13:48 +08:00
|
|
|
(server_request_queue::process_requests): Remove guts to
|
2002-02-28 22:30:38 +08:00
|
|
|
threaded_queue::process_requests.
|
|
|
|
(server_request::server_request): Adjust for new types.
|
|
|
|
(worker_function): Delete.
|
|
|
|
(server_request_queue::create_workers): Delete.
|
|
|
|
(server_request_queue::cleanup): Delete.
|
|
|
|
(server_request_queue::add): Move guts to threaded_queue::add.
|
|
|
|
* threaded_queue.cc: New file.
|
|
|
|
* threaded_queue.h: New file.
|
|
|
|
|
|
|
|
Mon Oct 1 12:38:00 2001 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* cygserver.cc (client_request::serve): New function.
|
|
|
|
* cygserver_process.cc: Inlude <pthread.h> for pthread_once.
|
|
|
|
(process_cache::process_cache): Initialise a crtiical section for write access.
|
2002-05-02 12:13:48 +08:00
|
|
|
(process_cache::process): Use the critical section. Also add missing entries to
|
2002-02-28 22:30:38 +08:00
|
|
|
the cache.
|
|
|
|
(do_process_init): New function to initalise class process static variables.
|
2002-05-02 12:13:48 +08:00
|
|
|
(process::process): Ensure that the process access critical section is
|
2002-02-28 22:30:38 +08:00
|
|
|
initialised.
|
|
|
|
(process::handle): Close the handle of old process's when they have terminated
|
|
|
|
and we are returning the handle for a process with the same pid.
|
|
|
|
* cygserver_shm.cc: Run indent.
|
|
|
|
Include cygserver_process.h to allow process cache functionality.
|
|
|
|
(client_request_shm_get::serve): New parameter for process cache support.
|
|
|
|
Use the process cache, not OpenProcess to get a handle to the originating process.
|
|
|
|
Fix a handle leak with token_handle.
|
2002-05-02 12:13:48 +08:00
|
|
|
* cygserver_shm.h (class client_request_shm_get): Update ::serve for process
|
2002-02-28 22:30:38 +08:00
|
|
|
cache support.
|
|
|
|
* cygserver_transport_pipes.cc: Redefine debug_printf to be conditional on DEBUG.
|
2002-05-02 12:13:48 +08:00
|
|
|
* include/cygwin/cygserver.h: Do not implement client_request::serve in the
|
2002-02-28 22:30:38 +08:00
|
|
|
header.
|
2002-05-02 12:13:48 +08:00
|
|
|
* include/cygwin/cygserver_process.h (class process_cache): Add a write access
|
|
|
|
critical section to prevent races when requests from a multithreaded
|
2002-02-28 22:30:38 +08:00
|
|
|
application arrive.
|
|
|
|
|
|
|
|
Sun Sep 30 23:41:00 2001 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* Makefile.in: Add cygserver_process.o to cygserver.exe.
|
|
|
|
* cygserver.cc: Include signal.h and cygwin_version.h.
|
|
|
|
Define debug_printf as a macro.
|
|
|
|
Define DEBUG to a value.
|
|
|
|
(client_request_attach_tty::serve): Add beginning of process cache support.
|
|
|
|
Change from #ifdef DEBUG to work with new DEBUG style.
|
|
|
|
(client_request_get_version::serve): Add beginning of process cache support.
|
|
|
|
(class server_request): New prototype for support of process cache.
|
|
|
|
(class queue_process_param): New class to allow request loop threading.
|
|
|
|
(class server_request_queue): Add beginning of process cache support.
|
|
|
|
Allow request loop threading.
|
|
|
|
(request_loop): Thread function for request loops.
|
|
|
|
(server_request_queue::process_requests): Initiator for threaded request loops.
|
|
|
|
(client_request_shutdown::serve): Add beginning of process cache support.
|
|
|
|
(server_request::server_request): Ditto.
|
2002-05-02 12:13:48 +08:00
|
|
|
(server_request::process): Use debug_printf. Add beginning of process cache
|
2002-02-28 22:30:38 +08:00
|
|
|
support.
|
|
|
|
(server_request_queue::cleanup): Kill off any request loop threads.
|
|
|
|
(server_request_queue::add): Add beginning of process cache support.
|
|
|
|
(handle_signal): Trigger a shutdown.
|
|
|
|
(main): Print out some useful info at startup - version, date time.
|
|
|
|
Add process cache support.
|
|
|
|
Spawn a separate thread for the transport request loop, thus allowing concurrent
|
|
|
|
support for multiple transports.
|
2002-05-02 12:13:48 +08:00
|
|
|
* cygserver_client.cc (client_request_get_version::serve): Add process cache
|
2002-02-28 22:30:38 +08:00
|
|
|
support.
|
|
|
|
(client_request_attach_tty::serve): Add process cache support.
|
|
|
|
(client_request_shutdown::serve): Add process cache support.
|
|
|
|
* cygsserver_process.cc: New file with the process cache support.
|
|
|
|
* cygserver_shm.cc: Redefine debug_printf to allow conditional output.
|
|
|
|
* cygwin.din: Export shmdt().
|
|
|
|
* shm.cc: Run indent.
|
|
|
|
Update FIXME's.
|
|
|
|
(shmdt): New function.
|
|
|
|
* include/cygwin/cygserver.h (class client_request): Add process cache support.
|
|
|
|
(class client_request_get_version): Ditto.
|
|
|
|
(class client_request_shutdown): Ditto.
|
|
|
|
(class client_request_attach_tty): Ditto.
|
|
|
|
* include/cygwin/cygserver_process.h: New header for process cache support.
|
|
|
|
|
|
|
|
Sun Sep 30 8:52:00 2001 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* include/cygwin/cygserver_transport.h: Add copyright header.
|
|
|
|
* include/cygwin/cygserver_transport_pipes.h: Ditto.
|
|
|
|
* include/cygwin/cygserver_transport_sockets.h: Ditto.
|
|
|
|
|
|
|
|
Sat Sep 29 20:40:00 2001 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* Makefile.in: Add cygserver_transport_sockets.o to DLL_OFILES.
|
|
|
|
Add cygserver_transport_sockets_outside.o to cygserver.exe.
|
|
|
|
* cygserver.cc: Include new include files.
|
|
|
|
* cygserver_client.cc: Ditto.
|
|
|
|
* cygserver_shm.h: No need to include <sys/socket.h> now.
|
|
|
|
* cygerver_transport.cc: Include new include files.
|
|
|
|
(transport_layer_base::transport_layer_base): Strip back to a stub.
|
|
|
|
(transport_layer_base::listen): Ditto.
|
|
|
|
(transport_layer_base::accept): Ditto.
|
|
|
|
(transport_layer_base::close): Ditto.
|
|
|
|
(transport_layer_base::read): Ditto.
|
|
|
|
(transport_layer_base::write): Ditto.
|
|
|
|
(transport_layer_base::connect): Ditto.
|
2002-05-02 12:13:48 +08:00
|
|
|
* cygserver_transport_pipes.cc: Include new header
|
2002-02-28 22:30:38 +08:00
|
|
|
"cygwin/cygserver_transport_pipes.h".
|
|
|
|
* cygserver_transport_sockets.cc: New file.
|
|
|
|
* dcrt0.cc: No need to include <sys/socket.h> now.
|
|
|
|
* fhandler_tty.cc: Ditto.
|
|
|
|
* tty.cc: Ditto.
|
|
|
|
* include/cygwin/cygserver_transport.h: Strip the base class to a stub.
|
|
|
|
Remove the cygserver_transport_pipes class.
|
|
|
|
* include/cygwin/cygserver_transport_pipes.h: New file.
|
|
|
|
* include/cygwin/cygserver_transport_sockets.h: New file.
|
|
|
|
|
|
|
|
Tue Sep 25 16:22:00 2001 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* autoload.cc: Add dynamic load statement for 'ImpersonateNamedPipeClient'.
|
|
|
|
* Makefile.in: Add new object files, and build instructions for cygserver.exe.
|
|
|
|
* cygwin.din: Export ftok, shmat, shmctl and shmget.
|
|
|
|
* dcrt0.cc: Additional includes for cygserver support.
|
|
|
|
(dll_crt0_1): Initialise the cygserver client.
|
|
|
|
* fhandler.h (fhandler_tty): New method cygserver_attach_tty.
|
|
|
|
* fhandler_tty.cc: Additional includes for cygserver support.
|
|
|
|
(fhandler_tty_slave::open): Attempt to use the cygserver when obtaining
|
|
|
|
handles from the parent process. On failure or 9x use the current method.
|
|
|
|
(fhandler_tty_slave::cygserver_attach_tty): New function.
|
|
|
|
* fork.cc (fork_child): Fixup shm memory mapped areas.
|
|
|
|
* pinfo.h: Declare fixup_shms_after_fork().
|
|
|
|
* security.h: Declare alloc_sd().
|
|
|
|
* tty.cc: Additonal includes to support cygserver.
|
|
|
|
(tty::common_init): Don't allow others to open us if the cygserver is running.
|
|
|
|
* winsup.h: Declare cygserver_running.
|
|
|
|
* cygserver.cc: New file.
|
|
|
|
* cygserver_client.cc: New file.
|
|
|
|
* cygserver_shm.cc: New file.
|
|
|
|
* cygserver_shm.h: New file.
|
|
|
|
* cygserver_transport.cc: New file.
|
|
|
|
* cygserver_transport_pipes.cc: New file.
|
|
|
|
* ipc.cc: New file.
|
|
|
|
* shm.cc: New file.
|
|
|
|
* include/cygwin/cygserver.h: New file.
|
|
|
|
* include/cygwin/cygserver_transport.h: New file.
|
|
|
|
* include/sys/ipc.h: New file.
|
|
|
|
* include/sys/shm.h: New file.
|
|
|
|
|
2002-02-28 21:50:41 +08:00
|
|
|
2002-02-28 Robert Collins <rbtcollins@hotmail.com>
|
|
|
|
|
|
|
|
* thread.cc (semaphore::TryWait): Set errno as required by posix 1003.1.
|
|
|
|
(__sem_wait): Ditto.
|
|
|
|
(__sem_trywait): Ditto.
|
|
|
|
|
2002-02-28 07:06:55 +08:00
|
|
|
2002-02-27 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* include/cygwin/version.h: Bump DLL minor number.
|
|
|
|
|
2002-02-26 01:47:51 +08:00
|
|
|
2002-02-23 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* cygwin.din (fstat64): New symbol.
|
|
|
|
(ftruncate64): Ditto.
|
|
|
|
(lseek64): Ditto.
|
|
|
|
(lstat64): Ditto.
|
|
|
|
(mmap64): Ditto.
|
|
|
|
(seekdir64): Ditto.
|
|
|
|
(stat64): Ditto.
|
|
|
|
(telldir64): Ditto.
|
|
|
|
(truncate64): Ditto.
|
|
|
|
* dir.cc (telldir64): New function.
|
|
|
|
(telldir): Call telldir64().
|
|
|
|
(seekdir64): New function.
|
|
|
|
(seekdir): Call seekdir64().
|
|
|
|
* fhandler.h: Redefine all methods using __off32_t to use __off64_t.
|
|
|
|
* fhandler.cc: Use __off64_t and struct __stat64 throughout.
|
|
|
|
* fhandler_clipboard.cc: Ditto.
|
|
|
|
* fhandler_disk_file.cc: Ditto.
|
|
|
|
* fhandler_dsp.cc: Ditto.
|
|
|
|
* fhandler_floppy.cc: Ditto.
|
|
|
|
* fhandler_mem.cc: Ditto.
|
|
|
|
* fhandler_random.cc: Ditto.
|
|
|
|
* fhandler_socket.cc: Ditto.
|
|
|
|
* fhandler_tape.cc: Ditto.
|
|
|
|
* fhandler_zero.cc: Ditto.
|
|
|
|
* pipe.cc: Ditto.
|
|
|
|
* glob.c: Ditto, call lstat64 and stat64 in Cygwin.
|
|
|
|
* mmap.cc: Use __off64_t throughout.
|
|
|
|
(mmap64): New function.
|
|
|
|
* sec_acl.cc (acl_worker): Use struct __stat64, call stat64 and lstat64.
|
|
|
|
* syscalls.cc (lseek64): New function.
|
|
|
|
(stat64_to_stat32): Ditto.
|
|
|
|
(fstat64): Ditto.
|
|
|
|
(stat64): Ditto.
|
|
|
|
(lstat64): Ditto.
|
|
|
|
(ftruncate64): Ditto.
|
|
|
|
(truncate64): Ditto.
|
|
|
|
(_fstat): Call fstat64.
|
|
|
|
(_stat): Call stat64.
|
|
|
|
(cygwin_lstat): Rename to avoid declaration problem. Call lstat64.
|
|
|
|
(stat_worker): Use struct __stat64.
|
|
|
|
(access): Ditto.
|
|
|
|
(ftruncate): Call ftruncate64.
|
|
|
|
(truncate): Call truncate64.
|
|
|
|
* wincap.cc: Set flag has_64bit_file_access appropriately.
|
|
|
|
* wincap.h: Add flag has_64bit_file_access.
|
|
|
|
* winsup.h (ILLEGAL_SEEK): Define as __off64_t.
|
|
|
|
(stat_dev): Declare using struct __stat64.
|
|
|
|
(stat_worker): Ditto.
|
|
|
|
* include/cygwin/stat.h (struct __stat32): Define if compiling Cygwin.
|
|
|
|
(struct __stat64): Ditto.
|
|
|
|
(struct stat): Revert definition with explicitly sized datatypes.
|
|
|
|
Eliminate sized field names.
|
|
|
|
* include/cygwin/types.h (blksize_t): New type.
|
|
|
|
(__blkcnt32_t): Ditto.
|
|
|
|
(__blkcnt64_t): Ditto.
|
|
|
|
(blkcnt_t): Ditto.
|
|
|
|
|
2002-02-23 03:33:41 +08:00
|
|
|
2002-02-22 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* sync.h (new_muto): Just accept an argument which denotes the name of
|
|
|
|
the muto. Use this argument to construct static storage.
|
|
|
|
* cygheap.cc (cygheap_init): Reflect above change.
|
|
|
|
* exceptions.cc (events_init): Ditto.
|
|
|
|
* malloc.cc (malloc_init): Ditto.
|
|
|
|
* path.cc (cwdstuff::init): Ditto.
|
|
|
|
* cygheap.h (cwdstuff): Change name of lock element to make it less
|
|
|
|
generic.
|
|
|
|
* path.cc (cwdstuff::get_hash): Ditto.
|
|
|
|
(cwdstuff::get_initial): Ditto.
|
|
|
|
(cwdstuff::set): Ditto.
|
|
|
|
(cwdstuff::get): Ditto.
|
|
|
|
* sigproc.cc (proc_subproc): Ditto.
|
|
|
|
|
|
|
|
* debug.cc (lock_debug): Change to method. Use method rather than
|
|
|
|
macro throughout.
|
|
|
|
|
|
|
|
* tty.h (tty_min::kill_pgrp): Declare new method.
|
|
|
|
* fhandler_termios.cc (tty_min::kill_pgrp): New method.
|
|
|
|
(fhandler_termios::line_edit): Use new method for killing process.
|
|
|
|
* dcrt0.cc (do_exit): Ditto.
|
|
|
|
|
|
|
|
* dtable.cc (dtable::get_debugger_info): New method for inheriting
|
|
|
|
dtable info from a debugger.
|
|
|
|
* tty.cc (tty_init): Attempt to grab file handle info from parent
|
|
|
|
debugger, if appropriate.
|
|
|
|
|
|
|
|
# dtable.cc (dtable::stdio_init): Make this a method.
|
|
|
|
(dtable::init_std_file_from_handle): Don't set fd unless it's not open.
|
|
|
|
(dtable::build_fhandler_from_name): Move name setting to
|
|
|
|
dtable::build_fhandler.
|
|
|
|
(dtable::build_fhandler): Add win32 name parameter.
|
|
|
|
* dcrt0.cc (dll_crt0_1): Change to use dtable stdio_init.
|
|
|
|
* dtable.h (dtable): Reflect build_fhandler parameter change.
|
|
|
|
* mmap.cc (mmap_record::alloc_fh): Don't set name parameter in
|
|
|
|
build_fhandler.
|
|
|
|
* net.cc (fdsock): Remove set_name call since it is now handled by
|
|
|
|
build_fhandler.
|
|
|
|
|
|
|
|
* sigproc.cc (proc_subproc): Release muto as early as possible.
|
|
|
|
|
2002-02-23 02:22:24 +08:00
|
|
|
2001-02-22 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* smallprint.c (rn): Allow long long values.
|
|
|
|
(__small_vsprintf): Add 'D', 'U' and 'X' formats for long long
|
|
|
|
parameters.
|
|
|
|
|
2002-02-20 06:06:50 +08:00
|
|
|
2002-02-19 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fhandler.cc (fhandler_base::puts_readahead): Remove default parameter
|
|
|
|
setting. Newer gcc's complain about this.
|
|
|
|
(fhandler_base::set_readahead_valid): Ditto.
|
|
|
|
* fhandler_dsp.cc (Audio::open): Ditto.
|
|
|
|
(fhandler_dev_dsp::open): Ditto.
|
|
|
|
|
2002-02-19 13:58:44 +08:00
|
|
|
2002-02-19 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* fork.cc (fork_parent): Use sec_user_nih to control process/thread
|
|
|
|
inheritance/permission.
|
|
|
|
* spawn.cc (spawn_guts): Ditto.
|
|
|
|
* security.cc (create_token): Initialize token so that it is not tested
|
|
|
|
for bogus value later. Use sec_user to control process/thread
|
|
|
|
creation.
|
|
|
|
* security.h (__sec_user): Rename declaration from sec_user.
|
|
|
|
(sec_user_nih): Declare here as inline function wrapper for __sec_user.
|
|
|
|
(sec_user): Ditto.
|
|
|
|
* sigproc.cc (czombies): Allocate a character array for zombies to
|
|
|
|
avoid constructor overhead
|
|
|
|
(extremely hackish, I know).
|
|
|
|
(cpchildren): Ditto.
|
|
|
|
(pchildren): New define.
|
|
|
|
(zombies): Ditto.
|
|
|
|
(getsem): Use sec_user_nih to control semaphore inheritance/permission.
|
|
|
|
|
2002-02-17 12:59:55 +08:00
|
|
|
2002-02-16 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* times.cc (hires::prime): Restore thread priority on failure
|
|
|
|
condition.
|
|
|
|
|
|
|
|
* uinfo.cc (uinfo_init): Use more robust method for determining if
|
|
|
|
process was invoked from a non-cygwin process.
|
|
|
|
|
|
|
|
* sync.h (muto::init): Eliminate "inheritance" parameter.
|
|
|
|
(new_muto): Reflect removal of parameter.
|
|
|
|
* sync.cc (muto::init): Ditto.
|
|
|
|
* cygheap.cc (cygheap_init): Ditto.
|
|
|
|
* debug.cc (threadname_init): Ditto.
|
|
|
|
* exceptions.cc (events_init): Ditto.
|
|
|
|
* malloc.cc (malloc_init): Ditto.
|
|
|
|
* path.cc (cwdstuff::init): Ditto.
|
|
|
|
* sigproc.cc (sigproc_init): Ditto.
|
|
|
|
|
2002-02-18 06:00:28 +08:00
|
|
|
* grp.cc (group_lock): Use different method for locking with static
|
|
|
|
member.
|
2002-02-17 12:59:55 +08:00
|
|
|
(read_etc_group): REALLY ensure that read lock mutex is released.
|
2002-02-18 06:00:28 +08:00
|
|
|
* passwd.cc (passwd_lock): Use different method for locking with static
|
|
|
|
member.
|
|
|
|
(read_etc_passwd): REALLY ensure that read lock mutex is released.
|
2002-02-17 12:59:55 +08:00
|
|
|
|
|
|
|
* shared.cc (sec_user): Correct reversed inheritance test.
|
|
|
|
|
2002-02-16 01:06:40 +08:00
|
|
|
2002-02-15 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* hires.h (hires::usecs): Rename from utime. Accept an argument.
|
|
|
|
* strace.cc (strace::microseconds): Use hires class for calculating
|
|
|
|
times.
|
|
|
|
* sync.h (new_muto): Use NO_COPY explicitly in declaration.
|
|
|
|
* times.cc (gettimeofday): Reflect change in usecs argument.
|
|
|
|
(hires::usecs): Ditto. Changed name from utime.
|
|
|
|
* winsup.h (NO_COPY): Add nocommon attribute to force setting aside
|
|
|
|
space for variable.
|
|
|
|
* regcomp.c (REQUIRE): Add a void cast to bypass a warning.
|
|
|
|
|
2002-02-15 15:05:05 +08:00
|
|
|
2002-02-15 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* hires.h: New file.
|
|
|
|
* times.cc (gettimeofday): Use hires class for calculating current time.
|
|
|
|
(hires::prime): New method.
|
|
|
|
(hires::utime): Ditto.
|
|
|
|
|
2002-02-15 05:31:23 +08:00
|
|
|
2002-02-14 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* include/sys/cygwin.h (cygwin_getinfo_types): New CW_STRACE_ACTIVE.
|
|
|
|
* external.cc (cygwin_internal): Handle CW_STRACE_ACTIVE.
|
|
|
|
|
2002-02-15 05:20:06 +08:00
|
|
|
2002-02-14 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* exceptions.cc (unused_sig_wrapper): Eliminate unused parameter to
|
|
|
|
asm.
|
|
|
|
* external.cc (cygwin_internal): Change CW_STRACE_ON to
|
|
|
|
CW_STRACE_TOGGLE.
|
|
|
|
* strace.cc (strace::hello): Toggle strace on and off.
|
|
|
|
* sync.cc (muto::init): Renamed from constructor.
|
|
|
|
* sync.h (muto::new): Delete.
|
|
|
|
(muto::delete): Ditto.
|
|
|
|
(new_muto): Simplify. Use muto.init for nearly everything.
|
|
|
|
* uinfo.cc (uinfo_init): Avoid closing a NULL handle.
|
|
|
|
* include/sys/cygwin.h (cygwin_getinfo_types): Rename CW_STRACE_OFF to
|
|
|
|
CW_STRACE_TOGGLE. Delete CW_STRACE_OFF.
|
|
|
|
* include/sys/strace.h (strace): Add "inited" field.
|
|
|
|
|
2002-02-13 05:21:32 +08:00
|
|
|
2001-02-12 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* include/cygwin/acl.h: Fix definition of aclent_t.
|
|
|
|
|
2002-02-11 05:26:27 +08:00
|
|
|
2002-02-10 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* Makefile.in (DLL_OFILES): Consolidate object files.
|
|
|
|
|
* (child_info.h, cygheap.h, dcrt0.cc, dir.cc, fhandler.cc, fhandler.h,
fhandler_clipboard.cc, fhandler_disk_file.cc, fhandler_dsp.cc,
fhandler_floppy.cc, fhandler_mem.cc, fhandler_random.cc,
fhandler_tape.cc, fhandler_zero.cc, grp.cc, mmap.cc, passwd.cc,
pinfo.cc, pinfo.h, pipe.cc, sec_acl.cc, sec_helper.cc, security.cc,
security.h, spawn.cc, syscalls.cc, thread.h, uinfo.cc, winsup.h):
Change usage of uid_t to __uid16_t, gid_t to __gid16_t and
off_t to __off32_t throughout. Use INVALID_UID, INVALID_GID and
INVALID_SEEK instead casting -1 to the appropriate type.
* winsup.h: Define INVALID_UID, INVALID_GID and INVALID_SEEK.
* include/cygwin/acl.h: Define internal __aclent16_t and __aclent32_t
types. Don't declare acl functions when compiling Cygwin.
* include/cygwin/grp.h: Declare getgrgid() and getgrnam() with
correct types for internal usage.
2002-02-10 21:38:51 +08:00
|
|
|
2002-02-10 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
* child_info.h, cygheap.h, fhandler_clipboard.cc, fhandler_dsp.cc,
fhandler_floppy.cc, fhandler_mem.cc, fhandler_random.cc,
fhandler_tape.cc, fhandler_zero.cc, grp.cc, mmap.cc, passwd.cc,
pinfo.cc, pinfo.h, pipe.cc, sec_acl.cc, sec_helper.cc, security.cc,
security.h, thread.h, uinfo.cc, include/cygwin/acl.h: Fix copyright.
2002-02-10 21:50:13 +08:00
|
|
|
* child_info.h, cygheap.h, fhandler_clipboard.cc, fhandler_dsp.cc,
|
|
|
|
fhandler_floppy.cc, fhandler_mem.cc, fhandler_random.cc,
|
|
|
|
fhandler_tape.cc, fhandler_zero.cc, grp.cc, mmap.cc, passwd.cc,
|
|
|
|
pinfo.cc, pinfo.h, pipe.cc, sec_acl.cc, sec_helper.cc, security.cc,
|
|
|
|
security.h, thread.h, uinfo.cc, include/cygwin/acl.h: Fix copyright.
|
|
|
|
|
|
|
|
2002-02-10 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* child_info.h, cygheap.h, dcrt0.cc, dir.cc, fhandler.cc, fhandler.h,
|
* (child_info.h, cygheap.h, dcrt0.cc, dir.cc, fhandler.cc, fhandler.h,
fhandler_clipboard.cc, fhandler_disk_file.cc, fhandler_dsp.cc,
fhandler_floppy.cc, fhandler_mem.cc, fhandler_random.cc,
fhandler_tape.cc, fhandler_zero.cc, grp.cc, mmap.cc, passwd.cc,
pinfo.cc, pinfo.h, pipe.cc, sec_acl.cc, sec_helper.cc, security.cc,
security.h, spawn.cc, syscalls.cc, thread.h, uinfo.cc, winsup.h):
Change usage of uid_t to __uid16_t, gid_t to __gid16_t and
off_t to __off32_t throughout. Use INVALID_UID, INVALID_GID and
INVALID_SEEK instead casting -1 to the appropriate type.
* winsup.h: Define INVALID_UID, INVALID_GID and INVALID_SEEK.
* include/cygwin/acl.h: Define internal __aclent16_t and __aclent32_t
types. Don't declare acl functions when compiling Cygwin.
* include/cygwin/grp.h: Declare getgrgid() and getgrnam() with
correct types for internal usage.
2002-02-10 21:38:51 +08:00
|
|
|
fhandler_clipboard.cc, fhandler_disk_file.cc, fhandler_dsp.cc,
|
|
|
|
fhandler_floppy.cc, fhandler_mem.cc, fhandler_random.cc,
|
|
|
|
fhandler_tape.cc, fhandler_zero.cc, grp.cc, mmap.cc, passwd.cc,
|
|
|
|
pinfo.cc, pinfo.h, pipe.cc, sec_acl.cc, sec_helper.cc, security.cc,
|
* child_info.h, cygheap.h, fhandler_clipboard.cc, fhandler_dsp.cc,
fhandler_floppy.cc, fhandler_mem.cc, fhandler_random.cc,
fhandler_tape.cc, fhandler_zero.cc, grp.cc, mmap.cc, passwd.cc,
pinfo.cc, pinfo.h, pipe.cc, sec_acl.cc, sec_helper.cc, security.cc,
security.h, thread.h, uinfo.cc, include/cygwin/acl.h: Fix copyright.
2002-02-10 21:50:13 +08:00
|
|
|
security.h, spawn.cc, syscalls.cc, thread.h, uinfo.cc, winsup.h:
|
* (child_info.h, cygheap.h, dcrt0.cc, dir.cc, fhandler.cc, fhandler.h,
fhandler_clipboard.cc, fhandler_disk_file.cc, fhandler_dsp.cc,
fhandler_floppy.cc, fhandler_mem.cc, fhandler_random.cc,
fhandler_tape.cc, fhandler_zero.cc, grp.cc, mmap.cc, passwd.cc,
pinfo.cc, pinfo.h, pipe.cc, sec_acl.cc, sec_helper.cc, security.cc,
security.h, spawn.cc, syscalls.cc, thread.h, uinfo.cc, winsup.h):
Change usage of uid_t to __uid16_t, gid_t to __gid16_t and
off_t to __off32_t throughout. Use INVALID_UID, INVALID_GID and
INVALID_SEEK instead casting -1 to the appropriate type.
* winsup.h: Define INVALID_UID, INVALID_GID and INVALID_SEEK.
* include/cygwin/acl.h: Define internal __aclent16_t and __aclent32_t
types. Don't declare acl functions when compiling Cygwin.
* include/cygwin/grp.h: Declare getgrgid() and getgrnam() with
correct types for internal usage.
2002-02-10 21:38:51 +08:00
|
|
|
Change usage of uid_t to __uid16_t, gid_t to __gid16_t and
|
|
|
|
off_t to __off32_t throughout. Use INVALID_UID, INVALID_GID and
|
|
|
|
INVALID_SEEK instead casting -1 to the appropriate type.
|
|
|
|
* winsup.h: Define INVALID_UID, INVALID_GID and INVALID_SEEK.
|
|
|
|
* include/cygwin/acl.h: Define internal __aclent16_t and __aclent32_t
|
|
|
|
types. Don't declare acl functions when compiling Cygwin.
|
|
|
|
* include/cygwin/grp.h: Declare getgrgid() and getgrnam() with
|
|
|
|
correct types for internal usage.
|
|
|
|
|
2002-02-10 19:15:56 +08:00
|
|
|
2002-02-10 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
Patch suggested by Pierre A. Humblet <Pierre.Humblet@ieee.org>:
|
|
|
|
* uinfo.cc (internal_getlogin): Try evaluating user by SID even if
|
|
|
|
ntsec is off.
|
|
|
|
(uinfo_init): Set primary group even if ntsec is off.
|
|
|
|
|
2002-02-10 04:39:55 +08:00
|
|
|
2002-02-09 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* include/cygwin/grp.h: New file.
|
|
|
|
* include/cygwin/stat.h: Ditto.
|
|
|
|
* include/cygwin/types.h: Add definitions for __off32_t,
|
|
|
|
__off64_t, off_t, __uid16_t, __uid32_t, uid_t, __gid16_t,
|
|
|
|
__gid32_t and gid_t.
|
|
|
|
* include/sys/cygwin.h: Use correct uid and gid types.
|
|
|
|
|
2002-02-09 18:40:48 +08:00
|
|
|
2002-02-09 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* dtable.cc (dtable::dup2): Revert previous patch.
|
|
|
|
* fhandler.h: Ditto.
|
|
|
|
(fhandler_socket::recv): Define new method.
|
|
|
|
(fhandler_socket::send): Ditto.
|
|
|
|
* fhandler_socket.cc (fhandler_socket::recv): New method.
|
|
|
|
(fhandler_socket::send): Ditto.
|
|
|
|
(fhandler_socket::read): Call fhandler_socket::recv() now.
|
|
|
|
(fhandler_socket::write): Call fhandler_socket::send() now.
|
|
|
|
* net.cc (class wsock_event): Move definition to wsock_event.h.
|
|
|
|
(fdsock): Revert previous patch.
|
|
|
|
(cygwin_recv): Move implementation to fhandler_socket::recv().
|
|
|
|
(cygwin_send): Move implementation to fhandler_socket::send().
|
|
|
|
* wsock_event.h: New file.
|
|
|
|
|
2002-02-09 17:01:18 +08:00
|
|
|
2002-02-06 Alexander Gottwald <Alexander.Gottwald@s1999.tuchemnitz.de>
|
|
|
|
|
|
|
|
* net.cc (get_2k_ifconf): Create interface entries for tokenring cards.
|
|
|
|
|
2002-02-08 19:54:10 +08:00
|
|
|
2002-02-08 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* dtable.cc (dtable::dup2): Store fd for fhandler_socket.
|
|
|
|
* fhandler.h (fhandler_base::set_fd): New virtual method.
|
|
|
|
(fhandler_base::get_fd): Ditto.
|
|
|
|
(fhandler_socket::set_fd): Ditto.
|
|
|
|
(fhandler_socket::get_fd): Ditto.
|
|
|
|
* fhandler_socket.cc (fhandler_socket::read): Call cygwin_recv instead
|
|
|
|
of native Winsock recv.
|
|
|
|
(fhandler_socket::write): Call cygwin_send instead of native Winsock
|
|
|
|
send.
|
|
|
|
* net.cc (fdsock): Store fd in fhandler_socket.
|
|
|
|
|
2002-02-07 23:04:32 +08:00
|
|
|
2002-02-07 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* net.cc (cygwin_getsockname): Fix handling of NULL sun_path.
|
|
|
|
|
2002-01-29 21:39:41 +08:00
|
|
|
2002-01-29 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* net.cc (getdomainname): Fix registry key for 9x systems, too.
|
|
|
|
|
2002-01-29 21:23:09 +08:00
|
|
|
2002-01-29 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* net.cc (getdomainname): Fix registry key for NT systems.
|
|
|
|
|
2002-01-29 10:02:03 +08:00
|
|
|
2002-01-28 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* external.cc (cygwin_internal): Initialize various internal settings
|
|
|
|
if required to allow use of some things from user loaded DLL.
|
|
|
|
(CW_STRACE_ON): Add new feature.
|
|
|
|
(CW_CYGWIN_PID_TO_WINPID): Ditto.
|
|
|
|
* pinfo.cc (set_myself): Call "strace.hello" to initiate possible
|
|
|
|
strace session.
|
|
|
|
(pinfo::init): Guard against dereferencing uninitialized myself.
|
|
|
|
* sigproc.cc (wait_sig): Call strace.hello() when __SIGTRACE "signal"
|
|
|
|
received.
|
|
|
|
* strace.cc (strace::hello): New method.
|
|
|
|
* wincap.cc (wincapc::init): Avoid initializing if already initialized.
|
|
|
|
* wincap.h (wincapc::wincapc): New method.
|
|
|
|
* include/sys/cygwin.h: Add new CW_ enums. Kludge typedefs of
|
|
|
|
{g,u}id_t if required.
|
|
|
|
* strace.h (strace::hello): Declare new method.
|
|
|
|
|
2002-01-29 02:03:40 +08:00
|
|
|
2002-01-28 Earnie Boyd <earnie@users.sf.net>
|
|
|
|
|
|
|
|
* include/sys/strace.h (_STRACE_ON): Define.
|
|
|
|
(_STRACE_OFF): Ditto.
|
|
|
|
|
2002-01-25 05:39:09 +08:00
|
|
|
2002-01-24 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* speclib: Ensure that temporary def file is removed.
|
|
|
|
|
2002-01-24 02:46:19 +08:00
|
|
|
2002-01-23 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* speclib: Use rm -f to remove temp file just to quiet any potential
|
|
|
|
warnings.
|
|
|
|
|
2002-01-24 02:35:03 +08:00
|
|
|
2002-01-23 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* security.cc (create_token): Use sec_user() to create
|
2002-01-24 02:37:58 +08:00
|
|
|
SECURITY_ATTRIBUTES structure for primary token. Use
|
|
|
|
MAXIMUM_ALLOWED access rights instead of TOKEN_ALL_ACCESS.
|
2002-01-24 02:35:03 +08:00
|
|
|
|
2002-01-24 00:50:17 +08:00
|
|
|
2002-01-23 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* path.cc (symlink): Fix check for already existing file.
|
|
|
|
|
2002-01-22 11:48:16 +08:00
|
|
|
2002-01-21 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* cygmagic: Suppress error output when figuring out if sum takes an
|
|
|
|
option.
|
|
|
|
|
2002-01-22 11:02:00 +08:00
|
|
|
2002-01-21 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* cygmagic: Attempt to figure out if sum takes an option.
|
|
|
|
|
2002-01-22 09:40:11 +08:00
|
|
|
2002-01-21 DJ Delorie <dj@redhat.com>
|
|
|
|
|
|
|
|
* Makefile.in (libpthread.a): Pass the assembler also.
|
2002-05-02 12:13:48 +08:00
|
|
|
(libm.a): Ditto.
|
2002-01-22 09:40:11 +08:00
|
|
|
(libc.a): Ditto.
|
|
|
|
* speclib: Specify the assembler to dlltool.
|
|
|
|
|
2002-01-22 04:55:59 +08:00
|
|
|
2002-01-21 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* include/cygwin/version.h: Bump DLL minor number.
|
|
|
|
|
2002-01-22 04:51:30 +08:00
|
|
|
2002-01-21 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
2002-01-22 04:52:33 +08:00
|
|
|
* grp.cc (getgrgid): Don't return default gid entry when ntsec is on.
|
2002-01-22 04:51:30 +08:00
|
|
|
* syscalls.cc (setegid): Don't set primary group in process token.
|
|
|
|
|
2002-01-22 01:42:08 +08:00
|
|
|
2002-01-21 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* speclib: Don't use /dev/null as DLL name. Just default to what's
|
|
|
|
already in .def file.
|
|
|
|
|
|
|
|
2002-01-21 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* exceptions.cc (sig_handle): Remove last vestiges of SA_NOCLDSTOP code
|
|
|
|
which caused SIGCHLD to be ignored.
|
|
|
|
|
2002-01-21 11:36:16 +08:00
|
|
|
2002-01-20 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* include/cygwin/version.h: Bump DLL minor number.
|
|
|
|
|
2002-01-21 11:15:24 +08:00
|
|
|
2002-01-20 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* syscalls.cc (regfree): Make dll_export.
|
|
|
|
|
2002-01-21 07:13:03 +08:00
|
|
|
2002-01-20 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* exceptions.cc (ctrl_c_handler): Convert windows pid to cygwin pid
|
|
|
|
when detecting if we should actually handle CTRL-C.
|
|
|
|
|
2002-01-20 11:39:36 +08:00
|
|
|
2002-01-19 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* Makefile.in (new-cygwin1.dll): Revert previous change. libsupc++.a
|
|
|
|
is only available in libstdc++-v3.
|
|
|
|
|
2002-01-20 07:57:45 +08:00
|
|
|
2002-01-19 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* exceptions.cc (sig_handle_tty_stop): Don't send SIGCHLD if parent
|
|
|
|
doesn't want it.
|
|
|
|
(sig_handle): Don't check for SA_NOCLDSTOP here. We don't have enough
|
|
|
|
information.
|
|
|
|
|
2002-01-20 07:06:28 +08:00
|
|
|
2002-01-19 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* include/cygwin/version.h: Bump DLL minor number.
|
|
|
|
|
2002-01-20 02:15:23 +08:00
|
|
|
2002-01-19 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* Makefile.in (new-cygwin1.dll): Just use -lsupc++ for link.
|
|
|
|
* sigproc.cc (proc_exists): Change existence criteria.
|
|
|
|
* sync.h (new_muto): Add volatile to definition to avoid gcc
|
|
|
|
optimization problems.
|
|
|
|
|
2002-01-20 00:17:59 +08:00
|
|
|
2002-01-19 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* include/cygwin/version.h: Bump API minor version to 51.
|
|
|
|
|
2002-01-20 00:11:00 +08:00
|
|
|
2002-01-19 Mark Bradshaw <bradshaw@staff.crosswalk.com>
|
|
|
|
|
2002-05-02 12:13:48 +08:00
|
|
|
* cygwin.din: Add recvmsg and sendmsg.
|
|
|
|
* net.cc: Add cygwin_recvmsg and cygwin_sendmsg.
|
|
|
|
* /usr/include/sys/socket.h: Add recvmsg and sendmsg.
|
2002-01-20 00:11:00 +08:00
|
|
|
|
2002-01-20 00:06:11 +08:00
|
|
|
2002-01-19 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* security.cc (create_token): Close processes token handle as soon
|
|
|
|
as it's not used anymore.
|
|
|
|
|
2002-01-17 18:39:37 +08:00
|
|
|
2002-01-17 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* Makefile.in: Add fnmatch.o to DLL_OFILES.
|
|
|
|
* cygwin.din: Add fnmatch export symbol.
|
|
|
|
* fnmatch.c: New file.
|
|
|
|
* include/fnmatch.h: Ditto.
|
|
|
|
* include/cygwin/version.h: Bump API minor version to 50.
|
|
|
|
|
2002-01-16 04:29:09 +08:00
|
|
|
2002-01-15 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* path.cc (fchdir): Call chdir with full windows path.
|
|
|
|
|
2002-01-15 04:39:59 +08:00
|
|
|
2002-01-14 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* dir.cc: Use INVALID_FILE_ATTRIBUTES instead of "(DWORD) -1"
|
|
|
|
for file attributes throughout.
|
|
|
|
* fhandler.cc: Ditto.
|
|
|
|
* fhandler_disk_file.cc: Ditto.
|
|
|
|
* path.cc: Ditto.
|
|
|
|
* path.h: Ditto.
|
|
|
|
* syscalls.cc: Ditto.
|
|
|
|
* times.cc (utimes): Use path_conv::isdir() instead of explicit
|
|
|
|
GetFileAttributes() call.
|
|
|
|
|
2002-01-14 00:55:32 +08:00
|
|
|
2002-01-13 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* dcrt0.cc (multiple_cygwin_problem): Clarify logic and make
|
|
|
|
CYGWIN_MISMATCH_OK more powerful.
|
|
|
|
|
2002-01-11 10:24:06 +08:00
|
|
|
2002-01-10 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* exceptions.cc (sig_handle): Accept a second argument indicating
|
|
|
|
whether the signal came from this process or not.
|
|
|
|
* sigproc.h: Reflect sig_handle arg change.
|
|
|
|
* signal.cc (kill_pgrp): Add sigframe info.
|
|
|
|
(abort): New function. Eliminates newlib function of same name.
|
|
|
|
* sigproc.cc (wait_sig): Pass "signal from this process" value as arg
|
|
|
|
2.
|
|
|
|
|
2002-01-10 21:24:28 +08:00
|
|
|
2002-01-10 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* syscalls.cc (pathconf): Guard _PC_PATH_MAX branch against invalid
|
|
|
|
file parameter.
|
|
|
|
|
2002-01-10 11:21:27 +08:00
|
|
|
2002-01-09 Christopher Faylor <cgf@redhat.com>
|
2002-05-02 12:13:48 +08:00
|
|
|
Robert Collins <rbtcollins@hotmail.com>
|
2002-01-10 11:21:27 +08:00
|
|
|
|
|
|
|
* exceptions.cc (early_stuff_init): Rename from misnamed
|
|
|
|
set_console_handler.
|
|
|
|
(ctrl_c_handler): Attempt to work around potential signal duplication
|
|
|
|
during process startup.
|
|
|
|
(sig_handle): Ignore SIGINT when we're just an "exec stub".
|
|
|
|
* spawn.cc (spawn_guts): Store pid of spawned process in global for use
|
|
|
|
by ctrl_c_handler.
|
|
|
|
* dcrt0.cc (dll_crt0_1): Call renamed initialization function.
|
|
|
|
* winsup.h: Reflect function name change.
|
|
|
|
|
2002-01-10 04:57:55 +08:00
|
|
|
2002-01-08 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* net.cc (cygwin_accept): Set sun_path for newly connected socket.
|
|
|
|
|
2002-01-08 12:51:01 +08:00
|
|
|
2002-01-07 Ralf Habacker <Ralf.Habacker@freenet.de>
|
|
|
|
|
|
|
|
* Makefile.in: Add uninstall target.
|
|
|
|
|
2002-01-08 06:18:36 +08:00
|
|
|
2002-01-07 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* sigproc.cc (getsem): Clean up debugging output.
|
|
|
|
|
2002-01-08 00:47:12 +08:00
|
|
|
2002-01-07 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* sigproc.cc (getsem): Set errno when unable to create own semaphore.
|
|
|
|
Reorganize to make clearer that error should only come from initial
|
|
|
|
creation of process semaphore.
|
|
|
|
|
2002-01-07 01:29:41 +08:00
|
|
|
2002-01-06 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* dtable.cc (dtable::init_std_file_from_handle): Add some defensive
|
|
|
|
code to invalid handle case.
|
|
|
|
|
2002-01-06 17:28:13 +08:00
|
|
|
2002-01-06 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* ioctl.cc (ioctl): Make third argument optional.
|
|
|
|
* include/sys/ioctl.h: Ditto in declaration.
|
|
|
|
* dtable.cc (dtable::init_std_file_from_handle): Revert previous
|
|
|
|
bogus patch.
|
|
|
|
* window.cc (WndProc): Raise SIGURG instead of SIGIO in case of FD_OOB
|
|
|
|
message.
|
|
|
|
|
2002-01-06 11:32:32 +08:00
|
|
|
2002-01-05 Christopher Faylor <cgf@redhat.com>
|
2002-01-06 06:25:34 +08:00
|
|
|
|
2002-01-06 11:32:32 +08:00
|
|
|
* dir.cc (opendir): Guarantee release of alloced fhandler structure on
|
|
|
|
error.
|
2002-01-06 06:25:34 +08:00
|
|
|
|
2002-01-06 11:32:32 +08:00
|
|
|
2002-01-05 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* exceptions.cc (sig_handle): Set default action for SIGURG to SIG_IGN.
|
|
|
|
|
|
|
|
2002-01-05 Corinna Vinschen <corinna@vinschen.de>
|
2002-01-06 02:42:52 +08:00
|
|
|
|
|
|
|
* dtable.cc (dtable::init_std_file_from_handle): Don't treat NULL
|
|
|
|
handle as errorneous.
|
|
|
|
|
2002-01-05 07:29:58 +08:00
|
|
|
2002-01-04 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* cygmagic: Change logic for equality test.
|
|
|
|
|
2002-01-05 03:06:01 +08:00
|
|
|
2002-01-04 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
|
|
|
* dir.cc (opendir): Don't attempt to call sub-opendir if ENOENT.
|
|
|
|
|
2002-01-06 11:32:32 +08:00
|
|
|
2002-01-04 Corinna Vinschen <corinna@vinschen.de>
|
2002-01-05 00:56:53 +08:00
|
|
|
|
|
|
|
* net.cc: Replace usage of AF_UNIX by Posix compliant AF_LOCAL
|
|
|
|
throughout.
|
|
|
|
(socketpair): Explicitly allow SOCK_STREAM and SOCK_DGRAM socket types
|
|
|
|
in families AF_UNIX and AF_LOCAL. Explicitly allow PF_UNSPEC, PF_LOCAL
|
|
|
|
and PF_INET protocols. Return error otherwise. Implement datagram
|
|
|
|
socketpairs.
|
|
|
|
|
2002-01-02 08:06:35 +08:00
|
|
|
2002-01-01 Christopher Faylor <cgf@redhat.com>
|
|
|
|
|
2002-05-02 12:13:48 +08:00
|
|
|
* speclib: Remove temp files automatically.
|
2002-01-02 08:06:35 +08:00
|
|
|
|
2002-01-02 00:25:31 +08:00
|
|
|
2002-01-01 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
* fhandler.h (fhandler_socket::sun_path): New private member.
|
|
|
|
(fhandler_socket::set_sun_path): New method.
|
|
|
|
(fhandler_socket::get_sun_path): Ditto.
|
|
|
|
* fhandler_socket.cc (fhandler_socket::fhandler_socket): Initialize
|
|
|
|
sun_path to NULL.
|
|
|
|
(fhandler_socket::~fhandler_socket): Free sun_path if needed.
|
|
|
|
(fhandler_socket::set_sun_path): New method.
|
|
|
|
* net.cc (cygwin_bind): Set sun_path to path of local socket file.
|
|
|
|
(cygwin_getsockname): Add code to return correct sockaddr for unix
|
|
|
|
domain sockets.
|