--On Monday, September 01, 2003 12:35:43 -0400 Bruce Momjian <[EMAIL PROTECTED]> wrote:
UnixWare's Kernel is threaded, and I assume anything in libc is threadsafe unless
Um. I don't think that's true. I mean, in theory it's true, but in practice why would an OS have some *_r but have only non-thread-safe versions of others?
Oh, interesting. So you are saying that if the OS supports threads, then we use the *_r if they have them, and assume the non *_r functions are already thread-safe if they don't. Interesting.
That seems to be what we have on Unixware, and on BSD/OS I have some *_r functions but not others, but they are all threadsafe, so your plan works there too.
told otherwise.
[snip]
I have no preference. I would just like to see a thread-safe libpq.We could go down that road. The only other OS that needs *_r functions is Linux, and it uses all *_r functions. How do we configure to throw an error in that OS if we don't fined all of them? Maybe we need a three-valued variable instead of boolean NEED_REENTRANT_FUNC_NAMES. We could call it just REENTRANT_FUNC_NAMES and it could have values 'require', 'prefer', 'disable'. This mimicks libpq's new PGSSLMODE values.
That sounds like a clear plan.
-- Larry Rosenman http://www.lerctr.org/~ler Phone: +1 972-414-9812 E-Mail: [EMAIL PROTECTED] US Mail: 1905 Steamboat Springs Drive, Garland, TX 75044-6749
---------------------------(end of broadcast)--------------------------- TIP 5: Have you checked our extensive FAQ?
http://www.postgresql.org/docs/faqs/FAQ.html