VI. Files Directory / Drop boxes

This is directory (files) contains site files. All account directories are given relatively to this directory and can’t contain parent directory reference. Hotline allows you to create links (this feature is perhaps not available in your version), none of them can go outside this directory. Only someone logged in using an unix account can create links (symbolic or not) to go outside this directory.

Inside this directory, you can manage your site has you want. A good idea if you plan to use account root directory features is to create one directory
per account and symbolically link directories you want to make available for this account inside its directory.

Note abount symbolic links: If the destination of a symbolic link is in the HSX scope (inside files), HSX follows it but if it is outside HSX scope outside files directory) and if HSX is not configured to allow this (this
is the default status), symbolic link is not followed. Using HSX configuration manager GHX plugin, you can give a set of legal directories so files directory always works but other directories can also be reachable.

Reserved filename

Some filenames have a special meaning. Currently, if a directory has a name like ‚Drop box for ‚ (case insensitive) followed by an account name (case sensitive), only the owner of the account can browse this directory and only if the account has the can view drop box option set.

Hidden files

Some files won’t be displayed by HSX.

  • Files ending with ‚.rsrc‘ will be hidden but reachable. These files usually contains MAC ressource and are unuseful alone.
  • Files starting with a dot (‚.‘) will also be hidden but reachable and updatable. If your own file contains dot, this is your problem :-) For every directory, HSX automatically generates a directory cache when someone read the directory. This cache is automagically updated when changes are made both using HSX (external changes) or modify directory from unix side (internal changes) but in this case, modifying file size or renaming a file is not taken into account
    (on some unix). The cache directory speeds up a lot directory access if you have a normal site with a lot of directory (more than 4) and files (more than 400).
    (this limit comes from hxd which slows down if you have this amount of files and run a daemon on a slow disk (like the awful quantum bigfoot)). Directory cache is stored directly in the directory it depends. Directory cache name is always .hsx.dir_cache.
  • The last hidden file defines directory where users can upload. This feature is directly linked to can upload and can upload anywhere user limits. If a user can upload anywhere this file is not taken into account. If a user only has the can upload flag set, before any upload, HSX will check the upload directory to read a file called .upload. HSX uses the following rules to give access (they are only applied for the can upload users):
    1. directory has no .upload file, nobody can upload.
    2. directory has an empty .upload file, everybody can upload.
    3. if directory contains a non empty .upload file, this file has the following content:
      • the first line is the default access policy. It is defined by the word ALLOW or DENY alone on the line. Any user who doesn’t match any following pattern will use the default policy. ALLOW gives user upload authorization, and DENY …
      • all other lines are pattern. If a user match one of this pattern opposite of the default policy is used. Each line has the following format: [].The account name is mandatory. It defines which account matchs the pattern. This value is the login used by users, not their nickname.IP mask is optionnal. The IP mask is divided into 4 fields. Each field can contain a number between 0 and 255 or a ‚*‘. When HSX checks IP, all value are compared and must be equal to the corresponding IP part, ‚*‘ means any value (see example at the end of this page).Pattern lines are used in the line order. When HSX finds a matching line, it stops its research.

    The number of line is not limited. The file can contain no pattern.

    This file can be changed by user … who can upload a file with the same name. This feature allows any allowed user to modify upload right. To disable this, just do a chmod 0444 .upload in the directory, then no one can change the file.

.upload example:
line# line content meaning
1 DENY No one can upload in this directory
2 wlcm except users using wlcm login.
3 absol 93.*.*.152 and users using absol login if their IP starts with 93 and ends with 152
4 dqz 5.12 and users using dzq login if their IP starts with 5.12. This IP mask means
the same thing as 5.12.*.5
3 ckc 53.2. and users using ckc login if their IP starts with 53.2. This IP mask means
the same thing as 53.2.*.*