ssl - Perl Script to Log into TopCoder -


my following codes work other https sites not topcoder. output file reads: can't connect community.topcoder.com:443 lwp::protocol::https::socket: ssl connect attempt failed unknown error error:00000000:lib(0):func(0):reason(0) @ c:/perl64/lib/lwp/protocol/http.pm line 51, line 2. please me know wrong? thank much.

#!perl  use lwp::simple;   use lwp::useragent;    use html::form;    use http::cookies;  use term::readkey; use html::parse;   print "please enter topcoder username:"; chop(my $user=<stdin>); print "please enter topcoder password: (do not display)\n"; readmode 2; chop(my $password=<stdin>); readmode 0;  #log-in , set cookies  $host="http://community.topcoder.com/tc?&module=myhome";    $method="get";  $cookie_jar=http::cookies->new;    require http::request;    $ua=lwp::useragent->new; $ua->cookie_jar({}); $ua->agent('mozilla/5.0');    $r=http::request->new;    $response=http::response->new;     $r->method($method);    $r->uri($host);    $cookie_jar->add_cookie_header($r);      $response=$ua->request($r);       $cookie_jar->extract_cookies($response);      $html;    $baseuri;   if($response->is_success)    {       $html=$response->content;    $baseuri=$response->base;       }    else      {      $html   =   $response->error_as_html();      print   "server connection failed.\n";      exit 0;    }     @forms=html::form->parse($html,$baseuri); $form=$forms[1];   $form->value("username",$user);    $form->value("password",$password);   push @{ $ua->requests_redirectable }, 'post';     $response=$ua->request($form->click);     if ($response->content =~/username or password incorrect/i)  {     print "wrong username or password!\n";     exit 1; }     else    {    open(fo2, ">login_test.htm");   print fo2 $response->content;   $cookie_jar->extract_cookies($response);     print   "login ok\n";   }     $ua->cookie_jar($cookie_jar);  

io::socket::ssl uses sslv2 default, , server not renegotiate in order upgrade v3. connect v3 right away, , works.

lwp::useragent->new(ssl_opts => {ssl_version => 'sslv3'}) 

Comments

Popular posts from this blog

How to remove text and logo OR add Overflow on Android ActionBar using AppCompat on API 8? -

html - How to style widget with post count different than without post count -

url rewriting - How to redirect a http POST with urlrewritefilter -