#!/usr/bin/perl -w
use strict;
use HTTP::Request::Common qw( POST );
use LWP::UserAgent;
use HTTP::Cookies;
sub login {
my($ua,$form,$res,$tgt,$agent) = ({},{},{},'','');
require HTTP::Headers;
$agent = q[Mozilla/5.0 (compatible; Konqueror/3.0.0-10; Linux)];
$tgt = q[https://sourceforge.net/account/login.php];
$form =
{
q[return_to] => q[],
q[form_loginname] => q[foo],
q[form_pw] => q[bar],
q[stay_in_ssl] => 1,
q[login] => q[Login With SSL],
};
$ua = LWP::UserAgent->new('agent' => $agent);
$ua->cookie_jar
(
HTTP::Cookies->new
(
'file' => 'lwpcookies.txt',
'autosave' => 1
)
);
push(@{ $ua->requests_redirectable }, 'POST');
$res = $ua->post( $tgt, $form, 'Referer' => '' );
return
(
join
(
qq[\012],
q[Failed: ],
$res->status_line,
q[received: ],
$res->as_string
)
)
if (!$res->is_success);
$res->as_string
}
print login;