Section configuration

OpenFTPD supports section specific configuration that means those setting are only used if the user is in a special path of the site. Ones are used by external scripts that cames with the release and others are used internally.

* Used internally.

Registry key Description
allow_check filetypes to allow by the filechecker
allow_dupe* filetypes to allow by the dupechecker

announce_complete

toggle announce on complete uploads

announce_imdb

announce imdb.com info for movies
announce_joinrace toggle announce on race join
announce_newdir toggle announce on newdir

announce_update

toggle announce after first file
calc_checksum* on the fly crc generator

check_sfv

check sfv based releases

check_zip

check zip files
complete_dir directory name to tag a complete dir
copyinfofile copy info file to all complete releases ?
del_empty_nuke* delete nuked empty dirs ?

deny_dirs

deny directories containing these
different_credit* toggle seperated credits for section
download_limit* change ratio of the users
dupe_filetypes* filetypes to store in the dupelog
empty_nuke* MB to reduce on empty dir nuke
enforce_sfv enforce sfv upload ?
generate_m3u generate m3u playlist for mp3 uploads
internal_dupecheck* toggle internal dupecheck
lock_complete lock completed diretories
no_global_stats* disable stats
nukeprefix* prefix to add to nuked dirs
resolvesymlinks* toggle resolve of symlinks
show_dirstat* show directory stats (race info)
show_newdirs show new directories on SITE NEW
siteinfofile path to an info file
status_dir create status directory ?
statusfilepath where to create the statusfile ?
umask_anon* umask for anonymous
umask_root* umask for superusers
umask_user* umask for normal users
undupe_on_delete* delete the files from dupelog.
upload_limit* change ratio of the users
zipcommentfile file to add as zipcomment

 

allow_check

Syntax allow_check <regular expression>
Example allow_check \.(zip|nfo)
Default none

Define what filetypes are allowed by the file checker. File which does not match the regular expression are deleted after upload.

allow_dupe*

Syntax allow_dupe <regular expression>
Example allow_dupe \.(zip|nfo)
Default none

Define which filetypes are allowed to upload. File which does not match the regular expression are not allowed to upload.

announce_complete

Syntax announce_complete <yes|no>
Example announce_complete yes
Default no

Announce complete uploads to an irc sitebot.

announce_imdb

Syntax announce_imdb<yes|no>
Example announce_imdb yes
Default no

Try to find an imdb.com url in the info file and extract some information from the page and announce it to irc.

announce_joinrace

Syntax announce_joinrace <yes|no>
Example announce_joinrace yes
Default no

Announce if new users join a race.

announce_newdir

Syntax announce_newdir <yes|no>
Example announce_newdir yes
Default no

Announce new directories to an irc sitebot.

announce_update

Syntax announce_update <yes|no>
Example announce_update yes
Default no

Announce updated information after the first file of an release was finished.

calc_checksum*

Syntax calc_checksum <yes|no>
Example calc_checksum yes
Default no

If set to yes the checksum of the file is calculated while the upload is in progress. This checksum is sent to the upload checker as the 3th argument.

check_sfv

Syntax checksfv <yes|no>
Example checksfv yes
Default no

Check rar- and mp3-files against sfv in this section.

check_zip

Syntax check_zip <yes|no>
Example check_zip yes
Default no

Check zip-files in this section.

completedir

Syntax completedir <string>
Example completedir XYZ-COMPLETE-XYZ
Default -[100%]-[COMPLETE]-

Create this directory as tag if a release was completed.

copyinfofile

Syntax copyinfofile <yes|no>
Example copyinfofile yes
Default no

Copy an infofile to every completed directory

del_empty_nuke*

Syntax del_empty_nuke <yes|no>
Example del_empty_nuke yes
Default yes

Toggle if you want to delete empty directories after a nuke automaticly instead of renaming them.

deny_dirs

Syntax deny_dirs <regexp1> <regexp2>
Example deny_dirs [.-]beta[.-]
Default none

Use this setting to reject directories containing special words. You can use this for group bans for example.

different_credit*

Syntax different_credit <yes|no>
Example different_credit yes
Default no

Use seperated credits for this section. Warning if you enable this all credits earned in this section are not usable in other sections.

download_limit*

Syntax download_limit <limit>
Example download_limit 0
Default -1

Ratio of user in %. So a limit of 33 should be 100/33:1=3.3:1. This mean that you will take 3.3 bytes of credits for each byte the user download.

Expecials values are -1 for disable and 0 for don't take out credits of users.

dupe_filetypes*

Syntax dupe_filetypes <regular expresion>
Example dupefiletypes \.(rar|[rs0-9][0-9][0-9]|zip|mp3)$
Default none

