This document describes HTICK 1.4, a Fidonet Fileecho Processor for OS/2, Windows, BeOS and Unix clones.
HTICK is a Fidonet fileareas tosser with filefix. Now project is being supported by Husky Development Team (see http://husk.sf.net/team.html).
HTICK features:
The advantages of HTICK are:
This chapter provides you with information that is necessary to successfully install and use HTICK.
We suppose that you already has compiled binaries. If not - read "Download" or "Compile the Source Code" chapters.
tparser
from FIDOCONFIG package to test your config
(read about PublicGroup
or AccessGrp
if you want to use
groups for FileEchoAreas
)
1. The smapi and fidoconf packages are required for htick.
2. Put the fidoconf and smapi packages to the directory where the other packages of fido linux reside:
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:
There are numerous reasons why you might wish to establish contact with developers.
FIDOSOFT.HUSKY
RU.HUSKY
If you have access to Internet, you may of course post your support request or bug report into form on husky development site: http://sourceforge.net/projects/husky, click the "Bugs" link if you want to post a bug report.
If you do not have access to any of these echos and internet, you may of course also contact developers via netmail or e-mail at the addresses listed below.
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 autors at the addresses
below. Please attach log-file with loglevels 1-0A-Za-z
(all numbers
and letters).
If you want to write a new feature for HTICK, please contact developers beforehand to avoid that we do duplicate work. Again, we 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 we would like you to adhere to.
So here are developers' addresses if you want to get in contact with us:
To get help about the command line syntax use HTICK without any arguments
<command>
is:command
from command line
@BBS
@DIZ
@<file>
@@BBS
@@DIZ
@@<file>
<file>
filename to write output to.
<dirlist>
list of files' which should be included into filelist paths.
HTICK is based on FIDOCONFIG library, so read documentation of FIDOCONFIG about location of config file and keywords ideology.
FileAreaBaseDir <directory>
FileAreaBaseDir /var/spool/fido/fileareas
Where the directories for all Fileareas shall be made at autocreate. Same as MsgBaseDir.
This statement cannot be repeated.
PassFileAreaDir <directory>
PassFileAreaDir /var/spool/fido/transit
Where shall be put files from Passthrough Fileareas (and TICs, if ticOutbound is not defined).
This statement cannot be repeated.
FileDescPos <number>
FileDescPos 13
The number of spaces to indent long descriptions in FILES.BBS. Recommend: 13 (8.3+space)
This statement cannot be repeated.
fileLDescString <string>
fileLDescString ">"
This string is put before long descriptions in FILES.BBS (Usually ">" or "+".). Default value: single space.
This statement cannot be repeated.
FileFixHelp <string>
FileFixHelp /usr/local/fido/filefix.hlp
Help file for FileFix, same as AreaFixHelp for HPT's AreaFix
This statement cannot be repeated.
ExecOnFile <filearea> <filemask> <command>
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 can be repeated.
SaveTic <FileEchoMask> <FileOption> <DirToSaveTic>
SaveTic husky -l /usr/local/husky
Options -l and -c work only for non-Passthrough fileechos
This statement can be repeated.
MaxTicLineLength <number>
MaxTicLineLength 79
Set maximum line length in outgoing TICs to number.
This statement cannot be repeated.
BusyFileDir <directory>
BusyFileDir /var/spool/fido/htick.busy/
Where shall be put TICs for busy links (default <outbound>/busy.htk).
This statement cannot be repeated.
ConvertLongNames <Upper|Lower|DontTouch>
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.
ConvertShortNames <Upper|Lower|DontTouch>
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.
addDLC <bool>
addDLC yes
Add Download counters ([000]) to files.bbs. Use with DLCDigits only!
This statement cannot be repeated.
DLCDigits <number>
DLCDigits 4
How much digits DLC must be. DLC has [000] form.
This statement cannot be repeated.
ticOutbound <directory>
ticOutbound /var/spool/fido/ticOub
TICs are stored here and killed after transmission. Default: use PassFileAreaDir value
This statement cannot be repeated.
filefixKillRequests <bool>
filefixKillRequests yes
Kill filefix request after processing.
This statement cannot be repeated.
filefixReportsAttr <attr>
filefixReportsAttr pvt,kill,loc
Set flags to filefix replies.
Valid attributes are:
Default is "pvt loc k/s npd".
This statement cannot be repeated.
BBSarea <name> <bbsareapath>
bbsarea bbs /var/spool/fido/bbsareas/bbs
Filearea without subscribing, not shown in filefix reports. Use for filelist generation only (`htick filelist` command).
This statement cannot be repeated.
fileDescName <name>
fileDescName file_id.diz
If LDESC is not defined in tic file, use <name> file from archive to fill it (usually file_id.diz).
This statement can be repeated.
unpack
action should be defined for archive and contain $f parameter
($f is replaced with file name while unpacking).
Examples:
Unpack "/path/to/unrar e -y -c- -o+ -inul $a $p $f" 0 52617221 # *.rar Unpack "d:\path\unrar e -y -c- -o+ -inul $a $p $f" 28 52534658 # rar-sfx/DOS Unpack "\path\pkzipc -ext -dir=none -over=all -nozip -silent $a $p $f" 0 504b0304 Unpack "unzip -joLqq $a -d $p" 0 504b0304 Unpack "pkunzip -njCL $a -d $p $f" 0 504b0304 Unpack "pkzip25 -ext -silent -over=all -nofix -nozip $a $p $f" 0
FileAreaCreatePerms <mode>
FileAreaCreatePerms 644
Define permissions for newly created filearea directories (UNIX only)
This statement cannot be repeated.
FileFixFromName <string>
FileFixFromName FileFix
Originator name in filefix replies.
This statement cannot be repeated.
AutoFileCreateFlag <file>
AutoFileCreateFlag /usr/local/fido/flags/new_filearea
Create flag when filearea has been autocreated.
This statement cannot be repeated.
FileFixNames <string>
FileFixNames allfix filefix htick
Set of names separated by space on which FileFix will respond
This statement cannot be repeated.
fileEchoFlavour <hold|normal|crash|direct|immediate>
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.
fileAreaDefaults <options> [links]
fileAreaDefaults -lw 100 -g Z 2:5097/31.1
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.
RemoteFileRobotName <name>
RemoteFileRobotName allfix
Name of remote filefix robot (needed for FileForwardRequest)
This statement can only be repeated for different links.
noTIC <bool>
noTIC yes
Disable TIC File Creation
This statement can only be repeated for different links.
autoFileCreate <on|off>
autoFileCreate on
Allow or deny autocreating fileechos received from this link.
This statement can only be repeated for different links.
AutoFileCreateFile <file>
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.
AutoFileCreateDefaults <string>
AutoFileCreateDefaults -lw 100 -g Z
Specifies the new filearea defaults. Please don't set any paths here, use LinkFileBaseDir for these purposes. See LinkFileBaseDir.
This statement can only be repeated for different links.
AutoFileCreateSubdirs <on|off>
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.
delNotReceivedTIC <on|off>
delNotReceivedTIC on
Remove TIC if file was not received
This statement can only be repeated for different links.
FileFixFSC87Subset <on|off>
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.
TickerPackToBox <on|off>
TickerPackToBox on
If link has file box - toss files and tics there
This statement can only be repeated for different links.
LinkFileBaseDir <directory>
LinkFileBaseDir /usr/local/fido/fileareas/2.5097.64.0
Where autocreated fileareas will be placed to (may be "passthrough")
This statement can only be repeated for different links.
ForwardFileRequests <on|off>
ForwardFileRequests on
Allow fileareas forward-requests to this link.
This statement can only be repeated for different links.
ForwardFilePriority <number>
ForwardFilePriority 1
Priority in uplinks order for filearea subscribing forward-requests
This statement can only be repeated for different links.
ForwardFileRequestFile <file>
ForwardFileRequestFile /usr/local/fido/hpt/uplink1.lst
List of available fileareas from this link
This statement can only be repeated for different links.
filefix <bool>
filefix off
By default filefix is "on". You can turn off using of filefix by this link.
This statement can only be repeated for different links.
FileFixEchoLimit <number>
FileFixEchoLimit 10
Area subscribe limit (max fileareas number this link is allowed to subscribe to)
This statement can only be repeated for different links.
FileArea <name> <fileareapath> [options] <uplink> <downlinks>
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:
-hide
.
-mandatory
.
-manual
.
-noCRC
.
-nodiz
.
-pause
.
-noreplace
.
-sendorig
.
Htick announcements are selective, they can be different for different
fileareas.
Token AnnAreaTag
starts a new section of announce definition,
other tokens define lists of fileareas included into announcement
and describe announce message.
To post announcements run htick announce
.
You may turn announcements off: just remove AnnounceSpool
definition from config.
AnnounceSpool <path>
AnnounceSpool /var/spool/fido/announce
Directory for accumulating report information.
This statement cannot be repeated.
AnnAreaTag <AREATAG|@filename>
AnnAreaTag local.announce
Begins new announcement definition section. <AREATAG> is name of an area where annoucement will be placed to; <@filename> is filename with leading '@' where annoucement will be placed to.
This statement can be repeated.
AnnInclude <fileecho mask list>
AnnInclude *
Array of fileecho names|masks that will be announced in this annAreaTag. Default: all fileareas.
This statement can be repeated only for different AnnAreaTag.
AnnExclude <fileecho mask list>
AnnExclude aftnged
Array of filearea names|masks that won't be announced in this annAreaTag
This statement can be repeated only for different AnnAreaTag.
AnnTo <string>
AnnTo All
Announcement message destination name.
This statement can be repeated only for different AnnAreaTag.
AnnFrom <string>
AnnFrom Announce Robot
Announcement message originator name.
This statement can be repeated only for different AnnAreaTag.
AnnSubj <string>
AnnSubj New files arrived
Announcement message subject.
This statement can be repeated only for different AnnAreaTag.
AnnAddrTo <address>
AnnAddrTo 2:5097/31.1
Announcement message destination address (use for netmail area).
This statement can be repeated only for different AnnAreaTag.
AnnAddrFrom <address>
AnnAddrFrom 2:5097/31
Announcement message originator address.
This statement can be repeated only for different AnnAreaTag.
AnnOrigin <string>
AnnOrigin News files!
Origin line in announcement message.
This statement can be repeated only for different AnnAreaTag.
AnnMessFlags <string>
AnnMessFlags loc hld
Announcement message flags (k/s loc hld ...).
This statement can be repeated only for different AnnAreaTag.
AnnFileRFrom <on|off>
AnnFileRFrom on
Show in announcement: address of system which file was received from.
This statement can be repeated only for different AnnAreaTag.
AnnFileOrigin <on|off>
AnnFileOrigin on
Show in announcement: address of system that has hatched file.
This statement can be repeated only for different AnnAreaTag.
The following text is taken from a real config file.
#= Announcements definitions ===================================== AnnounceSpool E:\FIDO\EXCH\report # report all arrived files to file e:\fido\rep.txt AnnAreaTag @e:\fido\rep.txt AnnFileOrigin on # report into area 'seumbieky.news' # files posted to 'union.*' group of fileechos AnnAreaTag seumbieky.news AnnInclude union.* AnnSubj New mp3's arrives AnnTo United mp3 fans AnnFrom Fullfeed Distribution Site AnnOrigin *** seumbieky forever *** AnnFileOrigin on AnnFileRfrom on # report 'uue.*' group of fileechos into area 'seumbieky.news' AnnAreaTag seumbieky.news AnnInclude uue.* # report into area 'seumbieky.news' # all other exept of 'uue.* and union.*' groups AnnAreaTag seumbieky.news AnnExclude uue.* union.* # report via netmail to defined address AnnAreaTag netmail AnnInclude union.* AnnSubj New mp3's arrives AnnTo Max Inda Houze Annaddrto 2:464/108 AnnFrom Fullfeed Distribution Site Annaddrfrom 2:464/910.108 AnnOrigin *** seumbieky forever *** AnnMessFlags k/s loc hld AnnFileOrigin on AnnFileRfrom on #= Announces definitions ends ================================
List of keywords used in many husky programs. For details see fidoconfig manual.
BBSArea
LogLevels
addDLC
: addDLCAnnAddrFrom
: AnnAddrFromAnnAddrTo
: AnnAddrToAnnAreaTag
: AnnAreaTagAnnExclude
: AnnExcludeAnnFileOrigin
: AnnFileOriginAnnFileRFrom
: AnnFileRFromAnnFrom
: AnnFromAnnInclude
: AnnIncludeAnnMessFlags
: AnnMessFlagsAnnOrigin
: AnnOriginAnnouncements example
: Announcements exampleAnnounceSpool
: AnnounceSpoolAnnSubj
: AnnSubjAnnTo
: AnnToautoFileCreate
: autoFileCreateAutoFileCreateDefaults
: AutoFileCreateDefaultsAutoFileCreateFile
: AutoFileCreateFileAutoFileCreateFlag
: AutoFileCreateFlagAutoFileCreateSubdirs
: AutoFileCreateSubdirsBBSarea
: BBSareaBusyFileDir
: BusyFileDirCommon husky keywords
: Common husky keywordsConvertLongNames
: ConvertLongNamesConvertShortNames
: ConvertShortNamesdelNotReceivedTIC
: delNotReceivedTICDLCDigits
: DLCDigitsExecOnFile
: ExecOnFileFileArea
: FileAreaFileAreaBaseDir
: FileAreaBaseDirFileAreaCreatePerms
: FileAreaCreatePermsfileAreaDefaults
: fileAreaDefaultsfileDescName
: fileDescNameFileDescPos
: FileDescPosfileEchoFlavour
: fileEchoFlavourFileFixEcho
: FileFixFileFixEchoLimit
: FileFixEchoLimitFileFixFromName
: FileFixFromNameFileFixFSC87Subset
: FileFixFSC87SubsetFileFixHelp
: FileFixHelpfilefixKillRequests
: filefixKillRequestsFileFixNames
: FileFixNamesfilefixReportsAttr
: filefixReportsAttrfileLDescString
: fileLDescStringForwardFilePriority
: ForwardFilePriorityForwardFileRequestFile
: ForwardFileRequestFileForwardFileRequests
: ForwardFileRequestsLinkFileBaseDir
: LinkFileBaseDirMaxTicLineLength
: MaxTicLineLengthnoTIC
: noTICPassFileAreaDir
: PassFileAreaDirRemoteFileRobotName
: RemoteFileRobotNameSaveTic
: SaveTicTickerPackToBox
: TickerPackToBoxticOutbound
: ticOutbound