Re: Cleaning up ink_gethostbyname_r and ink_gethostbyaddr_r

2012-04-01 Thread Alan M. Carroll
ats_getbestaddrinfo is already implemented. It's in lib/ts/ink_inet.cc. It's a bit hard to use, I need to improve it :-) but you can see examples if you look at the commits for those issues. The issue is that you can get back both an IPv4 and an IPv6 address. I've filed TS-1070 to remind me to

Re: Cleaning up ink_gethostbyname_r and ink_gethostbyaddr_r

2012-03-31 Thread Alan M. Carroll
I have fixed TS-1166, TS-1167, TS-1168, TS-1017 all of which eliminate uses of gethostbyname. Looks to me like only clustering, web management, CoreAPIShared.cc in mgmt, and some test code are still problematic. Except for clustering those look like using ats_getbestaddrinfo() would work (since

Re: Cleaning up ink_gethostbyname_r and ink_gethostbyaddr_r

2012-03-27 Thread John Plevyak
Search for the line: The lookup functions above all have one in common: they are not reentrant and therefore unusable in multi-threaded applications. Therefore provides the GNU C library a new set of functions which can be used in this context. Perhaps it operates differently if _POSIX_SOURCE is

Re: Cleaning up ink_gethostbyname_r and ink_gethostbyaddr_r

2012-03-27 Thread Alan M. Carroll
I would presume that applies to the functions documented on the page, not getaddrinfo which is mentioned only in passing. This is reenforced by getaddrinfo having its own documentation page. Just for amusement value, here's a couple of bug reports of gethostbyaddr_r() crashing under load -

Re: Cleaning up ink_gethostbyname_r and ink_gethostbyaddr_r

2012-03-27 Thread John Plevyak
Great. Then it seems like it is time to make the move into the 21st century. john On Tue, Mar 27, 2012 at 3:46 PM, Alan M. Carroll a...@network-geographics.com wrote: I would presume that applies to the functions documented on the page, not getaddrinfo which is mentioned only in passing.

Cleaning up ink_gethostbyname_r and ink_gethostbyaddr_r

2012-03-26 Thread Brian Geffon
Hi all, In an effort to get ATS to build on OpenBSD, I noticed that we're using gethostbyname_r and gethostbyaddr_r (see ink_inet.cc), according to the manpage both of these APIs are obsolete and getaddrinfo should be used (which is reentrant by default), I only noticed this because OpenBSD 5.0

Re: Cleaning up ink_gethostbyname_r and ink_gethostbyaddr_r

2012-03-26 Thread Igor Galić
- Original Message - Hi all, In an effort to get ATS to build on OpenBSD, I noticed that we're using gethostbyname_r and gethostbyaddr_r (see ink_inet.cc), according to the manpage both of these APIs are obsolete and getaddrinfo should be used (which is reentrant by default), I

Re: Cleaning up ink_gethostbyname_r and ink_gethostbyaddr_r

2012-03-26 Thread Igor Galić
- Original Message - - Original Message - Hi all, In an effort to get ATS to build on OpenBSD, I noticed that we're using gethostbyname_r and gethostbyaddr_r (see ink_inet.cc), according to the manpage both of these APIs are obsolete and getaddrinfo should be

Re: Cleaning up ink_gethostbyname_r and ink_gethostbyaddr_r

2012-03-26 Thread Alan M. Carroll
Mostly reasonable, just a few things to do better: 1) Do not use the ink_ prefix, we're moving to ats_. 2) It's not clear to me we need to wrap getaddrinfo at all unless you can simplify the api (e.g., ats_getbestaddrinfo). 3) Looking at the call sites which still use ink_gethostbyname, I

Re: Cleaning up ink_gethostbyname_r and ink_gethostbyaddr_r

2012-03-26 Thread Alan M. Carroll
I filed TS-1166, TS-1167, TS-1168, to track some of these places. TS-990 tracks the Cluster issue, and TS-1017 tracks it in logging. I am working on the logging. I will try to get through these others although others are welcome to step up :-).