#!/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;