* Makefile.in: Remove cygserver stuff.

* acconfig.h: Add USE_CYGSERVER define.
* config.h.in: Regenerate.
* configure.in: Add --enable-server setting.
* configure: Regenerate.
* fhandler_tty.cc (fhandler_tty_slave::open): Conditionalize compilation of
cygserver stuff.
* fork.cc (fork_child): Ditto.
* shm.cc: Ditto.
* tty.cc (tty::common_init): Ditto.
* dcrt0.cc: Use bool rather than BOOL for CYGWIN environment variable
definitions.
* environ.cc: Ditto.
* ntea.cc: Ditto.
* security.cc: Ditto.
* security.h: Ditto.
* syscalls.cc (check_posix_perm): Remove externs that were already declared in
a header.
* winsup.h: Ditto.  Declare _MT_SAFE here.  Delete it someday since cygwin
should always be _MT_SAFE.
This commit is contained in:
Christopher Faylor 2003-07-02 03:16:00 +00:00
parent 4d8d80b8a7
commit 3872e9a419
17 changed files with 123 additions and 143 deletions

View File

@ -1,3 +1,27 @@
2003-07-01 Christopher Faylor <cgf@redhat.com>
* Makefile.in: Remove cygserver stuff.
* acconfig.h: Add USE_CYGSERVER define.
* config.h.in: Regenerate.
* configure.in: Add --enable-server setting.
* configure: Regenerate.
* fhandler_tty.cc (fhandler_tty_slave::open): Conditionalize
compilation of cygserver stuff.
* fork.cc (fork_child): Ditto.
* shm.cc: Ditto.
* tty.cc (tty::common_init): Ditto.
* dcrt0.cc: Use bool rather than BOOL for CYGWIN environment variable
definitions.
* environ.cc: Ditto.
* ntea.cc: Ditto.
* security.cc: Ditto.
* security.h: Ditto.
* syscalls.cc (check_posix_perm): Remove externs that were already
declared in a header.
* winsup.h: Ditto. Declare _MT_SAFE here. Delete it someday since
cygwin should always be _MT_SAFE.
2003-06-30 Pierre Humblet <pierre.humblet@ieee.org> 2003-06-30 Pierre Humblet <pierre.humblet@ieee.org>
* cygheap.h (enum impersonation): New enum. * cygheap.h (enum impersonation): New enum.

View File

@ -144,9 +144,7 @@ MALLOC_OFILES=@MALLOC_OFILES@
DLL_IMPORTS:=$(w32api_lib)/libkernel32.a DLL_IMPORTS:=$(w32api_lib)/libkernel32.a
# Please maintain this list in sorted order, with maximum files per 80 col line # Please maintain this list in sorted order, with maximum files per 80 col line
DLL_OFILES:=assert.o autoload.o cxx.o cygheap.o cygserver_client.o \ DLL_OFILES:=assert.o autoload.o cxx.o cygheap.o cygthread.o dcrt0.o debug.o \
cygserver_transport.o cygserver_transport_pipes.o \
cygserver_transport_sockets.o cygthread.o dcrt0.o debug.o \
delqueue.o dir.o dlfcn.o dll_init.o dtable.o environ.o errno.o \ delqueue.o dir.o dlfcn.o dll_init.o dtable.o environ.o errno.o \
exceptions.o exec.o external.o fcntl.o fhandler.o \ exceptions.o exec.o external.o fcntl.o fhandler.o \
fhandler_clipboard.o fhandler_console.o fhandler_disk_file.o \ fhandler_clipboard.o fhandler_console.o fhandler_disk_file.o \
@ -250,7 +248,7 @@ install_host=@install_host@
all: all_target $(all_host) all: all_target $(all_host)
all_target: $(TARGET_LIBS) cygserver.exe all_target: $(TARGET_LIBS)
all_host: $(TEST_LIB_NAME) all_host: $(TEST_LIB_NAME)
@ -291,8 +289,7 @@ install-man:
$(INSTALL_DATA) $$i $(tooldir)/man/man7/`basename $$i` ; \ $(INSTALL_DATA) $$i $(tooldir)/man/man7/`basename $$i` ; \
done done
install_target: cygserver.exe install_target:
$(INSTALL_PROGRAM) cygserver.exe $(bindir)/cygserver.exe
install_host: install_host:
@ -397,27 +394,6 @@ winver_stamp: mkvers.sh include/cygwin/version.h winver.rc $(DLL_OFILES)
$(COMPILE_CXX) -o version.o version.cc && \ $(COMPILE_CXX) -o version.o version.cc && \
touch $@ touch $@
cygserver_transport_outside.o: cygserver_transport.cc
$(COMPILE_CXX) -D__OUTSIDE_CYGWIN__ -o $@ $<
cygserver_transport_pipes_outside.o: cygserver_transport_pipes.cc
$(COMPILE_CXX) -D__OUTSIDE_CYGWIN__ -o $@ $<
cygserver_transport_sockets_outside.o: cygserver_transport_sockets.cc
$(COMPILE_CXX) -D__OUTSIDE_CYGWIN__ -o $@ $<
cygserver_client_outside.o: cygserver_client.cc
$(COMPILE_CXX) -D__OUTSIDE_CYGWIN__ -o $@ $<
cygserver.exe: cygserver.o cygserver_shm.o cygserver_transport_outside.o cygserver_transport_pipes_outside.o cygserver_transport_sockets_outside.o cygserver_client_outside.o cygserver_process.o threaded_queue.o wincap.o version.o smallprint.o
$(CXX) -o $@ $^ -lstdc++
#ifdef VERBOSE
# $(CXX) $(MINGW_CXXFLAGS) -o $@ ${wordlist 1,3,$^} -B$(mingw_build)/ $(MINGW_LDFLAGS)
#else
# @echo $(CXX) -o $@ ${wordlist 1,3,$^} ${filter-out -B%, $(MINGW_CXXFLAGS) $(MINGW_LDFLAGS)};\
# $(CXX) $(MINGW_CXXFLAGS) -o $@ ${wordlist 1,3,$^} -B$(mingw_build)/ $(MINGW_LDFLAGS)
#endif
-lgcc: -lgcc:
: :

