Commit Graph

278 Commits

Author SHA1 Message Date
Christopher Faylor
5b082caa62 * windows.cc (setitimer): Round up when < 1000 usecs. 2000-06-26 22:33:54 +00:00
Christopher Faylor
9cef3cc0d7 * hinfo.cc (hinfo::dup2): Eliminate compiler warning. 2000-06-26 21:36:52 +00:00
Christopher Faylor
5a449743bb * hinfo.cc (hinfo::dup2): Guard against out of bounds newfd. 2000-06-26 15:27:12 +00:00
Christopher Faylor
84a1af74a2 * grp.cc (read_etc_group): Open file in text mode.
* pwd.cc (read_etc_passwd): Ditto.
* shared.h: Bump PROC_MAGIC.
2000-06-25 03:48:10 +00:00
Christopher Faylor
749bdbe92a * cygcheck.cc (cygwin_info): New function. Scans DLL for Cygwin version info.
(dll_info): Add path parameter for checking "cygwin1.dll".
(track_down): Accomodate additional parameter for dll_info.
(ls): Ditto.
(dump_sys_info): Always print cygwin1.dll last.
2000-06-25 03:18:54 +00:00
Corinna Vinschen
bb34ad9674 * fork.cc (fork): Fix error in copying SID pointer.
* spawn.cc (_spawnve): Ditto.
        * passwd.cc: Remove static from `passwd_in_memory_p'.
        (read_etc_passwd): Remove static.
        * uinfo.cc: Move global declaration of `read_etc_group' and
        `group_in_memory_p' into `uinfo_init'.
        (internal_getlogin): Try to get SID from current process first.
        (uinfo_init): Don't set uid and gid if `myself' has a valid SID.
        Only load /etc/passwd and /etc/group in that case.
2000-06-24 17:37:52 +00:00
Christopher Faylor
92b3b0a6ad * shared.cc (shared_info::initialize): Improve error message clarity.
* mkvers.sh: Eliminate debugging output.
2000-06-24 16:31:36 +00:00
Christopher Faylor
344a1924d9 * Makefile.in: Add dummy info targets. 2000-06-22 22:28:35 +00:00
Christopher Faylor
d69257a1a4 * Makefile.in: Autogenerate cygwin.def when appropriate.
* include/sys/cygwin.h: Correct prototype.
2000-06-22 21:51:48 +00:00
Christopher Faylor
d7cea2d3eb Revise previous include/sys/cygwin.h change. 2000-06-22 21:05:46 +00:00
Christopher Faylor
f33acdb808 * include/sys/cygwin.h: Don't define parts of this file that rely on Windows
headers unless the Windows header was previously included.
2000-06-22 20:18:17 +00:00
Christopher Faylor
5af1047b41 Revert. 2000-06-22 19:48:10 +00:00
Christopher Faylor
b867695801 Remove some files that were added prematurely. 2000-06-22 19:11:32 +00:00
Corinna Vinschen
98a3dc3bc5 * registry.cc (load_registry_hive): Use HKEY_USERS when checking
for existing user hive.
        Use MAX_PATH instead of numerical constant for array size.
        Use return code of RegLoadKeyA instead of GetLastError for error output.
