- my $ua = HTTP::DAV::UserAgent->new();
- $ua->agent('pr0n-uploader/v1.0 (perldav)');
- my $dav = HTTP::DAV->new(-useragent=>$ua);
- $dav->credentials(-user=>$user, -pass=>$pass, -url=>$url, -realm=>'pr0n.sesse.net');
- $dav->open(-url => $url)
- or die "Couldn't open $url: " . $dav->message . "\n";
- return $dav;
+ my $ua = LWP::UserAgent->new;
+ $ua->agent('pr0n-uploader/v1.0');
+ my $urlobj = URI->new($url);
+ my $hostport = $urlobj->host . ':' . $urlobj->port;
+ $ua->credentials($hostport, 'pr0n.sesse.net', $user, $pass);
+
+ # Check that it works.
+ my $req = HTTP::Request->new(OPTIONS => $url);
+ my $res = $ua->request($req);
+ die "$url: " . $res->status_line if (!$res->is_success);
+
+ return $ua;