HTICK 1.0 - Husky Ticker


Next: , Previous: (dir), Up: (dir)

HTICK

This document describes HTICK 1.0, a Fidonet Fileecho Processor for OS/2, Windows, BeOS and Unix.


Next: , Previous: Top, Up: Top

1 An Overview of HTICK

HTICK is a Fidonet file areas tosser with filefix. Now project supported by Husky Development Team.

Features of HTICK:

  1. tossing file areas
  2. filefix (on the fly, from command line, limit for areas...)
  3. autocreate on the fly
  4. forward requests
  5. posting to net & echo areas
  6. pause and autopause for links
  7. groups & levels for personal and public access to file areas
  8. security check of tossgroup
  9. dupe checking
  10. link defaults
  11. much, much more :)

The advantages of HTICK are:

  1. Open Source (GPL)
  2. many supported platforms & operating systems
  3. quick bug fixing


Next: , Previous: Overview, Up: Top

2 Installation Procedures and Release Notes

This chapter provides you with information that is necessary to successfully install and use HTICK.

I suppose, that you already has compiled binaries. If not - read "Download" or "Compile the Source Code" chapters.

  1. Read FIDOCONFIG documentation about location of config-file
  2. Edit config files for your purposes
  3. Run tparser from FIDOCONFIG package to test your config (read about PublicGroup or AccessGrp if you want to use groups for FileEchoAreas)
  4. It is simply, isn't it? Enjoy! :-)


Next: , Previous: Installation, Up: Installation

2.1 Download the Source Code & Binary Files

Main page (source code, win32 & os/2 releases) - http://husky.sf.net/htick.html
Win32 bins (current, russian) - http://hpt-bin.narod.ru


Next: , Previous: Download, Up: Installation

2.2 Compiling the Source Code

1. The smapi and fidoconf packages are required for htick.

2. Put the fidoconfig ans smapi packages to the directory where the other packages of fido linux reside:

/usr/src/packages/
-> smapi/
-> htick/
-> fidoconfig/

3. Compile and install smapi and fidoconf packages. Use "Makefile" for dynamic executables and makefile.lnx (or what you need) for static ones.

4. Compile and install HTICK:

$ make
$ make install
You should use the _same_ makefiles in smapi, fidoconf and htick.


Next: , Previous: Compiling, Up: Installation

2.3 Support

There are numerous reasons why you might wish to establish contact with developers.

  1. You have decided to use HTICK on a regular basis. In this case, please do send a netmail at the address listed below.
  2. You have a general questions on how to configure or on how to use a certain feature of HTICK. In other words, you need support. In this case, you'd best post your question to one of the following echos:
    FIDOSOFT.HUSKY
    The international Husky conference. English is the preferred language here.
    RU.HUSKY
    This Russian echo covers Husky Project.

    If you do not have access to any of these echos, you may of course also contact developers via netmail or e-mail at the addresses listed below.

  3. You want to report a bug. There are two sorts of bugs:
    1. Normal bugs. You think that a certain function of HTICK does not work as expected, e.g. it is producing garbage, or doing strange things, or similar. In this case, either post to the echos listed above, or contact developers via netmail. Please do supply all information that is necessary to understand your problem.
    2. Fatal bugs. A fatal bug occurs if HTICK crashes. Depending on your operating system, the symptom might be a core dump, or a SYS 3175, or a general protection fault, or a system lockup, or a spontaneous reboot. I do consider a crash untolerable. No matter how stupid things you do, you should not be able to crash HTICK.

      If you are experienced user and get core dump, you can send developers gdb report. If you have a crash, locate core file that has been generated. Then run $ gdb htick core, type where. HTICK must be compiled with debug information (DEBUG=1 in huskymak.cfg file). Then send report to addresses below.

      If you are running any other binary version (like Windows), you will not get a core file on a crash. Write down as much information as you can, try to find a way to reproduce the crash and contact me at the addresses below. We need log-file with loglevels 1-0A-Za-z.

  4. You want to contribute to HTICK. If you are a programmer and have fixed a problem in HTICK on your own, please submit your changes to me. The preferred way for doing so is to send to developers a difference file in GNU diff format (with -c parameter). Your work will be highly appreciated and honored in an appropriate place. If you want to regularly work on HTICK, we also have a CVS server online that you can have access to if you like.

    If you want to write a new feature for HTICK, please contact developers beforehand to avoid that we do duplicate work. Again, I will appreciate and honor any efforts done by you. Please note that for writing a HTICK enhancement, you should be familiar with C. Also, HTICK uses a special indentation style throughout the source code, that I would like you to adhere to.

