<div dir="ltr">Friends, the outcome of all this (I know you were on the edge of your seats) is that getaddrinfo is thread-safe on modern Darwin, OpenBSD, and NetBSD. I updated CPython to allow concurrent getaddrinfo calls on all these BSDs:<div><div><br></div><div><a href="http://bugs.python.org/issue25924">http://bugs.python.org/issue25924</a></div></div><div><a href="http://bugs.python.org/issue26406">http://bugs.python.org/issue26406</a><br></div><div><br></div><div>CPython had already been fixed for FreeBSD. I leave Dragonfly BSD as an exercise for the reader.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Feb 16, 2016 at 7:38 PM, A. Jesse Jiryu Davis <span dir="ltr"><<a href="mailto:jesse@emptysquare.net" target="_blank">jesse@emptysquare.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi, it's me again, and I'm asking about getaddrinfo again, but this time on NetBSD. There's evidence that it was made thread-safe around NetBSD 4.0, but I can't find a specific commit or bug report.<div><br></div><div>Question: Can you help me find evidence of a bugfix in NetBSD that made getaddrinfo thread-safe?</div><div><br></div><div>Background:</div><div><br></div><div>CPython has long treated getaddrinfo as *not* thread-safe on all BSDs, including Mac OS X. It's been updated to allow multithreaded getaddrinfo calls on FreeBSD 5.3+, and I just updated it for Mac OS X 10.5+ with your help:</div><div><br></div><div><a href="http://bugs.python.org/issue25924" target="_blank">http://bugs.python.org/issue25924</a><br></div><div><br></div><div>I can update CPython on OpenBSD easily because OpenBSD 5.4's release notes say "getaddrinfo(3) is now thread-safe".</div><div><br></div><div>So, NetBSD is the last frontier. Between NetBSD 3 and 4, the man page was updated to remove the "bugs: getaddrinfo is not thread-safe" warning. But NetBSD 4's changelog does not, AFAICT, actually say that getaddrinfo was fixed.</div><div><br></div><div>Thanks!</div><span class="HOEnZb"><font color="#888888"><div>Jesse</div></font></span></div>
</blockquote></div><br></div>