ChangeLog:

* configure.in: Remove --enable-server option.  Allways add the
	cygserver directory to $SUBDIRS.
	* configure: Regenerate.

cygwin/ChangeLog:

	Remove USE_SERVER define.  Accommodate throughout.
	* configure.in: Remove --enable-server option.
	* configure: Regenerate.
	* environ.cc: Remove CYGWIN=server setting.

cygserver/ChangeLog:

	* client.cc (allow_server): Remove variable.
	(client_request_get_version::client_request_get_version): Drop checking
	allow_server.

utils/ChangeLog:

	* passwd.c: Remove CYGWIN=server requirement from usage text.

doc/ChangeLog:

	* cygserver.sgml: Remove the "How to use the Cygserver services"
	section.
	* cygwinenv.sgml: Move "(no)server" to the removed options section.
	* faq-programming.xml: Remove CYGWIN=server requirement for running
	the Cygwin testsuite.
	* ntsec.sgml: Ditto for using `passwd -R'.
This commit is contained in:
Corinna Vinschen 2009-01-21 17:14:39 +00:00
parent d9ad7a9c4e
commit 7ffaa17c80
24 changed files with 2561 additions and 2351 deletions

View File

@ -1,3 +1,9 @@
2009-01-21 Corinna Vinschen <corinna@vinschen.de>
* configure.in: Remove --enable-server option. Allways add the
cygserver directory to $SUBDIRS.
* configure: Regenerate.
2008-10-12 Christopher Faylor <me+cygwin@cgf.cx> 2008-10-12 Christopher Faylor <me+cygwin@cgf.cx>
* Makefile.in: Revert erroneous checkin. * Makefile.in: Revert erroneous checkin.

1735
winsup/configure vendored

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,6 @@
dnl Autoconf configure script for Cygwin. dnl Autoconf configure script for Cygwin.
dnl Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 Red Hat, Inc. dnl Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2006,
dnl 2009 Red Hat, Inc.
dnl dnl
dnl This file is part of Cygwin. dnl This file is part of Cygwin.
dnl dnl
@ -24,15 +25,6 @@ LIB_AC_PROG_CXX
AC_LANG_C AC_LANG_C
use_cygserver='yes'
AC_ARG_ENABLE(server,
[ --enable-server Build a cygwin DLL which can communicate with cygserver],
[case "${enableval}" in
yes) ;;
no) use_cygserver=;;
esac
])
INSTALL_LICENSE= INSTALL_LICENSE=
case "$target" in case "$target" in
@ -66,10 +58,7 @@ case "$with_cross_host" in
if test -d $srcdir/lsaauth; then if test -d $srcdir/lsaauth; then
AC_CONFIG_SUBDIRS(lsaauth) AC_CONFIG_SUBDIRS(lsaauth)
fi fi
if test -n "$use_cygserver" -a -d $srcdir/cygserver; then AC_CONFIG_SUBDIRS(cygserver utils doc)
AC_CONFIG_SUBDIRS(cygserver)
fi
AC_CONFIG_SUBDIRS(utils doc)
;; ;;
esac esac

View File

@ -1,3 +1,9 @@
2009-01-21 Corinna Vinschen <corinna@vinschen.de>
* client.cc (allow_server): Remove variable.
(client_request_get_version::client_request_get_version): Drop checking
allow_server.
2009-01-03 Christopher Faylor <me+cygwin@cgf.cx> 2009-01-03 Christopher Faylor <me+cygwin@cgf.cx>
* Makefile.in (CFLAGS): Look in cygwin's build directory for header * Makefile.in (CFLAGS): Look in cygwin's build directory for header

View File

@ -1,6 +1,6 @@
/* client.cc /* client.cc
Copyright 2001, 2002, 2003, 2004 Red Hat Inc. Copyright 2001, 2002, 2003, 2004, 2008, 2009 Red Hat Inc.
Written by Egor Duda <deo@logos-m.ru> Written by Egor Duda <deo@logos-m.ru>
@ -34,8 +34,6 @@ details. */
int cygserver_running = CYGSERVER_UNKNOWN; // Nb: inherited by children. int cygserver_running = CYGSERVER_UNKNOWN; // Nb: inherited by children.
bool allow_server = false; // Nb: inherited by children.
client_request_get_version::client_request_get_version () client_request_get_version::client_request_get_version ()
: client_request (CYGSERVER_REQUEST_GET_VERSION, &version, sizeof (version)) : client_request (CYGSERVER_REQUEST_GET_VERSION, &version, sizeof (version))
{ {
@ -527,13 +525,6 @@ check_cygserver_available ()
void void
cygserver_init () cygserver_init ()
{ {
if (!allow_server)
{
syscall_printf ("cygserver use disabled in client");
cygserver_running = CYGSERVER_UNAVAIL;
return;
}
assert (cygserver_running == CYGSERVER_UNKNOWN \ assert (cygserver_running == CYGSERVER_UNKNOWN \
|| cygserver_running == CYGSERVER_OK \ || cygserver_running == CYGSERVER_OK \
|| cygserver_running == CYGSERVER_UNAVAIL); || cygserver_running == CYGSERVER_UNAVAIL);

View File

@ -1,3 +1,10 @@
2009-01-21 Corinna Vinschen <corinna@vinschen.de>
Remove USE_SERVER define. Accommodate throughout.
* configure.in: Remove --enable-server option.
* configure: Regenerate.
* environ.cc: Remove CYGWIN=server setting.
2009-01-20 Corinna Vinschen <corinna@vinschen.de> 2009-01-20 Corinna Vinschen <corinna@vinschen.de>
* fhandler_procnet.cc: Reorganize global procnet content data into a * fhandler_procnet.cc: Reorganize global procnet content data into a

View File

@ -9,6 +9,3 @@
/* Define if using new vfork functionality. */ /* Define if using new vfork functionality. */
#undef NEWVFORK #undef NEWVFORK
/* Define if using cygserver */
#undef USE_SERVER

View File

@ -11,9 +11,6 @@
/* Define if using new vfork functionality. */ /* Define if using new vfork functionality. */
#undef NEWVFORK #undef NEWVFORK
/* Define if using cygserver */
#undef USE_SERVER
/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP /* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP
systems. This function is required for `alloca.c' support on those systems. systems. This function is required for `alloca.c' support on those systems.
*/ */

