Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
config:ini_files [2018/03/01 12:21] – old revision restored digital manconfig:ini_files [2023/10/26 17:21] (current) – Add text.ini digital man
Line 1: Line 1:
-====== INI Files ======+====== .ini files ====== 
 + 
 +''.ini'' files are used by Synchronet for //initialization// control, //configuration//, and //data-storage//.
  
 ===== Configuration ===== ===== Configuration =====
  
-Synchronet supports a variety of configuration files of different formats. A growing majority of these configuration files are of the [[wp>INI file]] type. Synchronet's INI configuration files are typically stored in the ''[[dir:ctrl]]'' directory, with a ''.ini'' filename suffix/extension.+Synchronet's INI configuration files are typically stored in the ''[[dir:ctrl]]'' directory, with a ''.ini'' filename suffix/extension. 
 + 
 +==== Primary Configuration Files ==== 
 + 
 +The primary configuration files managed by the [[util:SCFG]] utility are: 
 +^ Filename    ^ Description ^ 
 +|''[[sbbs.ini]]'' |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/ctrl/sbbs.ini|Synchronet Server Initialization File]] | 
 +| ''main.ini'' | Primary system settings (e.g. BBS name, location, security settings) and command shells | 
 +| ''msgs.ini'' | Message areas, message options, and message networking | 
 +| ''file.ini'' | File areas (for uploads, download), text file areas, and file-related options | 
 +| ''xtrn.ini'' | External program configurations which includes timed events, message editors, hot-key events and doors | 
 +| ''chat.ini'' | Chat Features settings, specifically the Guru, Multi-node chat actions and channels, and external sysop pagers | 
 +| ''node.ini'' | Located in the [[dir:node|node directories]], and configured via the SCFG [[util:scfg:Nodes]] menu | 
 + 
 +==== Secondary Configuration Files ====
  
 ^Filename Page             ^Default Contents^Description^ ^Filename Page             ^Default Contents^Description^
-|''[[cgi_env.ini]]''        |[[http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/ctrl/cgi_env.ini|cgi_env.ini]]|[[server:Web]] Server CGI Settings| +|''[[custom:text.ini]]''    |N/A | Customized ''text.dat'' strings (optional) | 
-|''[[formmail.ini]]''       |[[http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/ctrl/formmail.ini|formmail.ini]]|Configuration for ''[[dir:web]]/formmail.ssjs'', Synchronet's Server-side [[custom:JavaScript]] version of [[http://www.scriptarchive.com/formmail.html|FormMail]]| +|''text.//lang//.ini''      |varies | Alternate language ''text.ini'' files | 
-|''[[ircbot.ini]]''         |[[http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/ctrl/ircbot.ini|ircbot.ini]]|Configuration for IRC robots, optionally works with the Synchronet [[service:IRCd]]| +|''[[cgi_env.ini]]''        |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/ctrl/cgi_env.ini|cgi_env.ini]]|[[server:Web]] Server CGI Settings| 
-|''[[listserver.ini]]''     |[[http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/ctrl/listservier.ini|listserver.ini]]|Configuration for the Synchronet ListServer module (''[[dir:exec]]/[[module:listserver]].js'')| +|''[[formmail.ini]]''       |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/ctrl/formmail.ini|formmail.ini]]|Configuration for ''[[dir:web]]/formmail.ssjs'', Synchronet's Server-side [[custom:JavaScript]] version of [[http://www.scriptarchive.com/formmail.html|FormMail]]| 
-|''[[mailproc.ini]]''       |[[http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/ctrl/mailproc.ini|mailproc.ini]]|Configuration of External Mail Processors for the [[server:Mail]] Server (SMTP)| +|''[[ircbot.ini]]''         |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/ctrl/ircbot.ini|ircbot.ini]]|Configuration for IRC robots, optionally works with the Synchronet [[service:IRCd]]| 
-|''[[mime_types.ini]]''     |[[http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/ctrl/mime_types.ini|mime_types.ini]]|MIME File Types registered in the [[server:Web]] Server| +|''[[listserver.ini]]''     |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/ctrl/listservier.ini|listserver.ini]]|Configuration for the Synchronet ListServer module (''[[dir:exec]]/[[module:listserver]].js'')| 
-|''[[modopts.ini]]''        |[[http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/ctrl/modopts.ini|modopts.ini]]|Configuration settings (options) for various [[custom:JavaScript]] modules, stock and/or 3rd party| +|''[[mailproc.ini]]''       |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/ctrl/mailproc.ini|mailproc.ini]]|Configuration of External Mail Processors for the [[server:Mail]] Server (SMTP)| 
-|''[[rss.ini]]''            |[[http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/ctrl/rss.ini|rss.ini]]|Configuration for Synchronet RSS Feed module (''[[dir:web]]/root/rss.ssjs'')+|''[[mime_types.ini]]''     |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/ctrl/mime_types.ini|mime_types.ini]]|MIME File Types registered in the [[server:Web]] Server| 
-|''[[sbbs.ini]]''           |[[http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/ctrl/sbbs.ini|sbbs.ini]]|Synchronet Initialization File|+|''[[modopts.ini]]''        |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/ctrl/modopts.ini|modopts.ini]]|Configuration settings (options) for various [[custom:JavaScript]] modules, stock and/or 3rd party| 
 +|''[[rss.ini]]''            |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/ctrl/rss.ini|rss.ini]]|Configuration for Synchronet RSS Feed module (''[[dir:web]]/root/rss.ssjs'')|
 |''[[sbbsctrl.ini]]''       |N/A|Configuration for Synchronet Control Panel ([[monitor:SBBSCTRL]]) for Windows, exported from Windows Registry| |''[[sbbsctrl.ini]]''       |N/A|Configuration for Synchronet Control Panel ([[monitor:SBBSCTRL]]) for Windows, exported from Windows Registry|