Define the type of files that will be stored in the dupelog. File which does not match the regular expression is not added to the dupelog and can be upload again (nfo's for example)

empty_nuke*

Syntax empty_nuke <megabytes>
Example empty_nuke 50
Default 25

How much credits should be removed on an empty directory nuke.

enforce_sfv

Syntax enforce_sfv <yes|no>
Example enforce_sfv yes
Default no

If you enable this upload of rar and mp3 files are not allowed until a sfv files was uploaded before.

generate_m3u

Syntax generate_m3u <yes|no>
Example generate_m3u yes
Default no

Generate m3u playlist for mp3 uploads from the list of uploaded files.

internal_dupecheck*

Syntax internal_dupecheck <yes|no>
Example internal_dupecheck yes
Default no

Enable the internal dupecheck for files.

lock_complete

Syntax lock_complete <yes|no>
Example lock_complete yes
Default no

Lock directory after release was completed. So no on is allowed to upload files anymore.

no_global_stats*

Syntax no_global_stats <yes|no>
Example no_global_stats yes
Default no

When enable, the stats of this section are not added to the globals stats.

nukeprefix*

Syntax nukeprefix <string>
Example nukeprefix [_NUKED_]
Default _NUKED_

Add this prefix to renamed nuked directories.

resolvesymlinks*

Syntax resolvesymlinks <yes|no>
Example resolvesymlinks yes
Default yes

When enabled the links under this section are resolved to their true path (unless the true path is out of site dir).

show_dirstat*

Syntax show_dirstat <yes|no>
Example show_dirstat no
Default yes

Show directory statistics (race info) on chdir.

show_newdirs

Syntax show_newdirs <yes|no>
Example show_newdirs yes
Default no

Show new directories in this section on SITE NEW. You should disable this in private sections.

siteinfofile

Syntax siteinfofile <filename>
Example siteinfofile /home/ftpd/site.nfo
Default none

Site information file which can be added to zip files or copied to completed releases.

status_dir

Syntax status_dir <yes|no>
Example status_dir <yes>
Default no

Create status directories showing the current upload status.

statusfilepath

Syntax statusfilepath <path>
Example statusfilepath /ISO
Default ..

Set the path were the status file should be created, the parent dir is a good place, but this will not work with multi-cd releases so you maybe should choose the root of the section.

umask_anon*

Syntax umask_anon <mask>
Example umask_anon 0x7F0000
Default 0x230000

Sets the permissions a directory receives when created by an anonymous user. The first byte gives the rights of the owner, the second the right of the group and the third the rights of other users. The next table shows which bits mean which right. Add the values to form the permission:

0x01 chdir
0x02 list
0x04 mkdir
0x08 chmod
0x10 get - files uploaded by user get read permission
0x20 put
0x40 overwrite - files uploaded by user get write permission
0x80 rmdir

Let's have a look on the example 0x7F0000: you first have to seperate the hex number in it's 3 parts user, group and other. In our case this would be 7F for user, and 00 (no permissions) for group and other. According to the table above 0x7F would be 0x40 + 0x20 + 0x10 + 0x08 + 0x04 + 0x02 + 0x1 = 0x7F. Remember that you have to count with hexadecimal numbers. You should use a calculator.

The get and overwrite rights are no directory rights. They are for files only. This means that the right to download (get) and to upload to an exising file (overwrite) are determined by the file permissions and not by the directory permissions. The only exception are directories that are set in cdpath.cfg. There are no separate file permissions, so the directory permissions apply.

umask_root*

Syntax umask_root <mask>
Example umask_root 0x7F1313
Default 0x7F1300

Sets the permissions a directory receives when created by a superuser. See table above for meaning of the bits. A good setting that would allow all users to download uploaded files and to finish incomplete directories of other users but doesn't allow to delete other user's files would be 0x7F3333.

umask_user*

Syntax umask_user <mask>
Example umask_user 0x7F1313
Default 0x7F1300

Sets the permissions a directory receives when created by a normal user. See table above for meaning of the bits. A good setting that would allow all users to download uploaded files and to finish incomplete directories of other users but doesn't allow to delete other user's files would be 0x7F3333.

undupe_on_delete*

Syntax undupe_on_delete <yes|no>
Example undupe_on_delete yes
Default yes

If enabled when the user delete a file the file is removed from the dupelog.

upload_limit*

Syntax upload_limit <limit>
Example upload_limit 0
Default -1

Ratio of user in %. So a limit of 33 should be 1:100/33=1:3.3. This mean that you will give 3.3 bytes of credits for each byte the user upload.

Expecials values are -1 for disable and 0 for don't give credits.

zipcommentfile

Syntax zipcommentfile <path>
Example zipcommentfile /home/ftpd/comment.nfo
Default none


Add this file as comment to all checked zips.

© 2000-2001 Team OpenFTPD