So here are developers addresses if you want to get in contact with us:


Next: , Previous: Support, Up: Top

3 HTICK 1.0 Command Line OPTIONS and SWITCHES

To get help about the command line syntax, use HTICK without any arguments


Next: , Previous: Command Line, Up: Top

3.1 Configuration Reference

4 HTICK 1.0 Configuration Reference

HTICK is based on FIDOCONFIG library, so read documentation of FIDOCONFIG about location of config file and keywords ideology.


Next: , Previous: Configuration Reference, Up: Configuration Reference

4.1 Keywords


Next: , Previous: Keywords, Up: Keywords

4.1.1 FileAreaBaseDir

Syntax:
FileAreaBaseDir <directory>
Example:
FileAreaBaseDir /var/spool/fido/fileareas

Where the directories for all Fileareas shall be made at autocreate. Same as MsgBaseDir.

This statement cannot be repeated.


Next: , Previous: FileAreaBaseDir, Up: Keywords

4.1.2 PassFileAreaDir

Syntax:
PassFileAreaDir <directory>
Example:
PassFileAreaDir /var/spool/fido/transit

Where shall be put files from Passthrough File areas (and TICs, if ticOutbound is not defined).

This statement cannot be repeated.


Next: , Previous: PassFileAreaDir, Up: Keywords

4.1.3 FileDescPos

Syntax:
FileDescPos <number>
Example:
FileDescPos 13

The number of spaces to indent long descriptions in FILES.BBS. Recommend: 13 (8.3+space)

This statement cannot be repeated.


Next: , Previous: FileDescPos, Up: Keywords

4.1.4 fileLDescString

Syntax:
fileLDescString <string>
Example:
fileLDescString ">"

This string is put before long descriptions in FILES.BBS (Usually ">" or "+".). Default value: single space.

This statement cannot be repeated.


Next: , Previous: fileLDescString, Up: Keywords

4.1.5 FileFixHelp

Syntax:
FileFixHelp <string>
Example:
FileFixHelp /usr/local/fido/filefix.hlp

Help file for FileFix, same as AreaFixHelp for AreaFix

This statement cannot be repeated.


Next: , Previous: FileFixHelp, Up: Keywords

4.1.6 ExecOnFile

Syntax:
ExecOnFile <filearea> <filemask> <command>
Example:
ExecOnFile husky *.diff /usr/local/fido/update_source.sh

Execute some command on receiving file. Command gets full filepath as parameter (space and file pathname should be appended to command string before execution).

This statement cannot be repeated.


Next: , Previous: ExecOnFile, Up: Keywords

4.1.7 SaveTic

Syntax:
SaveTic <FileEchoMask> <FileOption> <DirToSaveTic>
Example:
ExecOnFile husky -l /usr/local/husky
<DirToSaveTic>
where put TIC for fileecho[es] <FileEchoMask>
<FileOption>
save files with tics. May be:
empty
files will not be copied
-l
link files from fileechodir to <DirToSaveTic>
-c
copy files from fileechodir to <DirToSaveTic>

Options -l and -c work only for non-Passthrough file echos

This statement cannot be repeated.


Next: , Previous: SaveTic, Up: Keywords

