* cygwinenv.sgml (cygwinenv-implemented-options): Add detect_bloda.

* new-features.sgml (ov-new1.7.12): Add list items for the change to
	flock and the detect_bloda CYGWIN option.
	* overview2.sgml (ov-hi-process-problems): Add a reference to the
	detect_bloda CYGWIN option.
This commit is contained in:
Corinna Vinschen 2012-03-30 11:30:13 +00:00
parent 8a92f14092
commit e612307024
4 changed files with 40 additions and 2 deletions

View File

@ -1,3 +1,11 @@
2012-03-30 Corinna Vinschen <corinna@vinschen.de>
* cygwinenv.sgml (cygwinenv-implemented-options): Add detect_bloda.
* new-features.sgml (ov-new1.7.12): Add list items for the change to
flock and the detect_bloda CYGWIN option.
* overview2.sgml (ov-hi-process-problems): Add a reference to the
detect_bloda CYGWIN option.
2012-03-27 Corinna Vinschen <corinna@vinschen.de> 2012-03-27 Corinna Vinschen <corinna@vinschen.de>
* new-features.sgml (ov-new1.7.12): Create. Move mountinfo here. * new-features.sgml (ov-new1.7.12): Create. Move mountinfo here.

View File

@ -11,6 +11,16 @@ by prefixing with <literal>no</literal>.</para>
<itemizedlist mark="bullet"> <itemizedlist mark="bullet">
<listitem>
<para><envar>(no)detect_bloda</envar> - If set, Cygwin will try to detect
foreign applications which try to inject threads into a Cygwin process,
or which redirect system sockets by providing an enforced so-called
<literal>Layered Service Provider</literal>. This may or may not help to
detect <ulink url="http://cygwin.com/faq/faq.using.html#faq.using.bloda">
BLODAs</ulink>. Don't use this option for day-to-day usage, it will slow
down every thread and socket creation!</para>
</listitem>
<listitem> <listitem>
<para><envar>(no)dosfilewarning</envar> - If set, Cygwin will warn the <para><envar>(no)dosfilewarning</envar> - If set, Cygwin will warn the
first time a user uses an "MS-DOS" style path name rather than a POSIX-style first time a user uses an "MS-DOS" style path name rather than a POSIX-style

View File

@ -13,6 +13,24 @@ POSIX devices.
Add virtual /proc/PID/mountinfo file. Add virtual /proc/PID/mountinfo file.
</para></listitem> </para></listitem>
<listitem><para>
flock now additionaly supports the following scenario, which requires
to propagate locks to the parent process:
(
flock -n 9 || exit 1
# ... commands executed under lock ...
} 9>/var/lock/mylockfile
Only propagation to the direct parent process is supported so far,
not to grand parents or sibling processes.
</para></listitem>
<listitem><para>
Add a "detect_bloda" setting for the CYGWIN environment variable to help
finding potential BLODAs.
</para></listitem>
</itemizedlist> </itemizedlist>
</sect2> </sect2>

View File

@ -387,8 +387,10 @@ BLODA</ulink>. Badly-behaved applications which
inject dlls into other processes often manage to clobber important inject dlls into other processes often manage to clobber important
sections of the child's address space, leading to base address sections of the child's address space, leading to base address
collisions which rebasing cannot fix. The only way to resolve this collisions which rebasing cannot fix. The only way to resolve this
problem is to remove (usually uninstall) the offending problem is to remove (usually uninstall) the offending app. See
app.</listitem></itemizedlist></para> <xref linkend="cygwinenv-implemented-options"></xref> for the
<literal>detect_bloda</literal> option, which may be able to identify the
BLODA.</listitem></itemizedlist></para>
<para>In summary, current Windows implementations make it <para>In summary, current Windows implementations make it
impossible to implement a perfectly reliable fork, and occasional impossible to implement a perfectly reliable fork, and occasional