:) Here's my adaptation minus the callback, untested
#!/usr/bin/perl -T --
use strict;
use warnings;
use WWW::Curl 4.05; # otherwise no WRITEDATA, other bugs ...
use WWW::Curl::Easy;
{
my $curl = WWW::Curl::Easy->new();
my $ftpfile = 'README.curl';
if( $curl ){
$curl->setopt(CURLOPT_URL,
"ftp://ftp.sunet.se/pub/www/utilities/curl/README.curl");
$curl->setopt(CURLOPT_WRITEDATA,$ftpfile);
$curl->setopt(CURLOPT_VERBOSE,1);
my $retcode = $curl->perform();
if ($retcode != 0) {
warn "An error happened: ", $curl->strerror($retcode), " (
+$retcode)\n";
warn "errbuf: ", $curl->errbuf;
}
# redundant since $curl goes out of scope
$curl->curl_easy_cleanup;
} else {
warn "DARN, , WWW::Curl::Easy->new() failed";
}
}
__END__
# ppm install WWW::Curl
# ppm install http://theoryx5.uwinnipeg.ca/ppms/WWW-Curl.ppd
# http://curl.haxx.se/libcurl/c/
# http://curl.haxx.se/libcurl/c/libcurl-tutorial.html
# http://curl.haxx.se/libcurl/c/curl_easy_setopt.html
# http://curl.haxx.se/libcurl/c/curl_easy_perform.html
# http://curl.haxx.se/lxr/source/docs/examples/ftpget.c
# http://cool.haxx.se/cvs.cgi/*checkout*/curl/docs/examples/ftpget.c?r
+ev=1.8&content-type=text/plain
# http://cool.haxx.se/cvs.cgi/*checkout*/curl/docs/examples/ftpget.c?r
+ev=HEAD&content-type=text/plain
# http://search.cpan.org/src/SZBALINT/WWW-Curl-4.05/t/01basic.t
|