4.1.8 MaxTicLineLength

Syntax:
MaxTicLineLength <number>
Example:
MaxTicLineLength 79

Set maximum line length in outgoing TICs to number.

This statement cannot be repeated.


Next: , Previous: MaxTicLineLength, Up: Keywords

4.1.9 BusyFileDir

Syntax:
BusyFileDir <directory>
Example:
BusyFileDir /var/spool/fido/htick.busy/

Where shall be put TICs for busy links (default <outbound>/busy.htk).

This statement cannot be repeated.


Next: , Previous: BusyFileDir, Up: Keywords

4.1.10 ConvertLongNames

Syntax:
ConvertLongNames <Upper|Lower|DontTouch>
Example:
ConvertLongNames DontTouch

What to do with long names when toss or hatch. Saying 'long name' we mean a mixed cased name or a name longer than 8.3

This statement cannot be repeated.


Next: , Previous: ConvertLongNames, Up: Keywords

4.1.11 ConvertShortNames

Syntax:
ConvertShortNames <Upper|Lower|DontTouch>
Example:
ConvertShortNames DontTouch

What to do with short names when toss or hatch. Saying 'short name' we mean a DOS-like name: 8.3, without mixed case.

This statement cannot be repeated.


Next: , Previous: ConvertShortNames, Up: Keywords

4.1.12 addDLC

Syntax:
addDLC <bool>
Example:
addDLC yes

Add Download counters ([000]) to files.bbs. Use with DLCDigits only!

This statement cannot be repeated.


Next: , Previous: addDLC, Up: Keywords

4.1.13 DLCDigits

Syntax:
DLCDigits <number>
Example:
DLCDigits 4

How much digits DLC must be. DLC has [000] form.

This statement cannot be repeated.


Next: , Previous: DLCDigits, Up: Keywords

4.1.14 ticOutbound

Syntax:
ticOutbound <directory>
Example:
ticOutbound /var/spool/fido/ticOub

TICs are stored here and killed after transmission. Default: use PassFileAreaDir value

This statement cannot be repeated.


Next: , Previous: ticOutbound, Up: Keywords

4.1.15 filefixKillReports

Syntax:
filefixKillReports <bool>
Example:
filefixKillReports yes

Set kill/sent flag to filefix replies.

This statement cannot be repeated.


Next: , Previous: filefixKillReports, Up: Keywords

4.1.16 filefixKillRequests

Syntax:
filefixKillRequests <bool>
Example:
filefixKillRequests yes

Kill filefix request after processing.

This statement cannot be repeated.


Next: , Previous: filefixKillRequests, Up: Keywords

4.1.17 bbsarea

Syntax:
bbsarea <name> <bbsareapath>
Example:
bbsarea bbs /var/spool/fido/fileareas/bbsarea

File area without subscribing, not shown in filefix reports. Use for fileleist generation only ("htick filelist" command).

This statement cannot be repeated.


Next: , Previous: bbsarea, Up: Keywords

4.1.18 fileDescName

Syntax:
fileDescName <name>
Example:
fileDescName file_id.diz

If no LDESC defined in tic file, use <name> file from archive fill it (usually file_id.diz). 'unpack' action should be defined for archive and contain $f parameter.

This statement cannot be repeated.


Next: , Previous: fileDescName, Up: Keywords

4.1.19 FileAreaCreatePerms

Syntax:
FileAreaCreatePerms <mode>
Example:
FileAreaCreatePerms 644

Define permissions for newly created filearea directories (UNIX only)

This statement cannot be repeated.


Next: , Previous: FileAreaCreatePerms, Up: Keywords

4.1.20 FileFixFromName

Syntax:
FileFixFromName <string>
Example:
FileFixFromName <string>

Originator name in filefix replies.

This statement cannot be repeated.


Next: , Previous: FileFixFromName, Up: Keywords

4.1.21 AutoFileCreateFlag

