On Fri, 2002-11-08 at 15:16, [EMAIL PROTECTED] wrote: > I was trying to make it work with HTTPS, and after a few rounds > gave up on it. If turning non-blocking connects off does not help, > fork a process and run LWP or LWP::PUA in it. Or try PoCoCl::HTTP. > > There may be a different way to create or handle sockets that > could improve things a bit, but otherwise I don't think it's an LWP > or LWP::PUA or PoCoCl::UA problem. The underlying SSL libraries > just don't like non-blocking sockets at all. You can try filing bugs > against them.
Interesting, in fact, I have done that. I have a component that runs in POE::Wheel::Run that calls LWP, and use Cache::Cache to pass back the response. I consider it a kludge though. The curious part is, if the problem is the underlying SSL library. Then how does PoCoCL::HTTP work with it at all? You see the conflict in this logic. After all, the same SSL libray is used. > But the other thing is, the way LWP and LWP::PUA are designed it's > pretty much impossible to make them truly POE-friendly. For > example, an FTP request will block for the entire duration of the > connection establishment phase. So a future version of PoCoCl::UA > should do away with the LWP dependency entirely. To do away w/ LWP totally may not be so easy. One reason is that it has become somewhat of a standard. People expect the same API's for the request, response, and UserAgent. I wonder whether it's possible to change the low level code so a fix similar to what PoCoCl::HTTP uses can be adapted. Pete