]> git.treefish.org Git - fex.git/blobdiff - lib/fex.ph
Original release 20160919
[fex.git] / lib / fex.ph
index 50c4d0919ca3bc978300006fd62ec7c9f5a40ccf..d1596e248c2c7962cc0373d967405b9cc531d6de 100644 (file)
@@ -7,7 +7,7 @@ $hostname = 'MYHOSTNAME.MYDOMAIN';
 ## to change it, you MUST call: fac -/ admin-email-address auth-id
 $admin = 'fex@'.$hostname;
 
 ## to change it, you MUST call: fac -/ admin-email-address auth-id
 $admin = 'fex@'.$hostname;
 
-## server admin email address shown on web page 
+## server admin email address shown on web page
 $ENV{SERVER_ADMIN} = $admin;
 
 ## restrict web administration to ip range(s)
 $ENV{SERVER_ADMIN} = $admin;
 
 ## restrict web administration to ip range(s)
@@ -21,8 +21,8 @@ $notify_newrelease = $admin;
 
 ## optional: download-URLs sent in notification emails
 # @durl = qw(
 
 ## optional: download-URLs sent in notification emails
 # @durl = qw(
-#   http://MYFEXSERVER/fop 
-#   https://MYFEXSERVER/fop 
+#   http://MYFEXSERVER/fop
+#   https://MYFEXSERVER/fop
 #   http://MYPROXY/fex/fop
 # );
 
 #   http://MYPROXY/fex/fop
 # );
 
@@ -34,7 +34,7 @@ $mailmode = 'AUTO';
 ## optional: your mail domain
 ## if set it will be used as domain for every user without domain
 ## local_user ==> local_user@$mdomain
 ## optional: your mail domain
 ## if set it will be used as domain for every user without domain
 ## local_user ==> local_user@$mdomain
-## if not set, addresses without domains produce an error
+## if not set, addresses without domain produce an error
 # $mdomain = 'MY.MAIL.DOMAIN';
 # $admin = 'fexmaster@'.$mdomain;
 
 # $mdomain = 'MY.MAIL.DOMAIN';
 # $admin = 'fexmaster@'.$mdomain;
 
@@ -67,31 +67,35 @@ $mailmode = 'AUTO';
 # $logdir = $spooldir;
 
 ## default quota in MB for recipient; 0 means "no quota"
 # $logdir = $spooldir;
 
 ## default quota in MB for recipient; 0 means "no quota"
-$recipient_quota = 0; 
+$recipient_quota = 0;
 
 ## default quota in MB for sender; 0 means "no quota"
 
 ## default quota in MB for sender; 0 means "no quota"
-$sender_quota = 0; 
+$sender_quota = 0;
 
 ## expiration: keep files that number of days (default)
 
 ## expiration: keep files that number of days (default)
-$keep = 5; 
+$keep = 5;
 
 ## expiration: keep files that number of days (maximum)
 $keep_max = 99;
 
 ## autodelete: delete files after download (automatically)
 ##     YES     ==> immediatelly (1 minute grace time)
 
 ## expiration: keep files that number of days (maximum)
 $keep_max = 99;
 
 ## autodelete: delete files after download (automatically)
 ##     YES     ==> immediatelly (1 minute grace time)
-##     DELAY   ==> after download at next fex_cleanup cronjob run 
+##     DELAY   ==> after download at next fex_cleanup cronjob run
 ##      2       ==> 2 days after download (can be any number!)
 ##     NO      ==> keep until expiration date (see $keep)
 $autodelete = 'YES';
 
 ##      2       ==> 2 days after download (can be any number!)
 ##     NO      ==> keep until expiration date (see $keep)
 $autodelete = 'YES';
 
+## purge: purge files after that number of days after their deletion
+##        (purge deletes file meta-information)
+$purge = '3*$keep';
+
 ## if the file has been already downloaded then subsequentials
 ## downloads are only allowed from the same client (uses cookies)
 ## to prevent unwanted file sharing
 $limited_download = 'YES';
 
 ## allow RECIPIENT = SENDER
 ## if the file has been already downloaded then subsequentials
 ## downloads are only allowed from the same client (uses cookies)
 ## to prevent unwanted file sharing
 $limited_download = 'YES';
 
 ## allow RECIPIENT = SENDER
