[erlang-questions] Hang making https request

Rob Charlton <>
Wed Mar 18 11:14:13 CET 2009


Hi Ferenc,

Thanks, yes, I managed to work it out in the end after doing this:

http:set_options([{verbose, trace}]).

...then guessing the meaning of the messages in the trace, but it took a 
long time to get to that point, especially as the hang I was 
experiencing first showed itself as a hang in yaws_soap_lib. I was also 
thrown because it all "just worked" in R11.

My main purpose of posting this was to ask if there could be some error 
printed under these circumstances, rather than the call just blocking. 
http:request causes some error to be printed if inets isn't started, so 
why shouldn't an https request cause some error to be printed if ssl 
isn't started? I couldn't find anything on this in the inets user guide 
nor in the http module reference page. A one line example in the http 
reference showing http:request("https://..") needing an ssl:start() 
would have done just as well.

Many thanks,

Rob

Ferenc Holzhauser wrote:
> Rob,
>
> You'd need to start ssl too for HTTPS.
>
> Regards,
> Ferenc
>
> 2009/3/17 Rob Charlton < 
> <mailto:>>
>
>     I have been using Erlang R11B for some time, but thought it was about
>     time I moved up to R12B, so I pulled down the latest today and
>     built it.
>
>     Afterwards, I found that I could no longer make HTTPS requests:
>
>     :~/work/erlang/svn/erlang/lcr$ erl
>     Erlang (BEAM) emulator version 5.6.5 [source] [async-threads:0] [hipe]
>     [kernel-poll:false]
>
>     Eshell V5.6.5  (abort with ^G)
>     1> inets:start().
>     ok
>     2> http:request("https://www.cia.gov/").
>
>     The shell is now unresponsive and I have to do a CTRL C to get it
>     back.
>
>     I noticed that I had to now explicitly start inets (which used to
>     start
>     automatically) because an error message appeared when I did an http
>     request without it started. What I didn't realise was that I also
>     had to
>     explicitly start the ssl application. I managed to work this out by
>     using tracing on the http call. It won't catch me again, but will
>     probably catch someone else. Would it be possible to make it do
>     something more friendly than just hang?
>
>     --
>     Rob Charlton
>     Savage Minds Ltd
>
>
>     _______________________________________________
>     erlang-questions mailing list
>      <mailto:>
>     http://www.erlang.org/mailman/listinfo/erlang-questions
>
>


-- 
Rob Charlton
Savage Minds Ltd





More information about the erlang-questions mailing list