2678
winsup/cygwin/configure vendored

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,6 @@
dnl Autoconf configure script for Cygwin. dnl Autoconf configure script for Cygwin.
dnl Copyright 1996, 1997, 1998, 2000, 2001, 2002, 2003 Red Hat, Inc. dnl Copyright 1996, 1997, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
dnl 2008, 2009 Red Hat, Inc.
dnl dnl
dnl This file is part of Cygwin. dnl This file is part of Cygwin.
dnl dnl
@ -33,8 +34,6 @@ case "$with_cross_host" in
;; ;;
esac esac
test -n "$LIBSERVER" && AC_DEFINE(USE_SERVER)
AC_SUBST(all_host) AC_SUBST(all_host)
AC_SUBST(install_host) AC_SUBST(install_host)
@ -77,14 +76,6 @@ no) ;;
esac esac
]) ])
AC_ARG_ENABLE(server,
[ --enable-server Build a cygwin DLL which can communicate with cygserver],
[case "${enableval}" in
yes) ;;
no) LIBSERVER=;;
esac
])
MALLOC_OFILES=malloc.o MALLOC_OFILES=malloc.o
dnl The only time we might want to transform the install names dnl The only time we might want to transform the install names

View File

@ -35,9 +35,6 @@ extern bool allow_winsymlinks;
bool reset_com = false; bool reset_com = false;
static bool envcache = true; static bool envcache = true;
static bool create_upcaseenv = false; static bool create_upcaseenv = false;
#ifdef USE_SERVER
extern bool allow_server;
#endif
static char **lastenviron; static char **lastenviron;
@ -632,9 +629,6 @@ static struct parse_thing
{"glob", {func: &glob_init}, isfunc, NULL, {{0}, {s: "normal"}}}, {"glob", {func: &glob_init}, isfunc, NULL, {{0}, {s: "normal"}}},
{"proc_retry", {func: set_proc_retry}, isfunc, NULL, {{0}, {5}}}, {"proc_retry", {func: set_proc_retry}, isfunc, NULL, {{0}, {5}}},
{"reset_com", {&reset_com}, justset, NULL, {{false}, {true}}}, {"reset_com", {&reset_com}, justset, NULL, {{false}, {true}}},
#ifdef USE_SERVER
{"server", {&allow_server}, justset, NULL, {{false}, {true}}},
#endif
{"strip_title", {&strip_title_path}, justset, NULL, {{false}, {true}}}, {"strip_title", {&strip_title_path}, justset, NULL, {{false}, {true}}},
{"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}}},

View File

@ -1,7 +1,7 @@
/* fhandler_tty.cc /* fhandler_tty.cc
Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
2006, 2007, 2008 Red Hat, Inc. 2006, 2007, 2008, 2009 Red Hat, Inc.
This file is part of Cygwin. This file is part of Cygwin.
@ -528,10 +528,8 @@ fhandler_tty_slave::open (int flags, mode_t)
HANDLE to_master_local; HANDLE to_master_local;
from_master_local = to_master_local = NULL; from_master_local = to_master_local = NULL;
#ifdef USE_SERVER
if (cygserver_running == CYGSERVER_UNAVAIL if (cygserver_running == CYGSERVER_UNAVAIL
|| !cygserver_attach_tty (&from_master_local, &to_master_local)) || !cygserver_attach_tty (&from_master_local, &to_master_local))
#endif
{ {
if (get_ttyp ()->master_pid < 0) if (get_ttyp ()->master_pid < 0)
{ {
@ -546,9 +544,7 @@ fhandler_tty_slave::open (int flags, mode_t)
termios_printf ("*** couldn't find tty master"); termios_printf ("*** couldn't find tty master");
return 0; return 0;
} }
#ifdef USE_SERVER
termios_printf ("cannot dup handles via server. using old method."); termios_printf ("cannot dup handles via server. using old method.");
#endif
HANDLE tty_owner = OpenProcess (PROCESS_DUP_HANDLE, FALSE, HANDLE tty_owner = OpenProcess (PROCESS_DUP_HANDLE, FALSE,
p->dwProcessId); p->dwProcessId);
if (tty_owner == NULL) if (tty_owner == NULL)
@ -642,9 +638,6 @@ int
fhandler_tty_slave::cygserver_attach_tty (LPHANDLE from_master_ptr, fhandler_tty_slave::cygserver_attach_tty (LPHANDLE from_master_ptr,
LPHANDLE to_master_ptr) LPHANDLE to_master_ptr)
{ {
#ifndef USE_SERVER
return 0;
#else
if (!from_master_ptr || !to_master_ptr) if (!from_master_ptr || !to_master_ptr)
return 0; return 0;
@ -659,7 +652,6 @@ fhandler_tty_slave::cygserver_attach_tty (LPHANDLE from_master_ptr,
*to_master_ptr = req.to_master (); *to_master_ptr = req.to_master ();
return 1; return 1;
#endif
} }
void void
@ -1400,10 +1392,8 @@ fhandler_pty_master::setup (bool ispty)
but rely on cygheap->inherited_ctty for descendant processes. but rely on cygheap->inherited_ctty for descendant processes.
In the future the cygserver may allow access by others. */ In the future the cygserver may allow access by others. */
#ifdef USE_SERVER
if (cygserver_running == CYGSERVER_UNKNOWN) if (cygserver_running == CYGSERVER_UNKNOWN)
cygserver_init (); cygserver_init ();
#endif
/* Create synchronisation events */ /* Create synchronisation events */

View File

@ -209,7 +209,6 @@ frok::child (volatile char * volatile here)
MALLOC_CHECK; MALLOC_CHECK;
#ifdef USE_SERVER
/* Incredible but true: If we use sockets and SYSV IPC shared memory, /* Incredible but true: If we use sockets and SYSV IPC shared memory,
there's a good chance that a duplicated socket in the child occupies there's a good chance that a duplicated socket in the child occupies
memory which is needed to duplicate shared memory from the parent memory which is needed to duplicate shared memory from the parent
@ -219,7 +218,6 @@ frok::child (volatile char * volatile here)
fdtab before fixing up shared memory. */ fdtab before fixing up shared memory. */
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
MALLOC_CHECK; MALLOC_CHECK;

View File

@ -1,6 +1,6 @@
/* msg.cc: XSI IPC interface for Cygwin. /* msg.cc: XSI IPC interface for Cygwin.
Copyright 2003 Red Hat, Inc. Copyright 2003, 2009 Red Hat, Inc.
This file is part of Cygwin. This file is part of Cygwin.
@ -9,7 +9,6 @@ Cygwin license. Please consult the file "CYGWIN_LICENSE" for
details. */ details. */
#include "winsup.h" #include "winsup.h"
#ifdef USE_SERVER
#include <unistd.h> #include <unistd.h>
#include "sigproc.h" #include "sigproc.h"
@ -84,7 +83,6 @@ client_request_msg::client_request_msg (int msqid,
msglen (sizeof (_parameters.in)); msglen (sizeof (_parameters.in));
} }
#endif /* USE_SERVER */
/* /*
* XSI message queue API. These are exported by the DLL. * XSI message queue API. These are exported by the DLL.
@ -93,7 +91,6 @@ client_request_msg::client_request_msg (int msqid,
extern "C" int extern "C" int
msgctl (int msqid, int cmd, struct msqid_ds *buf) msgctl (int msqid, int cmd, struct msqid_ds *buf)
{ {
#ifdef USE_SERVER
syscall_printf ("msgctl (msqid = %d, cmd = 0x%x, buf = %p)", syscall_printf ("msgctl (msqid = %d, cmd = 0x%x, buf = %p)",
msqid, cmd, buf); msqid, cmd, buf);
myfault efault; myfault efault;
@ -126,17 +123,11 @@ msgctl (int msqid, int cmd, struct msqid_ds *buf)
return -1; return -1;
} }
return request.retval (); return request.retval ();
#else
set_errno (ENOSYS);
raise (SIGSYS);
return -1;
#endif
} }
extern "C" int extern "C" int
msgget (key_t key, int msgflg) msgget (key_t key, int msgflg)
{ {
#ifdef USE_SERVER
syscall_printf ("msgget (key = %U, msgflg = 0x%x)", key, msgflg); syscall_printf ("msgget (key = %U, msgflg = 0x%x)", key, msgflg);
client_request_msg request (key, msgflg); client_request_msg request (key, msgflg);
if (request.make_request () == -1 || request.retval () == -1) if (request.make_request () == -1 || request.retval () == -1)
@ -148,17 +139,11 @@ msgget (key_t key, int msgflg)
return -1; return -1;
} }
return request.retval (); return request.retval ();
#else
set_errno (ENOSYS);
raise (SIGSYS);
return -1;
#endif
} }
extern "C" ssize_t extern "C" ssize_t
msgrcv (int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg) msgrcv (int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg)
{ {
#ifdef USE_SERVER
syscall_printf ("msgrcv (msqid = %d, msgp = %p, msgsz = %d, " syscall_printf ("msgrcv (msqid = %d, msgp = %p, msgsz = %d, "
"msgtyp = %d, msgflg = 0x%x)", "msgtyp = %d, msgflg = 0x%x)",
msqid, msgp, msgsz, msgtyp, msgflg); msqid, msgp, msgsz, msgtyp, msgflg);
@ -175,17 +160,11 @@ msgrcv (int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg)
return -1; return -1;
} }
return request.rcvval (); return request.rcvval ();
#else
set_errno (ENOSYS);
raise (SIGSYS);
return -1;
#endif
} }
extern "C" int extern "C" int
msgsnd (int msqid, const void *msgp, size_t msgsz, int msgflg) msgsnd (int msqid, const void *msgp, size_t msgsz, int msgflg)
{ {
#ifdef USE_SERVER
syscall_printf ("msgsnd (msqid = %d, msgp = %p, msgsz = %d, msgflg = 0x%x)", syscall_printf ("msgsnd (msqid = %d, msgp = %p, msgsz = %d, msgflg = 0x%x)",
msqid, msgp, msgsz, msgflg); msqid, msgp, msgsz, msgflg);
myfault efault; myfault efault;
@ -201,9 +180,4 @@ msgsnd (int msqid, const void *msgp, size_t msgsz, int msgflg)
return -1; return -1;
} }
return request.retval (); return request.retval ();
#else
set_errno (ENOSYS);
raise (SIGSYS);
return -1;
#endif
} }

View File

@ -1,6 +1,6 @@
/* sem.cc: XSI IPC interface for Cygwin. /* sem.cc: XSI IPC interface for Cygwin.
Copyright 2003 Red Hat, Inc. Copyright 2003, 2004, 2009 Red Hat, Inc.
This file is part of Cygwin. This file is part of Cygwin.
@ -9,7 +9,6 @@ Cygwin license. Please consult the file "CYGWIN_LICENSE" for
details. */ details. */
#include "winsup.h" #include "winsup.h"
#ifdef USE_SERVER
#include <unistd.h> #include <unistd.h>
#include "sigproc.h" #include "sigproc.h"
@ -67,7 +66,6 @@ client_request_sem::client_request_sem (int semid,
msglen (sizeof (_parameters.in)); msglen (sizeof (_parameters.in));
} }
#endif /* USE_SERVER */
/* /*
* XSI semaphore API. These are exported by the DLL. * XSI semaphore API. These are exported by the DLL.
@ -76,7 +74,6 @@ client_request_sem::client_request_sem (int semid,
extern "C" int extern "C" int
semctl (int semid, int semnum, int cmd, ...) semctl (int semid, int semnum, int cmd, ...)
{ {
#ifdef USE_SERVER
union semun arg = {0}; union semun arg = {0};
if (cmd == IPC_STAT || cmd == IPC_SET || cmd == IPC_INFO || cmd == SEM_INFO if (cmd == IPC_STAT || cmd == IPC_SET || cmd == IPC_INFO || cmd == SEM_INFO
|| cmd == GETALL || cmd == SETALL || cmd == SETVAL) || cmd == GETALL || cmd == SETALL || cmd == SETVAL)
@ -101,17 +98,11 @@ semctl (int semid, int semnum, int cmd, ...)
return -1; return -1;
} }
return request.retval (); return request.retval ();
#else
set_errno (ENOSYS);
raise (SIGSYS);
return -1;
#endif
} }
extern "C" int extern "C" int
semget (key_t key, int nsems, int semflg) semget (key_t key, int nsems, int semflg)
{ {
#ifdef USE_SERVER
syscall_printf ("semget (key = %U, nsems = %d, semflg = 0x%x)", syscall_printf ("semget (key = %U, nsems = %d, semflg = 0x%x)",
key, nsems, semflg); key, nsems, semflg);
client_request_sem request (key, nsems, semflg); client_request_sem request (key, nsems, semflg);
@ -124,17 +115,11 @@ semget (key_t key, int nsems, int semflg)
return -1; return -1;
} }
return request.retval (); return request.retval ();
#else
set_errno (ENOSYS);
raise (SIGSYS);
return -1;
#endif
} }
extern "C" int extern "C" int
semop (int semid, struct sembuf *sops, size_t nsops) semop (int semid, struct sembuf *sops, size_t nsops)
{ {
#ifdef USE_SERVER
syscall_printf ("semop (semid = %d, sops = %p, nsops = %d)", syscall_printf ("semop (semid = %d, sops = %p, nsops = %d)",
semid, sops, nsops); semid, sops, nsops);
myfault efault; myfault efault;
@ -150,9 +135,4 @@ semop (int semid, struct sembuf *sops, size_t nsops)
return -1; return -1;
} }
return request.retval (); return request.retval ();
#else
set_errno (ENOSYS);
raise (SIGSYS);
return -1;
#endif
} }

View File

@ -1,6 +1,6 @@
/* setlsapwd.cc: Set LSA private data password for current user. /* setlsapwd.cc: Set LSA private data password for current user.
Copyright 2008 Red Hat, Inc. Copyright 2008, 2009 Red Hat, Inc.
This file is part of Cygwin. This file is part of Cygwin.
@ -22,7 +22,6 @@ details. */
#include <stdlib.h> #include <stdlib.h>
#include <wchar.h> #include <wchar.h>
#ifdef USE_SERVER
/* /*
* client_request_setpwd Constructor * client_request_setpwd Constructor
*/ */
@ -37,8 +36,6 @@ client_request_setpwd::client_request_setpwd (PUNICODE_STRING passwd)
msglen (sizeof (_parameters.in)); msglen (sizeof (_parameters.in));
} }
#endif /* USE_SERVER */
unsigned long unsigned long
setlsapwd (const char *passwd) setlsapwd (const char *passwd)
{ {
@ -74,17 +71,14 @@ setlsapwd (const char *passwd)
__seterrno_from_nt_status (status); __seterrno_from_nt_status (status);
LsaClose (lsa); LsaClose (lsa);
} }
#ifdef USE_SERVER
else if (ret) else if (ret)
{ {
/* If that fails, ask cygserver. */
client_request_setpwd request (&data); client_request_setpwd request (&data);
if (request.make_request () == -1 || request.error_code ()) if (request.make_request () == -1 || request.error_code ())
set_errno (request.error_code ()); set_errno (request.error_code ());
else else
ret = 0; ret = 0;
} }
#endif
if (data_buf) if (data_buf)
{ {
memset (data.Buffer, 0, data.Length); memset (data.Buffer, 0, data.Length);

View File

@ -1,6 +1,6 @@
/* shm.cc: XSI IPC interface for Cygwin. /* shm.cc: XSI IPC interface for Cygwin.
Copyright 2003 Red Hat, Inc. Copyright 2003, 2004, 2007, 2009 Red Hat, Inc.
This file is part of Cygwin. This file is part of Cygwin.
@ -9,7 +9,6 @@ Cygwin license. Please consult the file "CYGWIN_LICENSE" for
details. */ details. */
#include "winsup.h" #include "winsup.h"
#ifdef USE_SERVER
#include <sys/queue.h> #include <sys/queue.h>
#include <unistd.h> #include <unistd.h>
@ -142,7 +141,6 @@ fixup_shms_after_fork ()
} }
return 0; return 0;
} }
#endif /* USE_SERVER */
/* /*
* XSI shmaphore API. These are exported by the DLL. * XSI shmaphore API. These are exported by the DLL.
@ -151,7 +149,6 @@ fixup_shms_after_fork ()
extern "C" void * extern "C" void *
shmat (int shmid, const void *shmaddr, int shmflg) shmat (int shmid, const void *shmaddr, int shmflg)
{ {
#ifdef USE_SERVER
syscall_printf ("shmat (shmid = %d, shmaddr = %p, shmflg = 0x%x)", syscall_printf ("shmat (shmid = %d, shmaddr = %p, shmflg = 0x%x)",
shmid, shmaddr, shmflg); shmid, shmaddr, shmflg);
@ -247,17 +244,11 @@ shmat (int shmid, const void *shmaddr, int shmflg)
SLIST_INSERT_HEAD (&sph_list, sph_entry, sph_next); SLIST_INSERT_HEAD (&sph_list, sph_entry, sph_next);
SLIST_UNLOCK (); SLIST_UNLOCK ();
return ptr; return ptr;
#else
set_errno (ENOSYS);
raise (SIGSYS);
return (void *) -1;
#endif
} }
extern "C" int extern "C" int
shmctl (int shmid, int cmd, struct shmid_ds *buf) shmctl (int shmid, int cmd, struct shmid_ds *buf)
{ {
#ifdef USE_SERVER
syscall_printf ("shmctl (shmid = %d, cmd = %d, buf = 0x%x)", syscall_printf ("shmctl (shmid = %d, cmd = %d, buf = 0x%x)",
shmid, cmd, buf); shmid, cmd, buf);
myfault efault; myfault efault;
@ -295,17 +286,11 @@ shmctl (int shmid, int cmd, struct shmid_ds *buf)
SLIST_UNLOCK (); SLIST_UNLOCK ();
} }
return request.retval (); return request.retval ();
#else
set_errno (ENOSYS);
raise (SIGSYS);
return -1;
#endif
} }
extern "C" int extern "C" int
shmdt (const void *shmaddr) shmdt (const void *shmaddr)
{ {
#ifdef USE_SERVER
syscall_printf ("shmdt (shmaddr = %p)", shmaddr); syscall_printf ("shmdt (shmaddr = %p)", shmaddr);
client_request_shm request (shmaddr); client_request_shm request (shmaddr);
if (request.make_request () == -1 || request.retval () == -1) if (request.make_request () == -1 || request.retval () == -1)
@ -341,17 +326,11 @@ shmdt (const void *shmaddr)
} }
SLIST_UNLOCK (); SLIST_UNLOCK ();
return request.retval (); return request.retval ();
#else
set_errno (ENOSYS);
raise (SIGSYS);
return -1;
#endif
} }
extern "C" int extern "C" int
shmget (key_t key, size_t size, int shmflg) shmget (key_t key, size_t size, int shmflg)
{ {
#ifdef USE_SERVER
syscall_printf ("shmget (key = %U, size = %d, shmflg = 0x%x)", syscall_printf ("shmget (key = %U, size = %d, shmflg = 0x%x)",
key, size, shmflg); key, size, shmflg);
/* Try allocating memory before calling cygserver. */ /* Try allocating memory before calling cygserver. */
@ -398,9 +377,4 @@ shmget (key_t key, size_t size, int shmflg)
SLIST_INSERT_HEAD (&ssh_list, ssh_new_entry, ssh_next); SLIST_INSERT_HEAD (&ssh_list, ssh_new_entry, ssh_next);
SLIST_UNLOCK (); SLIST_UNLOCK ();
return shmid; return shmid;
#else
set_errno (ENOSYS);
raise (SIGSYS);
return -1;
#endif
} }

