NAME
   Apache::OneTimeDownload - Tolerant mechanism for expiring downloads

 DESCRIPTION
   Allows you to distribute files that expire a given time after the first
   download

 SYNOPSIS
   In your Apache config:

    PerlModule Apache::OneTimeDownload

    <Location /download>
                   PerlHandle Apache:OneTimeDownload
                   SetHandler perl-script
                   PerlSetVar OneTimeDb  /home/sheriff/download_access.db
                   PerlSetVar OneTimeWindow 3600
                   PerlSetVar OneTimeDownloadDirectory /home/sheriff/downloads/
           </Location>

   Example authorize.pl...

           #!/usr/bin/perl

           use Apache::OneTimeURL;

           my $file = $ARGV[0];
           my $comment = $ARGV[1-];
           my $db = '/opt/secret/access.db'

           print Apache::OneTimeURL::authorize( $db, $comment, $file );

   and then:

    % authorize.pl TopSecret.pdf Given out on IRC...
    2c61de78edd612cf79c0d73a3c7c94fb

   Which might mean:

           http://www.sheriff.com/download/2c61de78edd612cf79c0d73a3c7c94fb

CONFIG
 OneTimeDb
   The location of the DB file where key->file mappings will be kept

 OneTimeWindow
   The amount of time after a download you wish the file to remain before
   it expires. An hour is a good sized window...

 OneTimeDownloadDirectory
   The directory from which you're serving your file downloads - probably
   not one that's accessible from the web...

&authorize
   Adds a key to the db. Accepts these arguments, in this order:

 db name
   Absolute path of the database

 comment
   Plain text comments about the file

 file
   Location of the file - this has the download directory stuck at the
   beginning of it when it comes to download time...

 expires
   Time in seconds until the file expires before anyone has downloaded it.
   Defaults to a week.

AUTHOR
   Pete Sergeant -- "[email protected]"

COPYRIGHT
   Copyright 2004 Pete Sergeant.

   This program is free software; you can redistribute it and/or modify it
   under the same terms as Perl itself.