
                 CABLENET SOFTWARE DEFAULTS SYSTEM


    The defaults system is a means of storing run-time configuration in
a set of files which are read by the various CableNet programs.  Some
defaults are read only once upon program start-up and others may be read
many times during the lifetime of a process.  The defaults values are
stored as tag=value pairs in what are called 'group' files.  There is a
file for each program and a global file where the values apply to all
programs.  The global file is called 'global' and the respective program
files have the same name as the program without any version suffix.

The defaults can be stored in one of three locations;

	${HOME}/defaults
	/usr/local/defaults
	/var/spool/defaults

    These are considerd to be user,local and system defaults trees
respectively.  Under normal circumstances when a program is looking for
the value for a tag it first of all searches the user tree (which is off
the home directory of the user running the program), then the local
tree, and finally the system tree.  Normally defaults should be stored
in the local tree, however the user tree can be used by particular users
to run programs with different defaults.

Examples of defaults files are;

	/usr/local/defaults/global	/* global defaults for all programs */
	/usr/local/defaults/cnadmind	/* defaults for the cnadmind daemon */




                        GROUPS & SETS


    The term tree is used because the defaults values can be stored in a
directory hierarchy where a directory represents a set of group files.
Thus defaults are stored in groups which are contained in sets.  This
could be used to provide per user defaults so that the system can be
tuned to perform different ways for different users.

Defaults Values

Defaults are stored as textual representations of either; strings,
integers or booleans.

Some examples of defaults are;

In the file '/usr/local/defaults/global'

	singleletter=TRUE 

A boolean default which says that your system uses a user directory
hierarchy of the form

	{cablenet_base}/users/m/moose

where users directories are grouped into directories which are the first
letter of their login id.


In the file '/usr/local/defaults/cncpd'

	port=1636

An integer default which says that the cncpd daemon listens on port 1636.


In the file '/usr/local/defaults/global'

	cablenet_base=/usr/local/cablenet

A string default which identifies the base directory for the cablenet
installation.



                        EDITING DEFAULTS


    Use you favourite editor to edit the defaults files.  The system
will not run properly if you screw up so be careful.  In particular the
global file contains important global information, the most important of
which is probably the 'domain' tag.  This identifies the domain that is
used when new users are added by the cnadmind daemon during online
registration.
 


Here is the contents of the global file with an explanation for each
entry;

NB not all entries are utilized yet, some are there for future
applications.


Any line beginning with a '#' is treated as a comment

#  as above example YES == TRUE 
singleletter=YES 
doubleletters=YES 
tripleletters=YES 

# location of the sendmail mailer program
sendmail=/usr/local/lib/sendmail

# sendmail version
sendmail_version=V8

# top of the cablenet installation tree
cablenet_base=/usr/local/cablenet

# domain suffix for new subscribers
# our entry is domain=cablenet.co.uk
# so a new subscriber 'wigwam' has the domain name wigwam.cablenet.co.uk
domain=<myisp-domain>

# the total amount of disk space a user is allowed to occupy
disk_space=5000000

# the amount of web space they get automatically
web_space=100000

# the sub-directory of their (pseudo) home directory which contains their web
# files
user_html_dir=html

# the absolute root of the web tree
web_root=/var/spool/www/

# the number to dial for modem dialup service
# insert your number here
pop_number=<area-code> <number>

# the name of your company
isp_name=<myisp company name>

# a single word (may include '.') which is used in authentication
isp_account=<Identifier>

# ip adress of the news server
news_ip=0.0.0.0

#ip address of the dns server
dns_ip=0.0.0.0

# ip address of the mail hub
post_ip=0.0.0.0

# ip address of the web server
www_ip=0.0.0.0

# FQDN or IP address of the server running the cncpd daemon process
cncp_host=0.0.0.0

# server running dynamic name server
dns_host=ns.<my isp domain>

# FQDN or IP address of host used for athorization
auth_host=auth.<my isp domain>

# FQDN or IP address of host holding user's details/accounting
acct_host=acct.<my isp domain>

# unused
mail_host=post.<my isp domain>

# the caption that will appear in the title bar of the windows pop up message 
# boxes for messages you send to clients
msg_caption=Message From Your ISP <company name or whatever>

# whether you are using static or dynamic ip address allocation
ip_allocation=dynamic

#whether you want to dynamically update the name server as subscribers
#login and out
dynamic_dns=TRUE

# do subscribers get a node name
nodename=TRUE

# do subsribers get a home directory
user_has_directory=TRUE

# do you allow people to register more than once
allow_multiple_logins=TRUE

# the number of days by default that a new subscriber can trial the service
# NB this can be overruled by the value contained in the days field of the
# dealer record corresponding to the dealer code that they enter.  See the
# file online-registration
num_trial_days=14

# the maximum size of email that anyone can recieve
max_mail_size=64000

# the limit to the number of emails a new subscriber can receive during the
# free trial period
max_trial_emails=28

# the name of the mail hub machine
mailhub=<mymailhub.mydomain>

# number of days a user is allowed to log in after the period for which they
# have paid for expires
grace_period=17

# number of days after which a non paying user is removed from the system
# this does NOT happen automatically (it is a report, see reporting and 
# /usr/local/cablenet/daily.reports )
expire-period=47

# this allows hosts not listed in trusted.hosts to perform otherwise
# restricted actions
domain_password=some.text

# the format you want to use to store and display date strings
# must be one of dd/mm/yy or mm/dd/yy or yy/mm/dd
date_format=dd/mm/yy

# the login id of the account used for online registration
registration_account=cnregister

# the name of the person who should recieve notification of new subscribers
admin_mailbox=<some user name>

# the following defaults relate to the storage locations of the data
# this information shouldn't change but it can be used to switch between
# alternate sources of data
# all of these values can be safely removed
#

# name of the services database
serv_dbase=<some_database_name>

# name of the dns database
dns_dbase=<some_database_name>

# name of the accounting database
acct_dbase=<some_database_name>

# name of the authorization database
auth_dbase=<some_database_name>

# name of the web database
web_dbase=<some_database_name>

# name of the services host
serv_host=<some_hostname>

# name of the web host
web_host=<some_hostname>



-----------------------------------

Here is the contents of the cncpd defaults file with an explanation of
each entry;

# port number that the cncpd daemon listens on
port=1636



Here is the contents of the cnadmind defaults file with an explanation
of each entry;

# port number that the cnadmind daemon listens on
port=1637

# whether to update the name server with subscriber modifications
update_dns=TRUE


Here is the contents of the cninfod defaults file with an explanation
of each entry;

# port number that the cninfod daemon listens on
port=1638


Here is the contents of the cnreport defaults file with an explanation
of each entry;

# save a copy of the report of login times for each user in their reports
# directory
save_times=TRUE


# send a copy of the report via email to the user concerned
mail_times=TRUE