Syntax:
AutoFileCreateFlag <file>
Example:
AutoFileCreateFlag /usr/local/fido/flags/new_filearea

Create flag when filearea has been autocreated.

This statement cannot be repeated.


Next: , Previous: AutoFileCreateFlag, Up: Keywords

4.1.22 FileFixNames

Syntax:
FileFixNames <string>
Example:
FileFixNames allfix filefix htick

Set of names separated by space on which FileFix will respond

This statement cannot be repeated.


Next: , Previous: FileFixNames, Up: Configuration Reference

4.2 Link Keywords


Next: , Previous: Link Keywords, Up: Link Keywords

4.2.1 fileEchoFlavour

Syntax:
fileEchoFlavour <hold|normal|crash|direct|immediate>
Example:
fileEchoFlavour direct

This statement sets the flavour which outgoing files in fileechos for this link get. For example set fileEchoFlavour to hold for points and to crash for uplinks.

This statement can only be repeated for different links.


Next: , Previous: fileEchoFlavour, Up: Link Keywords

4.2.2 fileAreaDefaults

Syntax:
fileAreaDefaults <options> [links]
Example:
fileAreaDefaults -lw 100 -g Z 2:5097/31.1

Set defaults for filearea definitions that follow. All options are possible, Set defaults for filearea definitions that follow. All options are possible, except areatag and path. Settings in the filearea definition override fileAreaDefaults See also See echoAreaDefaults. Defaults are switched off with empty fileAreaDefaults.

This statement can only be repeated for different links.


Next: , Previous: fileAreaDefaults, Up: Link Keywords

4.2.3 RemoteFileRobotName

Syntax:
RemoteFileRobotName <name>
Example:
RemoteFileRobotName allfix

Name of remote filefix robot (need for FileForwardRequest)

This statement can only be repeated for different links.


Next: , Previous: RemoteFileRobotName, Up: Link Keywords

4.2.4 noTIC

Syntax:
noTIC <bool>
Example:
noTIC yes

Disable TIC File Creation

This statement can only be repeated for different links.


Next: , Previous: noTIC, Up: Link Keywords

4.2.5 autoFileCreate

Syntax:
autoFileCreate <on|off>
Example:
autoFileCreate on

Allow or deny autocreating fileechoes received from this link.

This statement can only be repeated for different links.


Next: , Previous: autoFileCreate, Up: Link Keywords

4.2.6 AutoFileCreateFile

Syntax:
AutoFileCreateFile <file>
Example:
AutoFileCreateFile /usr/local/fido/hpt/config.filefix

Specifies the file new filearea definitions will be placed into

This statement can only be repeated for different links.


Next: , Previous: AutoFileCreateFile, Up: Link Keywords

4.2.7 AutoFileCreateDefaults

Syntax:
AutoFileCreateDefaults <string>
Example:
AutoFileCreateDefaults -lw 100 -g Z

Specifies the new filearea defaults.

This statement can only be repeated for different links.


Next: , Previous: AutoFileCreateDefaults, Up: Link Keywords

4.2.8 AutoFileCreateSubdirs

Syntax:
AutoFileCreateSubdirs <on|off>
Example:
AutoFileCreateSubdirs on

Whether to autocreate areas like /filebase/gfd.app.edit (off) or /filebase/gfd/app/edit (on). If you want to configure this globally instead of on per-link basis, set this in the deflink section. For more information see 'AutoAreaCreateSubdirs' in the hpt manual.

This statement can only be repeated for different links.


Next: , Previous: AutoFileCreateSubdirs, Up: Link Keywords

4.2.9 delNotRecievedTIC

Syntax:
delNotRecievedTIC <on|off>
Example:
delNotRecievedTIC on

If file not received, then remove TIC

This statement can only be repeated for different links.


Next: , Previous: delNotRecievedTIC, Up: Link Keywords

4.2.10 FileFixFSC87Subset