2000-06-22 18:54:26 +00:00
Christopher Faylor
42030c97d7 * rpcdce.h: Protect OPTIONAL definition since it may be (legally) previously
defined.
* windef.h : Ditto.
2000-06-22 18:37:31 +00:00
Christopher Faylor
699dd00b3a * Makefile.in: Add new-libcygwin.a back to all_host target. 2000-06-22 18:28:16 +00:00
Christopher Faylor
e282ff799f * Makefile.in: Add *.def to clean operation. 2000-06-21 18:33:19 +00:00
Christopher Faylor
159db33b11 * Makefile.in: Add *.exe to clean operation. 2000-06-21 17:20:47 +00:00
Christopher Faylor
b2a2fdbaa7 Display what's going on. 2000-06-21 05:04:56 +00:00
Christopher Faylor
32454a4817 * mkvers.sh: Fix sed usage for older seds. 2000-06-21 05:03:36 +00:00
Christopher Faylor
fb84fe4cbb * Makefile.in: Don't touch winver_stamp if mkvers.sh was unsuccessful. 2000-06-21 00:47:06 +00:00
Christopher Faylor
3ce7a5af5a * mkvers.sh: Fix problem with handling of CVS tags causing .rc syntax errors. 2000-06-20 21:42:25 +00:00
Christopher Faylor
cfeb2c7d79 * Makefile.in: Change to build the DLL during a cross-compiler build. 2000-06-20 17:38:55 +00:00
Christopher Faylor
fa2ba85814 * configure.in: Bow to necessity and build w32api before anything else.
* configure: Regenerate.
2000-06-20 17:37:22 +00:00
Christopher Faylor
a7874ee305 * select.cc (socket_cleanup): Shutdown I/O on dummy sockets prior to closing
them.
2000-06-20 00:47:52 +00:00
Corinna Vinschen
e219a2bdf0 * dcrt0.cc: Add load statements for `GetSidIdentifierAuthority'
and `RegLoadKeyA'.
        * registry.cc (get_registry_hive_path): New function.
        (load_registry_hive): Ditto.
        * security.cc (convert_sid_to_string_sid): New function.
        (get_ssid): Renamed to `convert_string_sid_to_sid'.
        (get_pw_sid): Call `convert_string_sid_to_sid' instead of `get_ssid'.
        (get_gr_sid): Ditto.
        (get_admin_sid): Ditto.
        (get_system_sid): Ditto.
        (get_creator_owner_sid): Ditto.
        (get_world_sid): Ditto.
        * shared.h: New prototypes for `get_registry_hive_path' and
        `load_registry_hive'.
        * spawn.cc (spawn_guts): Set child->psid to NULL to force calling
        `internal_getlogin' from child process in case of changing user context.
        Call `load_registry_hive' in case of changing user context.
        (_spawnve): Copy user infos only if user context remains the same.
        * uinfo.cc: Add load statement for `NetUserGetInfo'.
        Remove load statement for `NetGetDCName'.
        (internal_getlogin): Rewrite to speed up process startup
        and to correct user environment in case user context changes.
        (uinfo_init): Call internal_getlogin only if myself->psid is NULL,
        that is user context changes.
        * winsup.h: Add prototypes for `convert_sid_to_string_sid',
        `convert_string_sid_to_sid' and `get_pw_sid'.
2000-06-19 17:36:30 +00:00
Christopher Faylor
6d4186757b * fhandler.h (set_name): Don't use 'unix' as name since this is defined by gcc
now.
* fhandler.cc (set_name): Ditto.
2000-06-18 17:43:45 +00:00
Christopher Faylor
ce4a7304b8 Add comment. 2000-06-18 01:53:10 +00:00
Christopher Faylor
606264878e Revert. 2000-06-18 01:50:07 +00:00
Christopher Faylor
a50bf2842f * Makefile.in (subdirs): Eliminate for loop. 2000-06-18 01:49:23 +00:00
Christopher Faylor
4a7a5a717c * Makefile.in (subdirs): Previous change did not fix problem in broken shells. 2000-06-17 22:28:52 +00:00
Christopher Faylor
42867d69ae * winsup.h (isabspath): Don't report `C:foo' as an absolute path. 2000-06-17 22:05:19 +00:00
Christopher Faylor
e94903eb0f * configure.in: Detect "cross-hosting" situation and set appropriate variables
in Makefile to avoid building excess stuff.
* configure: Regenerate.
* Makefile.in: Accomodate above change.
2000-06-17 17:54:05 +00:00
Corinna Vinschen
e46892585a * pinfo.cc (pinfo_init): Revert previous patch. 2000-06-17 17:53:08 +00:00
Christopher Faylor
2e6d8441fa * configure.in: Detect "cross-hosting" situation and add a subset of
directories to SUBDIRS.
* configure: Regenerate.
2000-06-17 17:51:31 +00:00
Christopher Faylor
0fa0f12294 Add additional info. 2000-06-17 17:50:04 +00:00
Christopher Faylor
63d4033c06 * Makefile.in: Avoid installing dll if we're cross building and the cross-host
system isn't a Windows system.
2000-06-17 17:48:36 +00:00
Corinna Vinschen
9bbb81a443 * pinfo.cc (pinfo_init): Add missing initializers.
* uinfo.cc (internal_getlogin): Request domain infos only
        when ntsec is ON.