View File

@ -7,8 +7,14 @@
/* Define if GCC supports builtin memset. */ /* Define if GCC supports builtin memset. */
#undef HAVE_BUILTIN_MEMSET #undef HAVE_BUILTIN_MEMSET
/* Define if MALLOC_DEBUGGING support is requested. */
#undef MALLOC_DEBUG
/* Define if building thread-safe Cygwin DLL. */ /* Define if building thread-safe Cygwin DLL. */
#undef _MT_SAFE #undef _MT_SAFE
/* Define if using new vfork functionality. */ /* Define if using new vfork functionality. */
#undef NEWVFORK #undef NEWVFORK
/* Define if using cygserver */
#undef USE_CYGSERVER

View File

@ -25,17 +25,17 @@
/* Define if DEBUGGING support is requested. */ /* Define if DEBUGGING support is requested. */
#undef DEBUGGING #undef DEBUGGING
/* Define if MALLOC_DEBUGGING support is requested. */
#undef MALLOC_DEBUG
/* Define if building "extra" thread-safe Cygwin DLL. */ /* Define if building "extra" thread-safe Cygwin DLL. */
#undef _CYG_THREAD_FAILSAFE #undef _CYG_THREAD_FAILSAFE
/* Define if GCC supports builtin memset. */ /* Define if GCC supports builtin memset. */
#undef HAVE_BUILTIN_MEMSET #undef HAVE_BUILTIN_MEMSET
/* Define if building thread-safe Cygwin DLL. */ /* Define if MALLOC_DEBUGGING support is requested. */
#undef _MT_SAFE #undef MALLOC_DEBUG
/* Define if using new vfork functionality. */ /* Define if using new vfork functionality. */
#undef NEWVFORK #undef NEWVFORK
/* Define if using cygserver */
#undef USE_CYGSERVER

View File

