I wrote: > I chased down the Haskell code that he pointed to. > It turns out that the accept function in the network > package, unlike the underlying C function, does a > reverse DNS lookup every time it accepts a connection. > Sounds to me like that might be the problem. > (Although that doesn't explain the list-users script, > which isn't in Haskell.)
No, I now see that's wrong. The RDNS lookup there is lazy. It would only be called if the client tries to use the host name, and hackage does not. The answer is that this problem is inherent to the CGI protocol, which is what Hackage currently uses. CGI supplies the resolved client host name to the web application in an environment variable. So the web server (Apache in this case) will always have do a reverse DNS lookup by definition. (Environment variables are strict. Too bad.) I guess for now the only solution is to access Hackage via a proxy on a host whose reverse DNS is working. That's not hard to set up using ssh -D. Sorry, I wish I could give a better answer. -Yitz _______________________________________________ haskell-infrastructure mailing list [email protected] http://community.galois.com/mailman/listinfo/haskell-infrastructure
