You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@logging.apache.org by "Robert Middleton (Jira)" <lo...@logging.apache.org> on 2021/12/11 15:15:00 UTC

[jira] [Resolved] (LOGCXX-431) When log4cxx creates a thread, it doesn't block signals it's not using, leading to unreliable signal delivery for the calling process.

     [ https://issues.apache.org/jira/browse/LOGCXX-431?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Robert Middleton resolved LOGCXX-431.
-------------------------------------
    Resolution: Fixed

> When log4cxx creates a thread, it doesn't block signals it's not using, leading to unreliable signal delivery for the calling process.
> --------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: LOGCXX-431
>                 URL: https://issues.apache.org/jira/browse/LOGCXX-431
>             Project: Log4cxx
>          Issue Type: Bug
>    Affects Versions: 0.10.0
>         Environment: Debian
>            Reporter: Tobias Frost
>            Priority: Major
>             Fix For: 0.13.0
>
>
> This bug was orginially reported in the Debian BTS, https://bugs.debian.org/548074
> As I could not find the bug here, I assume it has not been reported. Otherwise, please just let me know the reference :)
> Best regards,
> Tobias Frost
> Debian BTS Text:
> Package: liblog4cxx10
> Version: 0.10.0-1
> Severity: normal
>   In a multithreaded program, POSIX signals are sent to an arbitrary
> thread that hasn't blocked them via sigprocmask().  This means that
> when it matters which thread gets the signal -- for instance, if
> sigwait() is being used to serialize signals -- the program must ensure
> that every other thread has blocked the signal in question.  Otherwise,
> the signal might be delivered to the wrong thread and lost.
>   liblog4cxx automatically starts threads sometimes, and it doesn't
> adjust their thread masks.  It really should block out every signal
> that it isn't interested in itself, so that programs using sigwait()
> can also use log4cxx.
>   See also #547212.
>   Daniel
> -- System Information:
> Debian Release: squeeze/sid
>   APT prefers unstable
>   APT policy: (500, 'unstable'), (1, 'experimental')
> Architecture: i386 (i686)
> Kernel: Linux 2.6.30-1-686 (SMP w/2 CPU cores)
> Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
> Shell: /bin/sh linked to /bin/bash
> Versions of packages liblog4cxx10 depends on:
> ii  libapr1                     1.3.8-1      The Apache Portable Runtime Librar
> ii  libaprutil1                 1.3.9+dfsg-1 The Apache Portable Runtime Utilit
> ii  libc6                       2.9-26       GNU C Library: Shared libraries
> ii  libgcc1                     1:4.4.1-3    GCC support library
> ii  libstdc++6                  4.4.1-3      The GNU Standard C++ Library v3
> ii  libuuid1                    2.16-3       Universally Unique ID library
> liblog4cxx10 recommends no packages.
> liblog4cxx10 suggests no packages.
> -- no debconf information



--
This message was sent by Atlassian Jira
(v8.20.1#820001)