-|''[[sbbsexec.ini]]''           |[[http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/exec/sbbsexec.ini|sbbsexec.ini]]|Configuration for the Synchronet Virtual FOSSIL / UART Driver for Windows| +|''[[sbbsexec.ini]]''           |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/exec/sbbsexec.ini|sbbsexec.ini]]|Configuration for the Synchronet Virtual FOSSIL / UART Driver for Windows| 
-|''[[services.ini]]''       |[[http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/ctrl/services.ini|services.ini]]|Configuration for Synchronet [[service:|Services]]|+|''[[services.ini]]''       |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/ctrl/services.ini|services.ini]]|Configuration for Synchronet [[service:|Services]]|
 |''[[sexpots.ini]]''       |N/A|Configuration for Synchronet External POTS Support utility ([[util:SEXPOTS]])| |''[[sexpots.ini]]''       |N/A|Configuration for Synchronet External POTS Support utility ([[util:SEXPOTS]])|
 |''[[sexyz.ini]]''       |N/A|Configuration for Synchronet External X/Y/ZMODEM protocol driver ([[util:SEXYZ]])| |''[[sexyz.ini]]''       |N/A|Configuration for Synchronet External X/Y/ZMODEM protocol driver ([[util:SEXYZ]])|
-|''[[sockopts.ini]]''       |[[http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/ctrl/sockopts.ini|sockopts.ini]]|Configuration of TCP/IP socket options| +|''[[sockopts.ini]]''       |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/ctrl/sockopts.ini|sockopts.ini]]|Configuration of TCP/IP socket options| 
-|''[[web_handler.ini]]''    |[[http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/ctrl/web_handler.ini|web_handler.ini]]|Configuration of special content (file type) handlers for the [[server:Web]] Server| +|''[[web_handler.ini]]''    |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/ctrl/web_handler.ini|web_handler.ini]]|Configuration of special content (file type) handlers for the [[server:Web]] Server| 
-|''[[webicons.ini]]''       |[[http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/ctrl/webicons.ini|webicons.ini]]|Configuration of icon files used to represent specific file types in the [[server:Web]] Server|+|''[[webicons.ini]]''       |[[https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/ctrl/webicons.ini|webicons.ini]]|Configuration of icon files used to represent specific file types in the [[server:Web]] Server|
  
 ===== Database ===== ===== Database =====
Line 103: Line 120:
 Note: Since section names may not be reused in a single ''.ini'' file, a single section with more than one name will be the **only** representation of the named sections and any following section with one of the used names will be ignored. Note: Since section names may not be reused in a single ''.ini'' file, a single section with more than one name will be the **only** representation of the named sections and any following section with one of the used names will be ignored.
  
 +==== String Literals ====
 +
 +By using a colon character ('':'') rather than equals sign (''='') as a key/value separator, string value with embedded control characters and trailing white-space characters may be specified in ''.ini'' files.
 +
 +=== Quotes ===
 +If the first non-white-space character following the colon key/value separate is a double-quote (''"'') character, then the string will be terminated at the last (right-most) double-quote character. This allows a string value to be specified with trailing white-space:
 +  mystring: "a string with trailing white-space "
 +
 +=== Escape Sequences ===
 +Character values may be specified using C-style character literal escaping for control characters (e.g. ''\r'' for carriage-return, ''\n'' for line-feed, ''\x01'' for Ctrl-A, etc.) or CP437 characters (e.g. ''\xb3'' for a vertical bar).
 ==== Directives ==== ==== Directives ====
  
Line 121: Line 148:
 <code ini> <code ini>
 !include another.ini !include another.ini
 +</code>
 +
 +In Synchronet v3.18c, the ability to include multiple files was added, e.g.
 +
 +<code ini>
 +!include sub-dir/*.ini
 </code> </code>
  
Line 160: Line 193:
 ==== Enumerated Values ==== ==== Enumerated Values ====
  
-Some keys support values specified either by number (typically from ''0'' through n) or by a symbolic name for each supported value. These are referred to enumerated values.+Some keys support values specified either by number (typically from ''0'' through n) or by a symbolic name for each supported value. These are referred to as enumerated values.
  
 A numeric value higher than the highest supported enumerated value will be treated the same as the highest supported enumerated value. A numeric value higher than the highest supported enumerated value will be treated the same as the highest supported enumerated value.
 +
 +When a word is provided for the enumerated key value, an exact case-insensitive match is performed search following by a partial-match search, so "Debug" would match the enum value for "Debugging", and "Info" would match the enum value for "Informational".
  
 === Log Levels === === Log Levels ===
Line 205: Line 240:
 ===== Source Code ===== ===== Source Code =====
  
-Synchronet's INI file support comes from the XPDEV C library. The main source file is [[http://cvs.synchro.net/cgi-bin/viewcvs.cgi/src/xpdev/ini_file.c]].+Synchronet's INI file support comes from the XPDEV C library. The main source file is [[https://gitlab.synchro.net/sbbs/sbbs/-/blob/master/src/xpdev/ini_file.c]].
  
 ===== See Also ===== ===== See Also =====
Line 214: Line 249:
   * [[config:cfg_files|CFG Files]]   * [[config:cfg_files|CFG Files]]
   * [[config:cnf_files|CNF Files]]   * [[config:cnf_files|CNF Files]]
-  
    
  
 +{{tag>configuration file_type ini}}
config/ini_files.1519935696.txt · Last modified: 2018/03/01 12:21 by digital man
Back to top
CC Attribution 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0