View File

@ -1,3 +1,12 @@
2009-01-21 Corinna Vinschen <corinna@vinschen.de>
* cygserver.sgml: Remove the "How to use the Cygserver services"
section.
* cygwinenv.sgml: Move "(no)server" to the removed options section.
* faq-programming.xml: Remove CYGWIN=server requirement for running
the Cygwin testsuite.
* ntsec.sgml: Ditto for using `passwd -R'.
2008-12-15 Corinna Vinschen <corinna@vinschen.de> 2008-12-15 Corinna Vinschen <corinna@vinschen.de>
* gcc.sgml: Use 'bash$' as Cygwin prompt throughout. * gcc.sgml: Use 'bash$' as Cygwin prompt throughout.

View File

@ -191,51 +191,6 @@
</sect2> </sect2>
<sect2 id="use-cygserver"><title>How to use the Cygserver services</title>
<para>
The Cygserver services are used by Cygwin applications only if you
set the environment variable CYGWIN to contain the string "server".
You must do this before starting the application.
</para>
<para>
Typically, you don't need any other option, so it's ok to set CYGWIN
just to "server". It is not necessary to set the CYGWIN environment
variable prior to starting the Cygserver process itself, but it won't
hurt to do so.
</para>
<para>
The easiest way is to set the environment variable CYGWIN to the values
you want in the Windows system environment and to reboot the machine.
This is advisable, since it allows you to set the variable once and
then forget about it. It also ensures that services as well as desktop
applications have the same setting.
</para>
<para>
If you don't want that for whatever reason, you can set the
variable in the /cygwin.bat file which is used in the net distribution,
to start a Cygwin bash from the desktop. In that file, you can set
the CYGWIN variable using Windows command line interpreter syntax, e. g.:
</para>
<para>
<screen>
set CYGWIN=server
</screen>
</para>
<para>
If you don't set CYGWIN in the system environment, but you're running
other Cygwin services, these services need to get that CYGWIN value by
setting the environment using the appropriate cygrunsrv option '-e' when
installing the service. Example installing a service 'foo':
</para>
<para>
<screen>
cygrunsrv -I foo -p /usr/sbin/foo -e "CYGWIN=server"
</screen>
</para>
</sect2>
<sect2 id="cygserver-config"><title>The Cygserver configuration file</title> <sect2 id="cygserver-config"><title>The Cygserver configuration file</title>
<para> <para>

View File

@ -99,17 +99,6 @@ to 9600-8-N-1 with no flow control when used. This is done at open
time and when handles are inherited. Defaults to set.</para> time and when handles are inherited. Defaults to set.</para>
</listitem> </listitem>
<listitem>
<para><envar>(no)server</envar> - if set, allows client applications
to use the Cygserver facilities. This option must be enabled explicitely
on the client side, otherwise your applications won't be able to use the
XSI IPC function calls (<function>msgget</function>,
<function>semget</function>, <function>shmget</function>, and friends)
successfully. These function calls will return with
<literal>ENOSYS</literal>, "Bad system call".
</para>
</listitem>
<listitem> <listitem>
<para><envar>(no)strip_title</envar> - if set, strips the directory <para><envar>(no)strip_title</envar> - if set, strips the directory
part off the window title, if any. Default is not set.</para> part off the window title, if any. Default is not set.</para>
@ -218,6 +207,15 @@ the per-mount option "acl"/"noacl". For more information, read the
documentation in <xref linkend="mount-table"></xref>.</para> documentation in <xref linkend="mount-table"></xref>.</para>
</listitem> </listitem>
<listitem>
<para><envar>(no)server</envar> - Originally this option had to be
enabled on the client side to use features only available when running
<command>cygserver</command>. This option has been removed because Cygwin now
always tries to contact cygserver if a function is called which requires
cygserver being available. For more information, read the documentation
in <xref linkend="using-cygserver"></xref>.</para>
</listitem>
<listitem> <listitem>
<para><envar>(no)smbntsec</envar> - This option has been removed in favor of <para><envar>(no)smbntsec</envar> - This option has been removed in favor of
the per-mount option "acl"/"noacl". For more information, read the the per-mount option "acl"/"noacl". For more information, read the

View File

@ -439,9 +439,7 @@ rewriting the runtime library in question from specs...
<para>First, you need to make sure you have the necessary build tools <para>First, you need to make sure you have the necessary build tools
installed; you at least need <literal>gcc</literal>, <literal>make</literal>, installed; you at least need <literal>gcc</literal>, <literal>make</literal>,
<literal>perl</literal>, and <literal>cocom</literal>. If you want to run <literal>perl</literal>, and <literal>cocom</literal>. If you want to run
the tests, <literal>dejagnu</literal> is also required, the tests, <literal>dejagnu</literal> is also required.
and you need to have <literal>CYGWIN=server</literal> set as described at
<ulink url="http://www.cygwin.com/cygwin-ug-net/using-cygserver.html" />.
Normally, building ignores any errors in building the documentation, Normally, building ignores any errors in building the documentation,
which requires the <literal>docbook-xml42</literal>, <literal>docbook-xsl</literal>, and which requires the <literal>docbook-xml42</literal>, <literal>docbook-xsl</literal>, and
<literal>xmlto</literal> packages. For more information on building the <literal>xmlto</literal> packages. For more information on building the

View File

@ -790,22 +790,11 @@ all network credentials. Hmm, that's heaven...</para>
<para>First, adding a password to the LSA private registry area <para>First, adding a password to the LSA private registry area
requires administrative access. So calling <command>passwd -R</command> requires administrative access. So calling <command>passwd -R</command>
as a normal user will fail. Cygwin provides a workaround for as a normal user will fail! Cygwin provides a workaround for
this. If <command>cygserver</command> is started as a service running this. If <command>cygserver</command> is started as a service running
under the SYSTEM account (which is the default way to run under the SYSTEM account (which is the default way to run
<command>cygserver</command>) you can use <command>passwd -R</command> <command>cygserver</command>) you can use <command>passwd -R</command>
as normal, non-privileged user as well. Just keep in mind that this as normal, non-privileged user as well.</para>
requires to set the environment variable CYGWIN to contain the word
"server" before running <command>passwd -R</command>, if it's not
already set anyway. See <xref linkend="using-cygwinenv"></xref>.
Example:</para>
<screen>
bash$ echo $CYGWIN
tty
bash$ export CYGWIN="tty server"
bash$ passwd -R
</screen>
<para>Second, as aforementioned, the password is two-way encrypted in a <para>Second, as aforementioned, the password is two-way encrypted in a
hidden, obfuscated registry area. Only SYSTEM has access to this area hidden, obfuscated registry area. Only SYSTEM has access to this area

View File

@ -1,3 +1,7 @@
2009-01-21 Corinna Vinschen <corinna@vinschen.de>
* passwd.c: Remove CYGWIN=server requirement from usage text.
2009-01-17 Corinna Vinschen <corinna@vinschen.de> 2009-01-17 Corinna Vinschen <corinna@vinschen.de>
* Makefile.in: Fix copyright date. * Makefile.in: Fix copyright date.

View File

@ -1,6 +1,6 @@
/* passwd.c: Changing passwords and managing account information /* passwd.c: Changing passwords and managing account information
Copyright 1999, 2000, 2001, 2002, 2003, 2008 Red Hat, Inc. Copyright 1999, 2000, 2001, 2002, 2003, 2008, 2009 Red Hat, Inc.
Written by Corinna Vinschen <corinna.vinschen@cityweb.de> Written by Corinna Vinschen <corinna.vinschen@cityweb.de>
@ -289,8 +289,8 @@ usage (FILE * stream, int status)
"operations. Don't specify a USER when triggering a system operation.\n" "operations. Don't specify a USER when triggering a system operation.\n"
"\n" "\n"
"Don't specify a user or any other option together with the -R option.\n" "Don't specify a user or any other option together with the -R option.\n"
"Non-Admin users can only store their password if cygserver is running and\n" "Non-Admin users can only store their password if cygserver is running\n"
"the CYGWIN environment variable is set to contain the word 'server'.\n" "as service under the SYSTEM account.\n"
"Note that storing even obfuscated passwords in the registry is not overly\n" "Note that storing even obfuscated passwords in the registry is not overly\n"
"secure. Use this feature only if the machine is adequately locked down.\n" "secure. Use this feature only if the machine is adequately locked down.\n"
"Don't use this feature if you don't need network access within a remote\n" "Don't use this feature if you don't need network access within a remote\n"