@ -11,12 +11,12 @@
ac_help= ac_help=
ac_default_prefix=/usr/local ac_default_prefix=/usr/local
# Any additions from configure.in: # Any additions from configure.in:
ac_help="$ac_help
--enable-threadsafe=[runtime] Build a cygwin DLL which is thread safe"
ac_help="$ac_help ac_help="$ac_help
--enable-extra-threadsafe-checking Build a cygwin DLL which is thread safe with extra consistency checking" --enable-extra-threadsafe-checking Build a cygwin DLL which is thread safe with extra consistency checking"
ac_help="$ac_help ac_help="$ac_help
--enable-debugging Build a cygwin DLL which has more consistency checking for debugging" --enable-debugging Build a cygwin DLL which has more consistency checking for debugging"
ac_help="$ac_help
--enable-server Build a cygwin DLL which can communicate with cygserver"
ac_help="$ac_help ac_help="$ac_help
--enable-malloc-debugging Build a cygwin DLL with heap sanity checking (this is very slow, use only if you have heap corruption problems)" --enable-malloc-debugging Build a cygwin DLL with heap sanity checking (this is very slow, use only if you have heap corruption problems)"
ac_help="$ac_help ac_help="$ac_help
@ -1865,28 +1865,6 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a
cross_compiling=$ac_cv_prog_cc_cross cross_compiling=$ac_cv_prog_cc_cross
mt_safe_val=1
MT_SAFE=yes
# Check whether --enable-threadsafe or --disable-threadsafe was given.
if test "${enable_threadsafe+set}" = set; then
enableval="$enable_threadsafe"
case "${enableval}" in
yes)
;;
runtime)
mt_safe_val=2
MT_SAFE=yes
;;
no)
mt_safe_val=0
MT_SAFE=no
;;
esac
fi
# Check whether --enable-extra-threadsafe-checking or --disable-extra-threadsafe-checking was given. # Check whether --enable-extra-threadsafe-checking or --disable-extra-threadsafe-checking was given.
if test "${enable_extra_threadsafe_checking+set}" = set; then if test "${enable_extra_threadsafe_checking+set}" = set; then
enableval="$enable_extra_threadsafe_checking" enableval="$enable_extra_threadsafe_checking"
@ -1906,15 +1884,6 @@ esac
fi fi
if test "$MT_SAFE" = "yes"; then
cat >> confdefs.h <<EOF
#define _MT_SAFE $mt_safe_val
EOF
fi
# Check whether --enable-debugging or --disable-debugging was given. # Check whether --enable-debugging or --disable-debugging was given.
if test "${enable_debugging+set}" = set; then if test "${enable_debugging+set}" = set; then
enableval="$enable_debugging" enableval="$enable_debugging"
@ -1929,6 +1898,20 @@ esac
fi fi
# Check whether --enable-cygserver or --disable-cygserver was given.
if test "${enable_cygserver+set}" = set; then
enableval="$enable_cygserver"
case "${enableval}" in
yes) cat >> confdefs.h <<\EOF
#define USE_CYGSERVE 1
EOF
;;
no) ;;
esac
fi
MALLOC_OFILES= MALLOC_OFILES=
# Check whether --enable-malloc-debugging or --disable-malloc-debugging was given. # Check whether --enable-malloc-debugging or --disable-malloc-debugging was given.
if test "${enable_malloc_debugging+set}" = set; then if test "${enable_malloc_debugging+set}" = set; then
@ -2146,7 +2129,6 @@ s%@WINDRES@%$WINDRES%g
s%@CPP@%$CPP%g s%@CPP@%$CPP%g
s%@ALLOCA@%$ALLOCA%g s%@ALLOCA@%$ALLOCA%g
s%@SET_MAKE@%$SET_MAKE%g s%@SET_MAKE@%$SET_MAKE%g
s%@MT_SAFE@%$MT_SAFE%g
s%@MALLOC_OFILES@%$MALLOC_OFILES%g s%@MALLOC_OFILES@%$MALLOC_OFILES%g
s%@DLL_ENTRY@%$DLL_ENTRY%g s%@DLL_ENTRY@%$DLL_ENTRY%g
s%@DEF_DLL_ENTRY@%$DEF_DLL_ENTRY%g s%@DEF_DLL_ENTRY@%$DEF_DLL_ENTRY%g

View File

