* faq-programming.xml (faq.programming.ipc): Add new FAQ about
cygserver and its relation to the "Bad system call" error. * faq-setup.xml (faq.setup.uninstall-all): Mention postgresql. * overview2.sgml: Update security info on shared memory.
This commit is contained in:
parent
fef3f21361
commit
aba373611c
|
@ -1,3 +1,10 @@
|
|||
2006-01-26 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
|
||||
|
||||
* faq-programming.xml (faq.programming.ipc): Add new FAQ about
|
||||
cygserver and its relation to the "Bad system call" error.
|
||||
* faq-setup.xml (faq.setup.uninstall-all): Mention postgresql.
|
||||
* overview2.sgml: Update security info on shared memory.
|
||||
|
||||
2006-01-25 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
|
||||
|
||||
* faq-programming.xml (faq.programming.building-cygwin): Add
|
||||
|
|
|
@ -118,6 +118,20 @@ for more information on using mount.
|
|||
|
||||
</answer></qandaentry>
|
||||
|
||||
<qandaentry id="faq.programming.ipc">
|
||||
<question><para>How can I use IPC, or why do I get a <literal>Bad system call</literal>
|
||||
error?</para></question>
|
||||
<answer>
|
||||
|
||||
<para>
|
||||
Try running cygserver. Read
|
||||
<ulink url="http://www.cygwin.com/cygwin-ug-net/using-cygserver.html" />. If you're
|
||||
trying to use PostgreSQL, also read
|
||||
<literal>/usr/share/doc/Cygwin/postgresql-*.README</literal>.
|
||||
</para>
|
||||
|
||||
</answer></qandaentry>
|
||||
|
||||
<qandaentry id="faq.programming.winmain">
|
||||
<question><para>Why the undefined reference to <literal>WinMain@16</literal>?</para></question>
|
||||
<answer>
|
||||
|
|
|
@ -347,7 +347,8 @@ in <ulink
|
|||
url="http://cygwin.com/faq/faq.setup.html#faq.setup.uninstall-service" /> for
|
||||
all services that you installed. Common services that might have been
|
||||
installed are <literal>sshd</literal>, <literal>cron</literal>,
|
||||
<literal>cygserver</literal>, <literal>inetd</literal>, <literal>apache</literal>, and so on.
|
||||
<literal>cygserver</literal>, <literal>inetd</literal>, <literal>apache</literal>,
|
||||
<literal>postgresql</literal>, and so on.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem><para>Stop the X11 server if it is running, and terminate any Cygwin programs
|
||||
|
|
|
@ -138,18 +138,24 @@ Control Lists (ACLs). Cygwin maps Win32 file ownership and permissions to the
|
|||
more standard, older UNIX model by default. Cygwin version 1.1 introduces
|
||||
support for ACLs according to the system calls used on newer versions of
|
||||
Solaris. This ability is used when the `ntsec' feature is switched on which
|
||||
is described in another chapter.
|
||||
is described in <xref linkend="ntsec"></xref>.
|
||||
The chmod call maps UNIX-style permissions
|
||||
back to the Win32 equivalents. Because many programs expect to be able to find
|
||||
the /etc/passwd and /etc/group files, we provide utilities that can be used to
|
||||
construct them from the user and group information provided by the operating
|
||||
system.</para>
|
||||
the /etc/passwd and /etc/group files, we provide <ulink
|
||||
url="http://cygwin.com/cygwin-ug-net/using-utils.html#mount">utilities</ulink>
|
||||
that can be used to construct them from the user and group information
|
||||
provided by the operating system.</para>
|
||||
|
||||
<para>Under Windows NT, the administrator is permitted to chown files. There
|
||||
is no mechanism to support the setuid concept or API call since Cygwin version
|
||||
1.1.2. With version 1.1.3 Cygwin introduces a mechanism for setting real
|
||||
and effective UIDs under Windows NT/W2K. This is described in the ntsec
|
||||
section.</para>
|
||||
<para>Under Windows NT, users with Administrator rights are permitted to
|
||||
chown files. With version 1.1.3 Cygwin introduced a mechanism for setting real
|
||||
and effective UIDs under Windows NT/W2K. This is described in
|
||||
<xref linkend="ntsec"></xref>. As of version 1.5.13, the Cygwin developers
|
||||
are not aware of any feature in the Cygwin DLL that would allow users to gain
|
||||
privileges or to access objects to which they have no rights under Windows.
|
||||
However there is no guarantee that Cygwin is as secure as the Windows it runs
|
||||
on. Cygwin processes share some variables and are thus easier targets of
|
||||
denial of service type of attacks.
|
||||
</para>
|
||||
|
||||
<para>Under Windows 9x, the situation is considerably different. Since a
|
||||
security model is not provided, Cygwin fakes file ownership by making all
|
||||
|
@ -160,18 +166,6 @@ chown call succeeds immediately without actually performing any action
|
|||
whatsoever. This is appropriate since essentially all users jointly own the
|
||||
files when no concept of file ownership exists.</para>
|
||||
|
||||
<para>It is important that we discuss the implications of our "kernel" using
|
||||
shared memory areas to store information about Cygwin processes. Because
|
||||
these areas are not yet protected in any way, in principle a malicious user
|
||||
could modify them to cause unexpected behavior in Cygwin processes. While
|
||||
this is not a new problem under Windows 9x (because of the lack of operating
|
||||
system security), it does constitute a security hole under Windows NT.
|
||||
This is because one user could affect the Cygwin programs run by
|
||||
another user by changing the shared memory information in ways that
|
||||
they could not in a more typical WinNT program. For this reason, it
|
||||
is not appropriate to use Cygwin in high-security applications. In
|
||||
practice, this will not be a major problem for most uses of the
|
||||
library.</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="ov-hi-files"><title>File Access</title> <para>Cygwin supports
|
||||
|
|
Loading…
Reference in New Issue