Hi, Looking at the pjlib/src/pj/sock_linux_kernel.c implementation of pj_inet_ntoa(), it doesn’t appear to be thread-safe either!! It uses a static char array: static char b[18]; The glibc workaround for this is to use a static char array per thread: static __thread char buffer[18]; Note - inet_ntoa() is now considered to be deprecated in favour of inet_ntop() - which uses a user supplied char array, is thread-safe, and handles IPV4 and IPV6 addresses [inet_ntoa() is IPV4 only]. Regards, Ian > On 12 Oct 2017, at 09:02, Bernhard Schmidt <berni@xxxxxxxxxxxxx> wrote: > > Hi, > > a severe bug was recently opened in Debian > (https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=877364) which > threatens pjproject to be removed due to licensing issues (as you may > know, Debian is very strict regarding correct licenses). > > pjproject as a whole is GPLv2+. However, there are two functions in > pjlib/src/pj/sock_linux_kernel.c that have apparently been taken from > BSD, and are BSD 4-Clause licensed. This license is incompatible with GPL. > > https://www.gnu.org/licenses/license-list.html.en#OriginalBSD > https://www.gnu.org/licenses/bsd.html > > /* > * Permission to steal inet_ntoa() and inet_aton() as long as this > notice below > * is included: > */ > /* > > As far as I understand this these are pretty much standard functions. I > think the best solution would be to copy them from a GPLv2+ source and > drop the BSD 4-clause license. But I'm far from being a license expert. > > Bernhard > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip@xxxxxxxxxxxxxxx > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org _______________________________________________ Visit our blog: http://blog.pjsip.org pjsip mailing list pjsip@xxxxxxxxxxxxxxx http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org