It works fine for me through squid, so it looks like whatever proxy it is you have to use doesn't like the doubled /. It isn't just cosmetic, this is what gets sent on the wire, and the same happens with http.
GET ftp://openbsd.informatik.uni-erlangen.de//pub/OpenBSD/snapshots/package s/amd64/autoconf-2.13p1.tgz HTTP/1.0..User-Agent: OpenBSD ftp.... Please try this diff. You can apply it in /usr/libdata/perl5/OpenBSD (or in the src directory shown). It works ok for me with scp, local files, http and ftp. Index: PackageRepository.pm =================================================================== RCS file: /cvs/src/usr.sbin/pkg_add/OpenBSD/PackageRepository.pm,v retrieving revision 1.65 diff -N -u -p PackageRepository.pm --- PackageRepository.pm 24 Apr 2009 23:22:20 -0000 1.65 +++ PackageRepository.pm 11 May 2009 15:30:59 -0000 @@ -396,7 +396,7 @@ sub baseurl { my $self = shift; - return "//$self->{host}/$self->{path}"; + return "//$self->{host}$self->{path}"; } sub parse_url

