Archie - Perl module to make Archie queries via Prospero requests


The Archie module finds files available via anonymous ftp by making requests to an Archie server. The package communicates with the Archie server via the Prospero protocol, which is layered on the Asynchronous Reliable Delivery Protocol, which is layered on UDP.

The usual entry point is Archie::archie_request, which takes arguments similar to the Unix archie command-line client, and returns an array of hash references which point to the returned data.

The routine Archie::archie_cancel cancels the request on the server; this stops the server from sending packets to a canceled client process.

This release is $Revision: 1.5 $.


    use Archie;
    $SIG{'INT'} = 'sig_handler';
    @responses = Archie::archie_request($server,$match,$order, 
    if ($Archie::ArchieErr) {
        print "Error: $Archie::ArchieErr\n";
    else {
        foreach $response (@responses) {
            print "name: $response->{'name'}\n";
            print "   host: $response->{'host'}\n";
            print "   type: $response->{'type'}\n";
            print "   dir: $response->{'dir'}\n";
            print "   size: $response->{'size'}\n";
            print "   mode: $response->{'mode'}\n";
            print "   lastmod: $response->{'lastmod'}\n";
    sub sig_handler {
        my($sig) = @_;


The Prospero parser is incomplete and only really deals with standard Archie responses -- this should be generalized.

The archie service was conceived and implemented by Alan Emtage, Peter Deutsch, and Bill Heelan. The entire Internet is in their debt.

The Prospero system was created by Clifford Neuman <>; write to <> for more information on the protocol and its use.


The archie man pages.

Information about Prospero and ARDP is available from


Greg Bossert <