Table of Contents
SBBSecho (FidoNet EchoMail Program) Configuration
ctrl/sbbsecho.ini
is the default configuration filename used by SBBSecho version 3, BinkIT version 2, and TickIT version 1. While other configuration filenames may be passed-to and used-by SBBSecho, the format must be the same .ini format and only one configuration file may be used per invocation of SBBSecho.
The current default sbbsecho.ini
file can be downloaded from Git here.
Editing
You can edit the sbbsecho.ini
file by hand using any text editor or, preferably, using the Synchronet EchoCfg utility.
When editing the sbbsecho.ini
file by hand, it is recommended to first make a backup copy of the file.
Reference
All of the supported .ini sections and keys are documented here.
Root Section
Most of the SBBSecho configuration settings are defined in the Root Section of the sbbsecho.ini
file.
General/Global settings
Key | Default Value | Description |
---|---|---|
Inbound | ../fido/nonsecure | Directory where SBBSecho will look for non-secured inbound files |
SecureInbound | ../fido/inbound | Directory where SBBSecho will look for secured inbound files |
Outbound | ../fido/outbound | Directory where SBBSecho will place outbound files |
AreaFile | ../data/areas.bbs | File where SBBSecho will load FTN-attached message areas from |
BadAreaFile | ../data/badareas.lst | File where SBBSecho will write the names/tags of unlinked areas for which it has received echomail |
LogFile | ../data/sbbsecho.log | Log filename |
LogTimeFormat | %Y-%m-%d %H:%M:%S | Time-stamp format used in the log file |
TempDirectory | ../temp/sbbsecho | Directory where SBBSecho will create temporary/in-process files |
OutgoingSemaphore | Semaphore file SBBSecho will touch when creating outbound files | |
LogLevel | Informational | Minimum severity of log messages written to the log file |
StripLineFeeds | false | Strip line-feed (ASCII 10) characters from exported messages |
StripSoftCRs | true | Strip soft carriage-return (0x8D) characters from imported messages |
BinkleyStyleOutbound | true | Mailer is BSO/FLO style (rather than ArcMail/Attach style) |
BsyTimeout | 12 hours | Time-out duration when attempting to lock .bsy files |
BsoLockAttempts | 60 | Number of attempts to lock a BSO for a node |
BsoLockDelay | 10 seconds | Delay between BSO lock attempts |
StrictPacketPasswords | true | Packets with passwords must match the corresponding configured/linked node password |
umask | 077 | File creation mode (for *nix only) |
AreaFileBackups | 100 | Number of Area File backups to maintain (for Area Manager modifications) |
CfgFileBackups | 100 | Number of configuration file backups to maintain (for Area Manager or EchoCfg modifications) |
MaxLogSize | 10M | Maximum size (in bytes) of each SBBSecho log file (0 = no limit) |
MaxLogsKept | 10 | Maximum number of SBBSecho log files to keep |
MinFreeDiskSpace | 10M | Minimum amount of available disk space required for SBBSecho to operate |
UseOutboxes | true | If a linked-node has an outbox value specified, place outbound files for that node in it |
AutoUTF8 | true | Automatically detect UTF-8-encoded incoming messages and mark them accordingly |
EchoMail-related settings
Key | Default Value | Description |
---|---|---|
BundleSize | 250K | Outgoing bundles (archives), maximum file size |
PacketSize | 250K | Outgoing packets (*.pkt ), maximum file size |
CheckPathsForDupes | true | Check PATH kludge lines for circular messages |
SecureEchomail | false | Only import EchoMail from linked nodes |
EchomailNotify | true | Send telegrams to BBS users when EchoMail is received for them |
ConvertTearLines | false | Convert any tear lines (— ) existing in the message text to === |
TruncateBundles | false | Truncate rather than delete outbound bundles after being sent |
ZoneBlind | false | Assume that node numbers are not duplicated across zones (set to true with a Threshold of 4 for “FidoWeb” operation) |
ZoneBlindThreshold | 65535 | Zone numbers less than this will be considered blind (all part of the same node number “namespace”) |
AreaAddFromEcholistsOnly | false | Allow echoes to be AreaFix-added from Additional EchoLists only (not Area File) |
AutoAddSubs | true | Automatically add new Sub-boards within linked Message Groups to the run-time Area List |
AutoAddToAreaFile | true | Automatically add new Sub-boards within linked Message Groups to the on-disk Area File |
MaxEchomailAge | 60 days | Age limit (in days) of EchoMail messages that may be imported (0 = no limit) |
RelayFilteredMsgs | false | Messages that are filtered (e.g. due to age) will be relayed to downlinks |
AreaManager | SYSOP | BBS user name or alias to notify (via email) of AreaFix activities and errors |
EchoStats | ../data/echostats.ini | Path/filename of EchoMail Statistics (“EchoStats”) database |
RequireLinkedNodeCfg | true | Require that area-linked nodes (in the area file) are configured as linked-nodes |
NetMail-related settings
Key | Default Value | Description |
---|---|---|
DefaultRecipient | Name of the user account you wish to receive inbound NetMail messages that have been addressed to an unrecognized user name or alias | |
SysopAliasList | SYSOP | Comma-separated list of names by which the sysop (user #1) may receive NetMail messages |
FuzzyNetmailZones | false | Use local AKAs to determine source zone information when missing |
IgnoreNetmailDestAddr | false | Treat all NetMail as though it is destined for one of your systems's FTN addresses |
IgnoreNetmailSentAttr | false | Export NetMail messages even when their 'Sent' attribute flag is set |
IgnoreNetmailKillAttr | false | Do not delete exported NetMail messages even when their 'Kill' attribute flag is set |
IgnoreNetmailRecvAttr | false | Import NetMail messages even when their 'Received' attribute flag is set |
IgnoreNetmailLocalAttr | false | Import NetMail messages even when their 'Local' attribute flag is set |
KillEmptyNetmail | true | Discard (not import or export) NetMail messages without any body |
DeleteNetmail | true | Delete all NetMail messages/files after they have been sent or imported |
DeletePackets | true | Delete packets after they've been imported |
MaxNetmailAge | 0 | Age limit (in days) of NetMail messages that may be imported (0 = no limit) |
BinkP Section
The [BinkP]
section is used for BinkP-specific global settings (i.e. used exclusively by BinkIT version 2):
Key | Default Value | Description |
---|---|---|
Capabilities | <blank> | If set, changes the text in the M_NUL NDL line from the default of “115200,TCP,BINKP” |
Sysop | <blank> | If set, over-rides the sysop name (ZYZ ) value (e.g. to send the sysop's real name instead of alias) |
PlainAuthOnly | false | If set to true , disables CRAM-MD5 authentication and encryption support for all inbound and outbound sessions (e.g. for trouble-shooting purposes) |
PlainTextOnly | false | If set to true , disables encryption support for all inbound and outbound sessions (when set to false , requires that PlainAuthOnly is also set to false ) |
Archive Sections
Archivers are used to extract packets from received bundles and create bundles of outgoing packets. Archivers are configured in the Archive Sections of the sbbsecho.ini
file (separately from any archivers configured in Synchronet/SCFG).
Each Archive Section has a prefix of “archive:
” and the name of the archive type (e.g. “ZIP”) following the prefix.
Key | Default Value | Description |
---|---|---|
SigOffset | 0 | Signature offset (in bytes) |
Sig | Signature (in hexadecimal) | |
Pack | Archive creation (pack) command-line (with Synchronet command-line specifiers) | |
Unpack | Archive extraction (unpack) command-line (with Synchronet command-line specifiers) |
Example:
[archive:ZIP] SigOffset = 0 Sig = 504B Pack = %@zip -jD %f %s Unpack = %@unzip -ojC %f -d %s
Node Sections
Each Linked-Node Section has a prefix of “node:
” with the FTN address of the node following the prefix.
Key | Default Value | Description |
---|---|---|
PacketType | 2+ | Type of packets to generate for this node (2+, 2e, 2.2, or 2) |
PacketPwd | Password used in password-protected packets | |
SessionPwd | Password used for BinkP (BinkIT) sessions with this linked node | |
AreaFixPwd | Password required for AreaFix/AreaMgr operations | |
TicFilePwd | Password required for TIC files (used by tickit.js ) |
|
Name | Name of this linked-node's operator (e.g. real name or alias), auto-set when receiving Area Manager requests | |
Comment | Personal comment about this node (any text useful to you) | |
Inbox | Optional filebox for incoming files (correlates with BinkD's ibox setting, BinkIT does not support inboxes) |
|
Outbox | Optional filebox for outgoing files (correlates with BinkD's obox setting, BinkIT has experimental support for outboxes) |
|
Keys | List of keys (comma-separated) which enable AreaFix access to one or more Additional EchoLists | |
Notify | false | Notify via NetMail of node's current AreaFix settings whenever SBBSecho is run with the '`-g`' option |
Passive | false | Temporarily disable the packing and sending of EchoMail for this node |
Direct | false | Connect to this node directly (whenever possible) when sending mail to this node |
Status | Normal | Default mode for sending mail to this node: Normal, Hold (wait for pickup) or Crash (immediate) |
Archive | None | Name of a configured archive type or “None” |
Route | FTN address (e.g. of a hub) to route all EchoMail and NetMail destined for this node's address | |
LocalAddress | Optional local system address (AKA) to use when sending packets to this node | |
GroupHub | List of Message Groups (comma-separated) for which this linked node is your system's uplink (hub) | |
BinkpHost | Host name or IP address of this link's BinkP mailer (optional) | |
BinkpPort | 24554 | TCP port number of this link's BinkP mailer |
BinkpPoll | false | Poll this link (e.g. as part of the BINKPOLL timed event) for incoming mail |
BinkpAllowPlainAuth | false | Allow plain-password (in addition to CRAM-MD5) when authenticating with this linked node |
BinkpPlainAuthOnly | false | Only support plain-password authentication when connecting (outbound) with this linked node |
BinkpAllowPlainText | true | Allow plain-text (unencrypted) communication with this linked node |
BinkpSourceAddress | Use an alternative FTN address as the source address when communicating with this node via BinkP | |
BinkpTLS | false | Use implicit TLS for outbound encrypted connections with this linked node |
NOTE:
The wildcard ALL
may replace one or more fields of the configured node's FTN address. Configured node's with wildcard addresses cannot have an Inbox our Outbox set.
Example
[node:1:218/700] Comment = My Hub AreafixPwd = PacketPwd = PacketType = 2+ Archive = ZIP Inbox = Outbox = Passive = false Direct = false Notify = false Keys = Status = Normal [node:1:ALL] Comment = Everyone in FidoNet Zone 1 AreafixPwd = PacketPwd = PacketType = 2+ Archive = ZIP Inbox = Outbox = Passive = false Direct = false Notify = false Keys = Status = Normal Route = 1:218/700
BinkP Session-Security
The evolution of the BinkIT/BinkP session-security related settings has lead to a potentially confusing array of 3 interrelated Boolean options with only 4 valid combinations of values. Here is a table to explain these valid combinations and their impact on the security and interoperability of BinkP sessions with the linked-node:
Security Level | BinkpPlainAuthOnly | BinkpAllowPlainAuth | BinkpAllowPlainText | Notes |
---|---|---|---|---|
Minimum | true | true | true | Passwords and message packets will always be sent as clear-text (maximum interoperability) |
Normal | false | true | true | Passwords may be obscured via CRAM-MD5 authentication |
Enhanced | false | false | true | Passwords must be obscured via CRAM-MD5 authentication |
Maximum | false | false | false | Passwords and message packets must be obscured or encrypted 1) |
In general, the lower the security setting, the higher the level of insured compatibility with other BinkP mailers. When debugging authentication (password) issues, it might be a good idea to use the minimum level of security and increase the security level incrementally once you have the minimum level of secured-session working with the linked-node.
Also note: authentication is performed by the answering BinkP node (server/service), so while one security level may work okay for outgoing connections to a linked-node, its possible that there could be problems (incompatibilities) with incoming connections from that same linked-node. It's a good idea to test both incoming and outgoing connections with a linked-node before increasing the BinkP session security level.
Robot Sections
Each NetMail Robot Section has a prefix of “robot:
” with the name of the robot (e.g. filefix
) following the prefix. Received NetMail addressed to the name of a robot will be stored in your data/mail
base and expected to be acted-up by a robot that is trigged when its associated semaphore file is touched. TickFix is an example of a NetMail robot.
Key | Description |
---|---|
SemFile | The path and filename of a semaphore file to be touched by SBBSecho when a NetMail is received for the robot |
attr | NetMail attribute flags to set (usually specific in hexadecimal notation with a 0x prefix), 0x20 (In-Transit) is recommended |
Domain Sections
Each FTN Domain Section has a prefix of “domain:
” with the name of the domain (e.g. fidonet
, fsxnet
) following the prefix.
Key | Description |
---|---|
Zones | List of zone numbers (comma-separated) associated with this domain |
DNSSuffix | Optional suffix used for DNS-based IP address look-ups of nodes in this domain (e.g. f<node>.n<net>.z<zone>.<suffix> ) |
NodeList | Optional nodelist path/filename to use for hostname/IP address look-ups for this domain |
OutboundRoot | Optional alternate outbound root directory to use for this domain |
Note:
FTN domains used to be configured in the now-deprecated ctrl/ftn_domains.ini
file.
EchoList Sections
Each Additional EchoList Section has a prefix of “echolist:
” with the path/filename of the EchoList following the prefix.
Key | Default Value | Description |
---|---|---|
Keys | List of keys (comma-separated) which enable Linked Node AreaFix access to this EchoList | |
Hub | The FTN address of hub which provides the areas in this EchoList | |
Fwd | false | Forward AreaFix requests to hub of this EchoList? |
Pwd | AreaFix password to include in AreaFix requests forwarded to the hub of this EchoList |