summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* * cygheap.h: Move `token' and `impersonated' from class _pinfoCorinna Vinschen2000-11-159-41/+55
| | | | | | | | | | | | | to class cygheap_user. * pinfo.h: Ditto. * fork.cc (fork_child): Change usage of `token' and `impersonated' accordingly. (fork_parent): Ditto. * security.cc (cygwin_set_impersonation_token): Ditto. * sigproc.cc (proc_subproc): Ditto. * spawn.cc (spawn_guts): Ditto. * syscalls.cc (seteuid): Ditto. * uinfo.cc (uinfo_init): Ditto.
* Correct date and style of last entryHans-Peter Nilsson2000-11-151-1/+1
|
* * demangle.h: Add gnat and java demangle styles.Hans-Peter Nilsson2000-11-152-2/+13
|
* * spawn.cc (spawn_guts): Revert patch to ignore chroot settingsCorinna Vinschen2000-11-152-6/+6
| | | | on creating native Win32 environment.
* * fork.cc (slow_pid_reuse): Off-by-one.Christopher Faylor2000-11-152-4/+10
|
* Throughout use myself->ppid_handle rather than parent_alive.Christopher Faylor2000-11-1513-119/+144
| | | | | | | | | | | | | | | | * child_info.h (child_info): Eliminate parent_alive. * dcrt0.cc (dll_crt0_1): Call fork_init for debugging pid creation. * fork.cc (fork_child): Reflect change to fixup_mmaps_after_fork arguments. (slow_pid_reuse): New function to grab last 'n' pids to prevent pid reuse. (fork_parent): Move last_fork_proc into slow_pid_reuse. Handle fork_pids debugging. Eliminate unnecessary call to set_child_mmap_ptr. (fork_init): New debugging function. * mmap.cc (fixup_mmaps_after_fork): Renamed from recreate_mmaps_after_fork. Rely on copied data after a fork. (set_child_mmap_ptr): Eliminate. * pinfo.h (_pinfo): Eliminate parent_alive, mmap_ptr and reflect above changes. * spawn.cc (spawn_guts): Eliminate vestiges of "old way" of sending new hProc to parent process.
* Fix formatting.Corinna Vinschen2000-11-151-1/+1
|
* * cygheap.cc (cygheap_root::cygheap_root): New function.Corinna Vinschen2000-11-1516-138/+287
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (cygheap_root::~cygheap_root): Ditto. (cygheap_root::operator=): Ditto. (cygheap_user::~cygheap_user): Ditto. (cygheap_user::set_name): Ditto. (cygheap_user::set_logsrv): Ditto. (cygheap_user::set_domain): Ditto. (cygheap_user::set_sid): Ditto. * cygheap.h (cygheap_root): New class. (cygheap_user): Ditto. (init_cygheap): Change type of `root' member to cygheap_root. Add `user' member. * dir.cc (opendir): Use new `cygheap_root' class. * dcrt0.cc (dll_crt0_1): Use new `cygheap_user' class. * fork.cc (fork_parent): Ditto. * grp.cc (getgroups): Ditto. * passwd.cc (search_for): Ditto. * path.cc: Use new `cygheap_root' class throughout. * pinfo.h (_pinfo): Remove `use_psid'. Move `username', `psid', `logsrv', `domain', `orig_{uid,gid}' and `real_{uid,gid}' to cygheap_user class. * security.cc: Use new `cygheap_user' class throughout. * shared.cc (sec_user): Ditto. * sigproc.cc (proc_subproc): Remove copy statements for user related information moved to `cygheap_user' class. * spawn.cc (spawn_guts): Invalidate current chroot settings when creating Windows environment. Use new `cygheap_user' class. * syscalls.cc: Use new `cygheap_user' class throughout. * uinfo.cc: Ditto. * uinfo.cc (internal_getlogin): Change parameters to reflect the move of user information to cygheap.
* * dir.cc (rewinddir): Always set __d_position = 0, so nextCorinna Vinschen2000-11-142-1/+6
| | | | call to readdir() will restart the directory scan.
* * cygheap.h (init_cygheap): New struct holding values that live in the CygwinChristopher Faylor2000-11-1412-87/+122
| | | | | | | | | | | | | | | | | | | | | heap. * child_info.h (child_info): Change pointer type of cygheap to init_cygheap. * cygheap.cc (init_cheap): Point cygheap_max after contents of cygheap. Move some stuff into cygheap.h. * dir.cc (opendir): Change to use root and rootlen in cygheap rather than in myself. (mkdir): Change to use umask in cygheap rather than in myself. * path.cc: Ditto, throughout. * syscalls.cc (_open): Ditto. Change to use umask in cygheap rather than in myself. (chroot): Change to allocate root dir on the cygwin heap. (umask): Change to use umask in cygheap rather than in myself. (cygwin_bind): Ditto. * sigproc.cc (proc_subproc): Don't copy umask or root stuff as this happens automatically now. * pinfo.h (_pinfo): Migrate stuff out of here and into init_cheap. * dcrt0.cc (dll_crt0_1): Call cygheap_init later in startup for first cygwin process.
* * path.cc (get_device_number): Allow /dev/ttySn to designate a com port.Christopher Faylor2000-11-136-6/+13
|
* * path.h: Add __attribute__ ((regparm(x))) to commonly used functions.Christopher Faylor2000-11-125-12/+17
| | | | | | * pinfo.h: Ditto. * sigproc.h: Ditto. * sync.h: Ditto.
* * dcrt0.cc: New global variable `ignore_case_with_glob'.Christopher Faylor2000-11-114-10/+75
| | | | | | | | (dll_crt0_1): Disable case-insensitive globbing before calling `main'. * environ.cc (glob_init): New static function to set or clear `ignore_case_with_glob'. (known): Changed "glob" entry to call `glob_init'. * glob.c (match): Use case-insensitive globbing if needed.
* remove include/rapi.hChristopher Faylor2000-11-091-64/+0
|
* * dir.cc (readdir): Avoid reading from the beginning whenCorinna Vinschen2000-11-092-1/+7
| | | | readdir is called after a previous call has returned NULL.
* Increase cygwin heap size.Christopher Faylor2000-11-091-1/+1
|
* * select.cc (peek_pipe): Deal with pending newline in pty_master.Christopher Faylor2000-11-092-5/+20
|
* * mount.cc (main): Call show_cygdrive_info instead of show_cygdrive_prefixes.Christopher Faylor2000-11-082-10/+24
| | | | | | | * mount.cc (show_cygdrive_prefixes): Remove function. * mount.cc (show_cygdrive_info): New function. Actually, show_cygdrive_info is really an enhanced version of show_cygdrive_prefixes renamed to show_cygdrive_info that also displays the user and system flags.
* * environ.cc (_addenv): malloc space for setenv if cygwin1.dll is used inChristopher Faylor2000-11-088-9/+88
| | | | | | | | | | | | | | | | | | conjunction with older binaries. (environ_init): Ditto. * external.cc (get_cygdrive_info): New function. * external.cc (get_cygdrive_prefixes): Change to use get_cygdrive_info but toss the user and system flags. * external.cc (cygwin_internal): Add new CW_GET_CYGDRIVE_INFO case. * path.cc (mount_info::get_cygdrive_prefixes): Remove method. * path.cc (mount_info::get_cygdrive_info): New method. Actually, get_cygdrive_info is really an enhanced version of get_cygdrive_prefixes renamed to get_cygdrive_info that also gets the user and system flags. * shared_info.h (get_cygdrive_prefixes): Remove method. * shared_info.h (get_cygdrive_info): New method. * include/cygwin/version.h: Bump minor API version due to adding CW_GET_CYGDRIVE_INFO to cygwin_internal. * include/sys/cygwin.h (cygwin_getinfo_types): Add CW_GET_CYGDRIVE_INFO.
* * mkgroup.c (load_netapi): New function to load netapi32.dll functionsCorinna Vinschen2000-11-083-104/+251
| | | | | | | | | | | | | | | | dynamically so that mkgroup works on 9x/ME as well. Use corresponding function pointers throughout. (usage): Change to `int'. Change text to be conformant to mkpasswd. (main): Use `getlongopt' to process options. Special handling to create a group entry on 9x/ME. * mkpasswd.c (load_netapi): New function to load netapi32.dll functions dynamically so that mkpasswd works on 9x/ME as well. Use corresponding function pointers throughout. (usage): Change to `int'. Change text to be conformant to mkgroup. (main): Use `getlongopt' to process options. Special handling to create a passwd entry on 9x/ME. Change conditional to create an entry for the local administrators group when appropriate.
* * autoload.cc: Add autoload statement for `WSASetLastError'.Corinna Vinschen2000-11-073-1/+15
| | | | | * net.cc (cygwin_connect): Change error code to WSAEINPROGRESS when connect returns WSAEWOULDBLOCK.
* Fix typos.Christopher Faylor2000-11-071-3/+3
|
* Update copyright.Christopher Faylor2000-11-071-1/+1
|
* * dcrt0.cc (sigthread::init): Reinstitute sigthread lock as a critical section.Christopher Faylor2000-11-065-79/+71
| | | | | | | | | | | | (dll_crt0_1): Move sigthread lock initialization to earlier in startup. * exceptions.cc (interrupt_on_return): Remove previous kludgy attempt to detect an invalid frame. (call_handler): Eliminate inner for loop. Grab signal critical section lock where appropriate. * sigproc.cc (proc_subproc): Restore uid setting. * sigproc.h (sigthread): Reinstitute sigthread lock as a critical section. (sigframe): Grab the sigthread lock before clearing frame to avoid having the signal thread use an invalid frame.
* * config.sub: Add support for Sun ChorusChristopher Faylor2000-11-062-0/+13
|
* * path.cc (mount_info::read_cygdrive_info_from_registry): UseChristopher Faylor2000-11-063-11/+30
| | | | | | | | | | | CYGWIN_INFO_CYGDRIVE_PREFIX, CYGWIN_INFO_CYGDRIVE_DEFAULT_PREFIX, and CYGWIN_INFO_CYGDRIVE_FLAGS. * path.cc (mount_info::write_cygdrive_info_to_registry): Use CYGWIN_INFO_CYGDRIVE_PREFIX and CYGWIN_INFO_CYGDRIVE_FLAGS. * path.cc (mount_info::remove_cygdrive_info_from_registry): Ditto. * path.cc (mount_info::get_cygdrive_prefixes): Use CYGWIN_INFO_CYGDRIVE_PREFIX. * include/cygwin/version.h: Add CYGWIN_INFO_CYGDRIVE_FLAGS, CYGWIN_INFO_CYGDRIVE_PREFIX, and CYGWIN_INFO_CYGDRIVE_DEFAULT_PREFIX.
* * Makefile.in: increment VERSION.Earnie Boyd2000-11-064-8/+26
| | | | | | | | | | | | (dist:) Rename to srcdist. Create new dist target to call srcdist and bindist targets. (srcdist:) New target. (clean-top:) add call to mostlyclean-top and add rm of distribution tarballs. * lib/Makefile.in: (uninstall:) modify to remove files from the new w32api subdirectory and to remove w32api subdirectory. (xuninstall:) Ditto. TODO: Add a task to redo the clean targets of Makefile.in
* * errno.cc (strerror): Change EAGAIN case to return "Resource temporarilyChristopher Faylor2000-11-062-1/+6
| | | | unavailable" instead of "No more processes".
* * libc/include/sys/types.h: Change type of i to `size_t' inCorinna Vinschen2000-11-062-1/+6
| | | | FD_ZERO macro to avoid compiler warnings.
* Fix typo.Christopher Faylor2000-11-061-2/+2
|
* * child_info.h (child_info): Add pppid_handle for closing the parent's of theChristopher Faylor2000-11-069-141/+188
| | | | | | | | | | | | | | | | | | | | | | | parent handle. * dcrt0.cc (_dll_crt0): Close parent's parent handle when spawned or forked. * debug.cc (add_handle): Correct erroneous reference to handle structure when printing warning. * exceptions.cc (interrupt_now): Always return 1. (interrupt_on_return): Accept a sigthread argument. Check to see if this argument has been trashed prior to setting up the stack return. (call_handler): Add a loop around attempts to dispatch signals to detect case where interrupt_on_return fails. (_sigdelayed): Set up a temporary frame pointer prior to calling stuff that could trigger an interrupt or the stack walking code will be very confused. * fork.cc (fork_parent): Move a lot of the setup of the child process into proc_subproc. * spawn.cc (spawn_guts): Ditto. Use ppid_handle to contact logical parent when reparenting. * pinfo.h (_pinfo): Remember the logical handle of the parent process. * sigproc.cc (proc_subproc): Record most stuff necessary for the _pinfo structure that is inferrable from myself when adding children. (wait_sig): Always set 'pending_signals' flag when about to kick off the signal scanning loop. Reset it only if there are no pending signals.
* Fix spelling error.Christopher Faylor2000-11-051-1/+1
|
* * pinfo (wait_subproc): Son of neverending debug tweaking.Christopher Faylor2000-11-052-2/+9
|
* * pinfo (wait_subproc): Neverending debug tweaking.Christopher Faylor2000-11-052-3/+7
|
* * pinfo.cc (winpids:add): New method.Christopher Faylor2000-11-055-46/+101
| | | | | | | | | | | | | (winpids::enumNT): New method renamed from EnumProcessesNT. Use add method to add elements to the lists. (winpids::enum9x): New method renamed from EnumProcesses9x. Use add method to add elements to the lists. (winpids::enum_init): Accept 'winpid' parameter to control whether to add all windows pids to the list. (winpids::release): New method. * pinfo.h (winpids): Reflect above changes. * signal.cc (kill_pgrp): Ditto. * external.cc (fillout_pinfo): Ditto.
* * exceptions.cc (handle_sigsuspend): Record frame here for signalling.Christopher Faylor2000-11-053-6/+12
| | | | (set_process_mask): Ditto.
* * sigproc.cc (wait_subproc): Still more debugging cleanup.Christopher Faylor2000-11-042-4/+8
|
* * hashtab.h (struct htab): Add member return_allocation_failure.Hans-Peter Nilsson2000-11-042-0/+16
| | | | | (htab_try_create): New prototype. Mention which functions may return NULL when this is used.
* * pinfo.cc (EnumProcessesNT): Avoid 0 pids.Christopher Faylor2000-11-045-30/+39
| | | | | | | | | | (EnumProcesses9x): Ditto. * sigproc.cc (remove_childe): Eliminate. (proc_subproc): Move remove_child stuff here. (wait_subproc): Synchronize with proc_subproc when error occurs. Add more debugging info. * sigproc.h (procstuff): Add an entry. * spawn.cc (spawn_guts): Add sigframe here.
* * lib/Makefile.in: Install header files in w32api subdirectory.Christopher Faylor2000-11-042-4/+10
|
* * sigproc.cc (wait_subproc): Refine debug output.Christopher Faylor2000-11-042-3/+10
|
* * hashtab.h: Change void * to PTR where necessary.Hans-Peter Nilsson2000-11-032-5/+9
|
* * pinfo.cc (pinfo::init): Reverse order of setting status and pid info in anChristopher Faylor2000-11-0310-22/+59
| | | | | | | | execed process to avoid a race. * sigproc.cc (wait_subproc): Print more info when a WFSO error occurs. * automode.c: New file. * syscalls.cc (close_all_files): Streamline slightly. * cygheap.cc (ccalloc): Clear *entire* allocated array.
* Add support for -storm-chaosNick Clifton2000-11-022-3/+7
|
* * ntdll.h: Remove IO_COUNTERS definition since it is now in winnt.h.Christopher Faylor2000-11-022-10/+4
|
* * pinfo.cc (EnumProcessesNT): New function. Eliminates dependence on psapi.h.Christopher Faylor2000-11-025-65/+228
| | | | | | | | | | | (EnumProcesses9x): Rename from EnumProcessesW95. Change arguments to be more useful for cygwin. (winpids::init): Accomodate argument changes. (enum_init): Ditto. * pinfo.h (winpids): Make pidlist dynamically extendable by storing it as a pointer and remembering the size. * ntdll.h: Add extra definitions needed for EnumProcessesNT. Reformat via 'indent'.
* * exceptions.cc (interruptible): Remove obsolete tests.Christopher Faylor2000-11-023-35/+46
| | | | | | (sigreturn): Construct pseudo-frame-pointer so that signal handler can figure out where to put return address when signals are coming in quickly. * path.cc (cwdstuff::get): Allow length 0 buffer length when buffer when NULL.
* * kill.cc (main): Return 1 in case of errors.Corinna Vinschen2000-11-022-1/+7
|
* * CONTRIBUTIONS: New file.Earnie Boyd2000-11-014-2/+18
| | | | | * README: Change the maintained by header. * TODO: Add a note about checking the TODO.
* * include/basetyps.h: add comment for GUID_DEFINEDEarnie Boyd2000-11-0123-386/+1994
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/lm.h: add includes for lmerr.h and lmserver.h * include/lmcons.h: add W2K typedefs LMSTR, LMCSTR * include/lmerr.h: add error codes * include/lmserver.h: replace LPTSTR with LPWSTR, LPTCSTR with LPWCSTR in structures and prototypes * include/lmshare.h: ditto * include/lmuse.h: ditto * include/lmstats.h: ditto * include/oleauto.h: add function prototype SystemTimeToVariantTime * include/winbase.h: change first argument of CommConfigDialog to const * include/windowsx.h: add macros defining FAR versions of mem and string functions for porting from Win16 code * include/winioctl.h: added IOCTL_STORAGE defines * include/winnetwk.h: added WNNC_NET flags * include/winnt.h: add include of <basetsd.h>; add structs; add pointer typedefs for TOKEN structs * include/winsock.h: add guard around BSD-ish typedefs * include/wtypes.h: new VARENUM enums, new WIN32/WIN64 compat. macros * include/basetsd.h: new file * include/raserror.h: ditto * include/rassapi.h: ditto * include/ras.h: ditto comment from Earnie: replaced original ras.h contribution with Danny's contribution as it is more complete. * include/rpcndr.h: add default definition for __RPCNDR_H_VERSION__