Syntax:
FileFixFSC87Subset <on|off>
Example:
FileFixFSC87Subset on

This boolean switch will change on a per link basis how TIC files are processed. By default this switch is ON. htick will then operate only on FSC87-compliant keywords and ignore unknown keywords in the TIC file processed. If this switch is set to OFF all implemented keywords will be used which can (and, in interaction with some tick processors, WILL) lead to severe problems. Unknown keywords found in a TIC file will make htick stop processing that file. If you don't know what all this is about set FileFixFSC87Subset to ON for all your links. It won't hurt.

This statement can only be repeated for different links.


Next: , Previous: FileFixFSC87Subset, Up: Link Keywords

4.2.11 TickerPackToBox

Syntax:
TickerPackToBox <on|off>
Example:
TickerPackToBox on

If link has file box - toss files and tics there

This statement can only be repeated for different links.


Next: , Previous: TickerPackToBox, Up: Link Keywords

4.2.12 LinkFileBaseDir

Syntax:
LinkFileBaseDir <directory>
Example:
LinkFileBaseDir /usr/local/fido/fileareas/2.5097.64.0

Where autocreated fileareas will be placed (may be "passthrough")

This statement can only be repeated for different links.


Next: , Previous: LinkFileBaseDir, Up: Link Keywords

4.2.13 ForwardFileRequests

Syntax:
ForwardFileRequests <on|off>
Example:
ForwardFileRequests on

Allow file areas subscribe requests forward to this link.

This statement can only be repeated for different links.


Next: , Previous: ForwardFileRequests, Up: Link Keywords

4.2.14 ForwardFilePriority

Syntax:
ForwardFilePriority <number>
Example:
ForwardFilePriority 1

Priority in uplinks order for filearea subscribing forward-requests

This statement can only be repeated for different links.


Next: , Previous: ForwardFilePriority, Up: Link Keywords

4.2.15 ForwardFileRequestFile

Syntax:
ForwardFileRequestFile <file>
Example:
ForwardFileRequestFile /usr/local/fido/hpt/uplink1.lst

List of available fileareas from this link

This statement can only be repeated for different links.


Next: , Previous: ForwardFileRequestFile, Up: Link Keywords

4.2.16 FileFixEchoLimit

Syntax:
FileFixEchoLimit <number>
Example:
FileFixEchoLimit 10

Area subscribe limit (max fileareas number this link is allowed to subscribe to)

This statement can only be repeated for different links.


Next: , Previous: FileFixEchoLimit, Up: Configuration Reference

4.3 FileArea Definition


Next: , Previous: FileArea Definition, Up: FileArea Definition

4.3.1 FileArea

Syntax:
FileArea <name> <fileareapath> [options] <uplink> <downlinks>
Example:
FileArea husky /var/spool/fido/fileareas/husky -a 2:5097/31 -p 28 -g Z -d "HUSKY fileecho" 2:5097/64 2:5097/303

Same as EchoArea, most options are valid:

a) -a <address> Our own address

b) -lr <number> "Read level": Min link level for sending files from this filearea to this link.

c) -lw <number> "Write level": Min link level allowed to post into this filearea files received from link.

d) -h Hide area (non visible in %LIST and in announce)

e) -manual Disallow remote subscribe (disable subscribe areafix command).

f) -mandatory Disallow remote unsubscribe (disable unsubscribe areafix command).

g) -sendorig Set: send files from PassFileAreaDir for non passthrough areas.

h) -nopause %PAUSE has no effect to this filearea

j) -noCRC Disable CRC check for incoming files

k) -g <group> Group for this filearea

l) -d "<string>" Description for this filearea

m) -noreplace Don't replace exisiting files in this filearea.

n) -nodiz Do not try to get file description from <fileDescName> (for packed files).

o) -p <integer> Purge after n days. Setting to 0 to disables purging.


Previous: FileArea, Up: Top

Appendix A Configuration File Keyword Index