From ba94682838272afc87b73833c02aaf6cea40815e Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Wed, 12 Sep 2001 17:46:37 +0000 Subject: * Makefile.in: Build wincap.o. * wincap.cc: New file. * wincap.h: Ditto. * autoload.cc: Add dynamic load statement for `CreateHardLinkA'. * dcrt0.cc (os_being_run): Eliminated. (osname): Ditto. (iswinnt): Ditto. (set_os_type): Ditto. (dll_crt0_1): Call wincap.init() instead of set_os_type(). (_dll_crt0): Ditto. * environ.cc (set_chunksize): New function. (parse_thing): `forkchunk' setting now invokes function `set_chunksize'. * fork.cc (chunksize): Eliminated. Moved to be member of wincap. * host_dependent.h: Removed. * syscalls.cc (_link): Try using `CreateHardLinkA' first, if available. * cygheap.cc, dcrt0.cc, delqueue.cc, dir.cc, environ.cc, fhandler.cc, fhandler.h, fhandler_console.cc, fhandler_mem.cc, fork.cc, mmap.cc, net.cc, pinfo.cc, pinfo.h, security.cc, syscalls.cc, sysconf.cc, syslog.cc, thread.cc, times.cc, tty.cc, uinfo.cc, uname.cc, winsup.h: Use new wincap capability check throughout. * winsup.h: Include wincap.h. Eliminate extern declarations of `os_being_run' and `iswinnt'. Eliminate `os_type" definition. * include/cygwin/version.h: Bump version to 1.3.4. --- winsup/cygwin/environ.cc | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'winsup/cygwin/environ.cc') diff --git a/winsup/cygwin/environ.cc b/winsup/cygwin/environ.cc index cc127ad29..1be0b79b5 100644 --- a/winsup/cygwin/environ.cc +++ b/winsup/cygwin/environ.cc @@ -35,7 +35,6 @@ extern BOOL allow_smbntsec; extern BOOL allow_winsymlinks; extern BOOL strip_title_path; extern int pcheck_case; -extern DWORD chunksize; extern int subauth_id; BOOL reset_com = TRUE; static BOOL envcache = TRUE; @@ -474,6 +473,12 @@ subauth_id_init (const char *buf) subauth_id = i; } +static void +set_chunksize (const char *buf) +{ + wincap.set_chunksize (strtol (buf, NULL, 0)); +} + /* The structure below is used to set up an array which is used to parse the CYGWIN environment variable or, if enabled, options from the registry. */ @@ -503,7 +508,7 @@ static struct parse_thing {"envcache", {&envcache}, justset, NULL, {{TRUE}, {FALSE}}}, {"error_start", {func: &error_start_init}, isfunc, NULL, {{0}, {0}}}, {"export", {&export_settings}, justset, NULL, {{FALSE}, {TRUE}}}, - {"forkchunk", {x: &chunksize}, justset, NULL, {{8192}, {0}}}, + {"forkchunk", {func: set_chunksize}, isfunc, NULL, {{0}, {0}}}, {"glob", {func: &glob_init}, isfunc, NULL, {{0}, {s: "normal"}}}, {"ntea", {&allow_ntea}, justset, NULL, {{FALSE}, {TRUE}}}, {"ntsec", {&allow_ntsec}, justset, NULL, {{FALSE}, {TRUE}}}, @@ -658,7 +663,7 @@ environ_init (char **envp, int envc) #ifdef NTSEC_ON_BY_DEFAULT /* Set ntsec explicit as default, if NT is running */ - if (iswinnt) + if (wincap.has_security ()) allow_ntsec = TRUE; #endif -- cgit v1.2.3