* 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>
|
2006-01-25 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
|
||||||
|
|
||||||
* faq-programming.xml (faq.programming.building-cygwin): Add
|
* faq-programming.xml (faq.programming.building-cygwin): Add
|
||||||
|
|
|
@ -118,6 +118,20 @@ for more information on using mount.
|
||||||
|
|
||||||
</answer></qandaentry>
|
</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">
|
<qandaentry id="faq.programming.winmain">
|
||||||
<question><para>Why the undefined reference to <literal>WinMain@16</literal>?</para></question>
|
<question><para>Why the undefined reference to <literal>WinMain@16</literal>?</para></question>
|
||||||
<answer>
|
<answer>
|
||||||
|
|
|
@ -347,7 +347,8 @@ in <ulink
|
||||||
url="http://cygwin.com/faq/faq.setup.html#faq.setup.uninstall-service" /> for
|
url="http://cygwin.com/faq/faq.setup.html#faq.setup.uninstall-service" /> for
|
||||||
all services that you installed. Common services that might have been
|
all services that you installed. Common services that might have been
|
||||||
installed are <literal>sshd</literal>, <literal>cron</literal>,
|
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>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
<listitem><para>Stop the X11 server if it is running, and terminate any Cygwin programs
|
<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
|
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
|
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
|
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
|
The chmod call maps UNIX-style permissions
|
||||||
back to the Win32 equivalents. Because many programs expect to be able to find
|
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
|
the /etc/passwd and /etc/group files, we provide <ulink
|
||||||
construct them from the user and group information provided by the operating
|
url="http://cygwin.com/cygwin-ug-net/using-utils.html#mount">utilities</ulink>
|
||||||
system.</para>
|
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
|
<para>Under Windows NT, users with Administrator rights are permitted to
|
||||||
is no mechanism to support the setuid concept or API call since Cygwin version
|
chown files. With version 1.1.3 Cygwin introduced a mechanism for setting real
|
||||||
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
|
||||||
and effective UIDs under Windows NT/W2K. This is described in the ntsec
|
<xref linkend="ntsec"></xref>. As of version 1.5.13, the Cygwin developers
|
||||||
section.</para>
|
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
|
<para>Under Windows 9x, the situation is considerably different. Since a
|
||||||
security model is not provided, Cygwin fakes file ownership by making all
|
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
|
whatsoever. This is appropriate since essentially all users jointly own the
|
||||||
files when no concept of file ownership exists.</para>
|
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>
|
||||||
|
|
||||||
<sect2 id="ov-hi-files"><title>File Access</title> <para>Cygwin supports
|
<sect2 id="ov-hi-files"><title>File Access</title> <para>Cygwin supports
|
||||||
|
|
Loading…
Reference in New Issue