2000-06-17 11:34:33 +00:00
Christopher Faylor
e962f3c5f7 * Makefile.in: Just use library files from this tree when building cygrun.exe.
* path.cc (chdir): Don't set cache to offending chdir.  Change comment to
reflect current reality.
2000-06-16 23:39:02 +00:00
Corinna Vinschen
64b3062937 * cygwin.din: Define symbols for `cygwin_logon_user' and
`cygwin_set_impersonation_token'.
        * dcrt0.cc (dll_crt0_1): Eliminate superfluous conditional
        statements.
        Add load statements for `ImpersonateLoggedOnUser', `LogonUserA'
        and `RevertToSelf'.
        * fork.cc (fork): Care for correct impersonation of parent
        and child process.
        * security.cc (cygwin_set_impersonation_token): New function.
        (cygwin_logon_user): Ditto.
        shared.h (class pinfo): New members `orig_uid', `orig_gid',
        `real_uid' nad `real_gid'.
        spawn.cc (spawn_guts): Care for impersonation when starting
        child process in a different user context.
        * syscalls.cc (setgid): Call `setegid' now. Set real_gid.
        (setuid): Call `seteuid' now. Set real_uid.
        (seteuid): Functionality moved from setuid to here. Care for
        correct impersonation.
        (setegid): Functionality moved from setgid to here.
        * uinfo.cc (uinfo_init): Initialization of additional pinfo
        members.
        (getuid): Return real uid.
        (getgid): Return real gid.
        (geteuid): Return effective uid.
        (getegid): Return effective gid.
        include/sys/cygwin.h: Add prototypes for `cygwin_logon_user' and
        `cygwin_set_impersonation_token'.
        include/cygwin/version.h: Bumb API minor version to 22.
2000-06-16 19:36:07 +00:00
Christopher Faylor
3875d9e652 * path.cc (chdir): Don't set cache to offending chdir. Change comment to
reflect current reality.
2000-06-15 22:14:14 +00:00
Christopher Faylor
26cfd048e3 Fix typo. 2000-06-15 20:52:57 +00:00
Christopher Faylor
54ee424711 * path.cc (normalize_posix_path): Convert path to POSIX if it seems to be a
Windows path.
2000-06-15 19:44:50 +00:00
Christopher Faylor
48b1381da1 * environ.cc (conv_envvars): Detect and convert all environment variables used
by libiberty's choose-temp.c
2000-06-15 03:50:03 +00:00
David Starks-Browning
fe905b6259 Rewrote "Adding or updating packages",
plus a few other minor changes.
2000-06-14 20:56:56 +00:00
Christopher Faylor
df031c83f4 * include/winnt.h: Add some missing defines related to locale identifiers.
Translate values of LANG_* and SUBLANG_* into hexadecimal.
2000-06-14 20:33:31 +00:00
David Starks-Browning
a9ba336498 Tidied up formatting a bit.
New entries:
	How do I convert between Windows and UNIX paths?
	Why are compiled executables so huge?!?
2000-06-14 16:34:57 +00:00
David Starks-Browning
3092135d8c Minor changes, also add note about deleting temp dir after setup. 2000-06-14 16:08:03 +00:00
David Starks-Browning
1edefdeb85 Fix simple @-error. 2000-06-13 19:52:51 +00:00
Christopher Faylor
024afd70d6 * path.cc (mount_info::add_item): The previous patch can't handle the case of
overwriting a mount entry.
2000-06-13 16:48:37 +00:00