-## in this case subsequentials downloads from any ip are possible until 
+## in this case subsequentials downloads from any ip are possible until
 ## regular file expiration (KEEP); exception for $limited_download
 $fex_yourself = 'YES';
 
 ## regular file expiration (KEEP); exception for $limited_download
 $fex_yourself = 'YES';
 
@@ -100,8 +104,8 @@ $overwrite = 'YES';
 
 ## allow user requests for forgotten auth-IDs (then send by email)
 $mail_authid = 'YES';
 
 ## allow user requests for forgotten auth-IDs (then send by email)
 $mail_authid = 'YES';
-                                                  
-## optional: from which hosts and for which mail domains users may 
+
+## optional: from which hosts and for which mail domains users may
 ##           register themselves as full users (must set both!)
 # @local_hosts = qw(127.0.0.1 ::1 10.10.100.0-10.10.200.255 129.69.1.129);
 # @local_domains = qw(uni-stuttgart.de flupp.org);
 ##           register themselves as full users (must set both!)
 # @local_hosts = qw(127.0.0.1 ::1 10.10.100.0-10.10.200.255 129.69.1.129);
 # @local_domains = qw(uni-stuttgart.de flupp.org);
@@ -116,8 +120,8 @@ $mail_authid = 'YES';
 ## optional: allow restricted user registration only by certain hosts
 # @registration_hosts = qw(129.69.0.0-129.69.255.255 176.9.84.26);
 
 ## optional: allow restricted user registration only by certain hosts
 # @registration_hosts = qw(129.69.0.0-129.69.255.255 176.9.84.26);
 
-## optional: for certain remote domains do not use sender address in 
-##           notfication email From, because their MTA will probably 
+## optional: for certain remote domains do not use sender address in
+##           notfication email From, because their MTA will probably
 ##           reject it if From and To contain their domain name.
 ##           Instead use $admin for From. See also $sender_from
 # @remote_domains = qw(flupp.org);
 ##           reject it if From and To contain their domain name.
 ##           Instead use $admin for From. See also $sender_from
 # @remote_domains = qw(flupp.org);
@@ -128,12 +132,22 @@ $mail_authid = 'YES';
 ## optional: allow anonymous upload without authentication for these IP ranges
 # @anonymous_upload = qw(127.0.0.1 ::1 10.10.100.0-10.10.200.255 129.69.1.129);
 
 ## optional: allow anonymous upload without authentication for these IP ranges
 # @anonymous_upload = qw(127.0.0.1 ::1 10.10.100.0-10.10.200.255 129.69.1.129);
 
+## optional: mailing list addresses (allows multiple downloads)
+# @mailing_lists = qw(admin@my.domain *@listserv*);
+
 ## optional: forbidden addresses
 ## optional: forbidden addresses
-# @forbidden_recipients = qw(nobody@* *@listserv*);
+# @forbidden_recipients = qw(nobody@* postmaster@else.where);
 
 ## optional: forbidden ip addresses for CGIs
 # @forbidden_hosts = qw(64.124.0.0-64.125.255.255);
 
 
 ## optional: forbidden ip addresses for CGIs
 # @forbidden_hosts = qw(64.124.0.0-64.125.255.255);
 
+# forbidden user agents (sucking "download manager", etc)
+@forbidden_user_agents = qw(
+  FDM
+  Download.Master
+  Java/[\d\.]+
+);
+
 ## optional: restrict upload to these IP ranges
 # @upload_hosts = qw(127.0.0.1 ::1 10.10.100.0-10.10.200.255 129.69.1.129);
 
 ## optional: restrict upload to these IP ranges
 # @upload_hosts = qw(127.0.0.1 ::1 10.10.100.0-10.10.200.255 129.69.1.129);
 
@@ -144,7 +158,7 @@ $mail_authid = 'YES';
 ##           0 means : full speed
 ##           first match wins
 # @throttle = qw(
 ##           0 means : full speed
 ##           first match wins
 # @throttle = qw(
-#      framstag@*:0 microsoft.com:100 
+#      framstag@*:0 microsoft.com:100
 #      127.0.0.1:0 202.0.0.0-211.255.255.255:1024
 #      [::1]:0 [fe00::0-fe00::ffff]:0
 # );
 #      127.0.0.1:0 202.0.0.0-211.255.255.255:1024
 #      [::1]:0 [fe00::0-fe00::ffff]:0
 # );