@ -1,5 +1,5 @@
dnl Autoconf configure script for Cygwin. dnl Autoconf configure script for Cygwin.
dnl Copyright 1996, 1997, 1998, 2000, 2001 Red Hat, Inc. dnl Copyright 1996, 1997, 1998, 2000, 2001, 2002, 2003 Red Hat, Inc.
dnl dnl
dnl This file is part of Cygwin. dnl This file is part of Cygwin.
dnl dnl
@ -118,27 +118,6 @@ if test $use_builtin_memset = "yes"; then
fi fi
AC_LANG_RESTORE AC_LANG_RESTORE
dnl set default mt safeness and then process the options.
mt_safe_val=1
MT_SAFE=yes
AC_ARG_ENABLE(threadsafe,
[ --enable-threadsafe=[runtime] Build a cygwin DLL which is thread safe],
[case "${enableval}" in
yes)
dnl default.
;;
runtime)
mt_safe_val=2
MT_SAFE=yes
;;
no)
mt_safe_val=0
MT_SAFE=no
;;
esac
])
AC_ARG_ENABLE(extra-threadsafe-checking, AC_ARG_ENABLE(extra-threadsafe-checking,
[ --enable-extra-threadsafe-checking Build a cygwin DLL which is thread safe with extra consistency checking], [ --enable-extra-threadsafe-checking Build a cygwin DLL which is thread safe with extra consistency checking],
[case "${enableval}" in [case "${enableval}" in
@ -153,13 +132,6 @@ no)
esac esac
]) ])
if test "$MT_SAFE" = "yes"; then
AC_DEFINE_UNQUOTED(_MT_SAFE,$mt_safe_val)
fi
dnl Makefile uses MT_SAFE, so we subst as well as defining it.
AC_SUBST(MT_SAFE)
AC_ARG_ENABLE(debugging, AC_ARG_ENABLE(debugging,
[ --enable-debugging Build a cygwin DLL which has more consistency checking for debugging], [ --enable-debugging Build a cygwin DLL which has more consistency checking for debugging],
[case "${enableval}" in [case "${enableval}" in
@ -168,6 +140,14 @@ no) ;;
esac esac
]) ])
AC_ARG_ENABLE(cygserver,
[ --enable-server Build a cygwin DLL which can communicate with cygserver],
[case "${enableval}" in
yes) AC_DEFINE(USE_CYGSERVE) ;;
no) ;;
esac
])
MALLOC_OFILES= MALLOC_OFILES=
AC_ARG_ENABLE(malloc-debugging, AC_ARG_ENABLE(malloc-debugging,
[ --enable-malloc-debugging Build a cygwin DLL with heap sanity checking (this is very slow, use only if you have heap corruption problems)], [ --enable-malloc-debugging Build a cygwin DLL with heap sanity checking (this is very slow, use only if you have heap corruption problems)],

View File

@ -53,9 +53,9 @@ per_thread NO_COPY *threadstuff[] = {&waitq_storage,
&signal_dispatch_storage, &signal_dispatch_storage,
NULL}; NULL};
BOOL display_title; bool display_title;
BOOL strip_title_path; bool strip_title_path;
BOOL allow_glob = TRUE; bool allow_glob = TRUE;
codepage_type current_codepage = ansi_cp; codepage_type current_codepage = ansi_cp;
int cygwin_finished_initializing; int cygwin_finished_initializing;

View File

@ -1,7 +1,7 @@
/* environ.cc: Cygwin-adopted functions from newlib to manipulate /* environ.cc: Cygwin-adopted functions from newlib to manipulate
process's environment. process's environment.
Copyright 1997, 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003 Red Hat, Inc.
This software is a copyrighted work licensed under the terms of the This software is a copyrighted work licensed under the terms of the
Cygwin license. Please consult the file "CYGWIN_LICENSE" for Cygwin license. Please consult the file "CYGWIN_LICENSE" for
@ -26,17 +26,17 @@ details. */
#include "environ.h" #include "environ.h"
#include "child_info.h" #include "child_info.h"
extern BOOL allow_daemon; extern bool allow_glob;
extern BOOL allow_glob;
extern bool ignore_case_with_glob; extern bool ignore_case_with_glob;
extern BOOL allow_ntea; extern bool allow_ntea;
extern BOOL allow_smbntsec; extern bool allow_smbntsec;
extern BOOL allow_winsymlinks; extern bool allow_winsymlinks;
extern BOOL strip_title_path; extern bool strip_title_path;
extern int pcheck_case; extern int pcheck_case;
extern int subauth_id; extern int subauth_id;
BOOL reset_com = FALSE; bool reset_com = false;
static BOOL envcache = TRUE; bool allow_daemon = false;
static bool envcache = true;
static char **lastenviron; static char **lastenviron;
@ -365,7 +365,7 @@ ucenv (char *p, char *eq)
/* Parse CYGWIN options */ /* Parse CYGWIN options */
static NO_COPY BOOL export_settings = false; static NO_COPY bool export_settings = false;
enum settings enum settings
{ {
@ -384,18 +384,18 @@ glob_init (const char *buf)
{ {
if (!buf || !*buf) if (!buf || !*buf)
{ {
allow_glob = FALSE; allow_glob = false;
ignore_case_with_glob = FALSE; ignore_case_with_glob = false;
} }
else if (strncasematch (buf, "ignorecase", 10)) else if (strncasematch (buf, "ignorecase", 10))
{ {
allow_glob = TRUE; allow_glob = true;
ignore_case_with_glob = TRUE; ignore_case_with_glob = true;
} }
else else
{ {
allow_glob = TRUE; allow_glob = true;
ignore_case_with_glob = FALSE; ignore_case_with_glob = false;
} }
} }
@ -488,7 +488,7 @@ static struct parse_thing
const char *name; const char *name;
union parse_setting union parse_setting
{ {
BOOL *b; bool *b;
DWORD *x; DWORD *x;
int *i; int *i;
void (*func)(const char *); void (*func)(const char *);
@ -506,21 +506,21 @@ static struct parse_thing
{"binmode", {x: &binmode}, justset, NULL, {{O_TEXT}, {O_BINARY}}}, {"binmode", {x: &binmode}, justset, NULL, {{O_TEXT}, {O_BINARY}}},
{"check_case", {func: &check_case_init}, isfunc, NULL, {{0}, {0}}}, {"check_case", {func: &check_case_init}, isfunc, NULL, {{0}, {0}}},
{"codepage", {func: &codepage_init}, isfunc, NULL, {{0}, {0}}}, {"codepage", {func: &codepage_init}, isfunc, NULL, {{0}, {0}}},
{"daemon", {&allow_daemon}, justset, NULL, {{FALSE}, {TRUE}}}, {"daemon", {&allow_daemon}, justset, NULL, {{false}, {true}}},
{"envcache", {&envcache}, justset, NULL, {{TRUE}, {FALSE}}}, {"envcache", {&envcache}, justset, NULL, {{true}, {false}}},
{"error_start", {func: &error_start_init}, isfunc, NULL, {{0}, {0}}}, {"error_start", {func: &error_start_init}, isfunc, NULL, {{0}, {0}}},
{"export", {&export_settings}, justset, NULL, {{FALSE}, {TRUE}}}, {"export", {&export_settings}, justset, NULL, {{false}, {true}}},
{"forkchunk", {func: set_chunksize}, isfunc, NULL, {{0}, {0}}}, {"forkchunk", {func: set_chunksize}, isfunc, NULL, {{0}, {0}}},
{"glob", {func: &glob_init}, isfunc, NULL, {{0}, {s: "normal"}}}, {"glob", {func: &glob_init}, isfunc, NULL, {{0}, {s: "normal"}}},
{"ntea", {&allow_ntea}, justset, NULL, {{FALSE}, {TRUE}}}, {"ntea", {&allow_ntea}, justset, NULL, {{false}, {true}}},
{"ntsec", {&allow_ntsec}, justset, NULL, {{FALSE}, {TRUE}}}, {"ntsec", {&allow_ntsec}, justset, NULL, {{false}, {true}}},
{"smbntsec", {&allow_smbntsec}, justset, NULL, {{FALSE}, {TRUE}}}, {"smbntsec", {&allow_smbntsec}, justset, NULL, {{false}, {true}}},
{"reset_com", {&reset_com}, justset, NULL, {{FALSE}, {TRUE}}}, {"reset_com", {&reset_com}, justset, NULL, {{false}, {true}}},
{"strip_title", {&strip_title_path}, justset, NULL, {{FALSE}, {TRUE}}}, {"strip_title", {&strip_title_path}, justset, NULL, {{false}, {true}}},
{"subauth_id", {func: &subauth_id_init}, isfunc, NULL, {{0}, {0}}}, {"subauth_id", {func: &subauth_id_init}, isfunc, NULL, {{0}, {0}}},
{"title", {&display_title}, justset, NULL, {{FALSE}, {TRUE}}}, {"title", {&display_title}, justset, NULL, {{false}, {true}}},
{"tty", {NULL}, set_process_state, NULL, {{0}, {PID_USETTY}}}, {"tty", {NULL}, set_process_state, NULL, {{0}, {PID_USETTY}}},
{"winsymlinks", {&allow_winsymlinks}, justset, NULL, {{FALSE}, {TRUE}}}, {"winsymlinks", {&allow_winsymlinks}, justset, NULL, {{false}, {true}}},
{NULL, {0}, justset, 0, {{0}, {0}}} {NULL, {0}, justset, 0, {{0}, {0}}}
}; };
@ -676,7 +676,7 @@ environ_init (char **envp, int envc)
/* Set ntsec explicit as default, if NT is running */ /* Set ntsec explicit as default, if NT is running */
if (wincap.has_security ()) if (wincap.has_security ())
allow_ntsec = TRUE; allow_ntsec = true;
if (!envp) if (!envp)
envp_passed_in = 0; envp_passed_in = 0;

View File

@ -507,9 +507,12 @@ fhandler_tty_slave::open (path_conv *, int flags, mode_t)
HANDLE from_master_local, to_master_local; HANDLE from_master_local, to_master_local;
if (!wincap.has_security () || if (!wincap.has_security ()
cygserver_running == CYGSERVER_UNAVAIL || #ifdef USE_CYGSERVER
!cygserver_attach_tty (&from_master_local, &to_master_local)) || cygserver_running == CYGSERVER_UNAVAIL
|| !cygserver_attach_tty (&from_master_local, &to_master_local)
#endif
)
{ {
termios_printf ("cannot dup handles via server. using old method."); termios_printf ("cannot dup handles via server. using old method.");
@ -596,6 +599,7 @@ fhandler_tty_slave::cygserver_attach_tty (LPHANDLE from_master_ptr,
if (!from_master_ptr || !to_master_ptr) if (!from_master_ptr || !to_master_ptr)
return 0; return 0;
#ifdef USE_CYGSERVER
client_request_attach_tty req ((DWORD) get_ttyp ()->master_pid, client_request_attach_tty req ((DWORD) get_ttyp ()->master_pid,
(HANDLE) get_ttyp ()->from_master, (HANDLE) get_ttyp ()->from_master,
(HANDLE) get_ttyp ()->to_master); (HANDLE) get_ttyp ()->to_master);
@ -605,6 +609,8 @@ fhandler_tty_slave::cygserver_attach_tty (LPHANDLE from_master_ptr,
*from_master_ptr = req.from_master (); *from_master_ptr = req.from_master ();
*to_master_ptr = req.to_master (); *to_master_ptr = req.to_master ();
#endif
return 1; return 1;
} }

View File

@ -298,8 +298,10 @@ fork_child (HANDLE& hParent, dll *&first_dll, bool& load_dlls)
(void) ForceCloseHandle1 (fork_info->subproc_ready, subproc_ready); (void) ForceCloseHandle1 (fork_info->subproc_ready, subproc_ready);
(void) ForceCloseHandle1 (fork_info->forker_finished, forker_finished); (void) ForceCloseHandle1 (fork_info->forker_finished, forker_finished);
#ifdef USE_CYGSERVER
if (fixup_shms_after_fork ()) if (fixup_shms_after_fork ())
api_fatal ("recreate_shm areas after fork failed"); api_fatal ("recreate_shm areas after fork failed");
#endif
pinfo_fixup_after_fork (); pinfo_fixup_after_fork ();
signal_fixup_after_fork (); signal_fixup_after_fork ();

View File

@ -16,7 +16,7 @@ details. */
#include "security.h" #include "security.h"
/* Default to not using NTEA information */ /* Default to not using NTEA information */
BOOL allow_ntea; bool allow_ntea;
/* /*
From Windows NT DDK: From Windows NT DDK:

View File

@ -40,12 +40,11 @@ details. */
#include "lm.h" #include "lm.h"
#include "pwdgrp.h" #include "pwdgrp.h"
extern BOOL allow_ntea; bool allow_ntsec;
BOOL allow_ntsec;
/* allow_smbntsec is handled exclusively in path.cc (path_conv::check). /* allow_smbntsec is handled exclusively in path.cc (path_conv::check).
It's defined here because of it's strong relationship to allow_ntsec. It's defined here because of it's strong relationship to allow_ntsec.
The default is TRUE to reflect the old behaviour. */ The default is TRUE to reflect the old behaviour. */
BOOL allow_smbntsec; bool allow_smbntsec;
cygsid * cygsid *
cygsidlist::alloc_sids (int n) cygsidlist::alloc_sids (int n)

View File

@ -209,9 +209,9 @@ legal_sid_type (SID_NAME_USE type)
|| type == SidTypeAlias || type == SidTypeWellKnownGroup; || type == SidTypeAlias || type == SidTypeWellKnownGroup;
} }
extern BOOL allow_ntea; extern bool allow_ntea;
extern BOOL allow_ntsec; extern bool allow_ntsec;
extern BOOL allow_smbntsec; extern bool allow_smbntsec;
/* File manipulation */ /* File manipulation */
int __stdcall set_process_privileges (); int __stdcall set_process_privileges ();

View File

@ -12,7 +12,7 @@ Cygwin license. Please consult the file "CYGWIN_LICENSE" for
details. */ details. */
#include "winsup.h" #include "winsup.h"
#ifdef USE_CYGSERVER
#include <sys/types.h> #include <sys/types.h>
#include <assert.h> #include <assert.h>
@ -690,3 +690,4 @@ client_request_shm::client_request_shm (const key_t key,
msglen (sizeof (_parameters.in)); msglen (sizeof (_parameters.in));
} }
#endif /* USE_CYGSERVER */

View File

@ -1514,8 +1514,6 @@ getpagesize ()
static int static int
check_posix_perm (const char *fname, int v) check_posix_perm (const char *fname, int v)
{ {
extern int allow_ntea, allow_ntsec, allow_smbntsec;
/* Windows 95/98/ME don't support file system security at all. */ /* Windows 95/98/ME don't support file system security at all. */
if (!wincap.has_security ()) if (!wincap.has_security ())
return 0; return 0;

View File

@ -407,11 +407,16 @@ tty::common_init (fhandler_pty_master *ptym)
*/ */
if (wincap.has_security ()) if (wincap.has_security ())
{ {
#ifdef USE_CYGSERVER
if (cygserver_running == CYGSERVER_UNKNOWN) if (cygserver_running == CYGSERVER_UNKNOWN)
cygserver_init (); cygserver_init ();
#endif
if (cygserver_running != CYGSERVER_OK if (
&& !SetKernelObjectSecurity (hMainProc, #ifdef USE_CYGSERVER
cygserver_running != CYGSERVER_OK &&
#endif
!SetKernelObjectSecurity (hMainProc,
DACL_SECURITY_INFORMATION, DACL_SECURITY_INFORMATION,
get_null_sd ())) get_null_sd ()))
system_printf ("Can't set process security, %E"); system_printf ("Can't set process security, %E");

View File

@ -98,6 +98,8 @@ extern int dynamically_loaded;
extern int cygserver_running; extern int cygserver_running;
#define _MT_SAFE // DELTEME someday
#define TITLESIZE 1024 #define TITLESIZE 1024
/* status bit manipulation */ /* status bit manipulation */
@ -197,7 +199,6 @@ extern int cygwin_finished_initializing;
void __stdcall set_std_handle (int); void __stdcall set_std_handle (int);
int __stdcall writable_directory (const char *file); int __stdcall writable_directory (const char *file);
int __stdcall stat_dev (DWORD, int, unsigned long, struct __stat64 *); int __stdcall stat_dev (DWORD, int, unsigned long, struct __stat64 *);
extern BOOL allow_ntsec;
__ino64_t __stdcall hash_path_name (__ino64_t hash, const char *name) __attribute__ ((regparm(2))); __ino64_t __stdcall hash_path_name (__ino64_t hash, const char *name) __attribute__ ((regparm(2)));
void __stdcall nofinalslash (const char *src, char *dst) __attribute__ ((regparm(2))); void __stdcall nofinalslash (const char *src, char *dst) __attribute__ ((regparm(2)));
@ -292,7 +293,7 @@ extern SYSTEM_INFO system_info;
/* The title on program start. */ /* The title on program start. */
extern char *old_title; extern char *old_title;
extern BOOL display_title; extern bool display_title;
extern HANDLE hMainThread; extern HANDLE hMainThread;
extern HANDLE hMainProc; extern HANDLE hMainProc;