home *** CD-ROM | disk | FTP | other *** search
/ BURKS 2 / BURKS_AUG97.ISO / SLAKWARE / N3 / NN-NNTP.TGZ / NN-NNTP.tar / usr / lib / nn / src / config.h next >
C/C++ Source or Header  |  1994-09-13  |  12KB  |  391 lines

  1. /**************************** NN CONFIGURATION ***************************
  2.  *
  3.  *    Configuration file for nn.
  4.  *
  5.  *    You must edit this file to reflect your local configuration
  6.  *    and environment.
  7.  *
  8.  *    Before editing this file, read the licence terms in the README
  9.  *    file and the installation guidelines in the INSTALLATION file.
  10.  *
  11.  *    (c) Copyright 1990, Kim F. Storm.  All rights reserved.
  12.  */
  13.  
  14. #define    RELEASE     "6.4"
  15.  
  16. #include <stdio.h>
  17. #include <ctype.h>
  18.  
  19.  
  20. /*********************** NETWORK DEPENDENT DEFINITIONS **********************
  21.  *
  22.  *    Define NETWORK_DATABASE if you share the database through NFS on
  23.  *    a network with different, non-compatible machines, e.g. SUNs and
  24.  *    VAXen, or SUN-3 and SUN-4, or if you are using different compilers
  25.  *    on the same architecture.
  26.  *
  27.  *    In a homogenous network, you can leave it undefined for higher
  28.  *    performance (no data conversion is needed).
  29.  */
  30.  
  31. /* #define NETWORK_DATABASE    /* */
  32.  
  33.  
  34. /********************************** NNTP *********************************
  35.  *
  36.  *     Define NNTP to enable nntp support.  If you are not using NNTP,
  37.  *    just leave the following NNTP_* definitions as they are - they
  38.  *    will be ignored anyway.
  39.  *
  40.  *    With NNTP, the nnmaster still maintains a local database of
  41.  *    all article headers for fast access (and because NNTP does not
  42.  *    support nn - yet), while the articles are fetched from the
  43.  *    nntp server when they are read or saved.
  44.  *
  45.  *    You may still share this database through NFS locally (see the
  46.  *    description of NETWORK_DATABASE above) if you don't want to
  47.  *    have separate nn databases on all your local systems.
  48.  *
  49.  *    Consult the file NNTP for further information on the use of NNTP.
  50.  */
  51.  
  52. #define NNTP            /* */
  53.  
  54. /*
  55.  *    Define NNTP_SERVER to the name of a file containing the name of the
  56.  *    nntp server.
  57.  *
  58.  *    It is vital that both the nnmaster and all nn users on a machine
  59.  *    uses the same nntp server, because the nn database is synchronized
  60.  *    with a specific news active file.
  61.  *
  62.  *    If the file name does not start with a slash, it is relative to
  63.  *    LIB_DIRECTORY defined below.
  64.  *    NOTE: If you plan to use the included inews, it MUST be a full pathname
  65.  */
  66.  
  67. #define NNTP_SERVER    "/etc/nntpserver"  /* */
  68.  
  69. /*
  70.  *    Define NNTP_POST if you want nn to reject attempts to post via
  71.  *    NNTP to a server, that disallows postings.
  72.  *
  73.  *    You should define this, if you use the NNTP based mini-inews for
  74.  *    postings from NNTP clients.  If you use another mechanism, that
  75.  *    does not involve NNTP, you should leave it undefined.
  76.  */
  77.  
  78. #define NNTP_POST             /* */
  79.  
  80. /*
  81.  *    NNTP's mini-inews seems to require that messages contain a complete
  82.  *    header with Message-ID, Path, and Date fields which the normal inews
  83.  *    generates itself.  If your mini-inews requires these headers to
  84.  *    be present, define NNTP_MINI_INEWS_HEADER below.
  85.  */
  86.  
  87. #define NNTP_MINI_INEWS_HEADER    /* uses "broken" mini-inews */
  88.  
  89. /*
  90.  *    Define NNTP_PATH_HOSTNAME to force a specific hostname into the
  91.  *    Path: header generated when NNTP_MINI_INEWS_HEADER is defined.
  92.  *    This is useful for multi-machine sites with one mail/news gateway.
  93.  *
  94.  *    If the string starts with a '/' it is taken as the name of a file
  95.  *    from which the outgoing hostname should be read (at runtime).
  96.  */
  97.  
  98. /* #define NNTP_PATH_HOSTNAME    "puthostnamehere"    /* */
  99.  
  100.  
  101. /***************** OPERATING SYSTEM DEPENDENT DEFINITIONS *******************
  102.  *
  103.  *      Include the appropriate s- file for your system below.
  104.  *
  105.  *    If a file does not exist for your system, you can use
  106.  *    conf/s-template.h as a starting point for writing you own.
  107.  */
  108.  
  109. #include "s-linux.h"
  110.  
  111. /*
  112.  *    Define DEFAULT_PAGER as the initial value of the 'pager' variable.
  113.  *    nnadmin pipes shell command output though this command.
  114.  */
  115.  
  116. /* #define DEFAULT_PAGER        "pg -n -s"    /* system V */
  117. /* #define DEFAULT_PAGER    "more"            /* bsd */
  118. #define DEFAULT_PAGER           "less" 
  119.  
  120. /*
  121.  *    DEFAULT_PRINTER is the initial value of the 'printer' variable.
  122.  *    nn's :print command pipes text into this command.
  123.  */
  124.  
  125. /* #define DEFAULT_PRINTER        "lp -s"        /* System V */
  126. #define DEFAULT_PRINTER    "lpr -p -JNEWS"    /* bsd */
  127.  
  128. /*
  129.  *     Define RESIZING to make nn understand dynamic window-resizing.
  130.  *     (It uses the TIOCGWINSZ ioctl found on most 4.3BSD systems)
  131.  */
  132.  
  133. #define RESIZING        /* */
  134.  
  135.  
  136. /********************** MACHINE DEPENDENT DEFINITIONS **********************
  137.  *
  138.  *    Include the appropriate m- file for your system below.
  139.  *
  140.  *    If a file does not exist for your system, you can use
  141.  *    conf/m-template.h as a starting point for writing you own.
  142.  */
  143.  
  144.  
  145. #include "m-sun386i.h"
  146.  
  147. /***************************** OWNERSHIP ***************************
  148.  *
  149.  *    Specify owner and group for installed files and programs.
  150.  *
  151.  *    The nnmaster will run suid/sgid to this owner and group.
  152.  *
  153.  *    The only requirements are that the ownership allows the
  154.  *    nnmaster to READ the news related files and directories, and
  155.  *    the ordinary users to read the database and execute the nn*
  156.  *    programs.
  157.  *
  158.  *    Common choices are:  (news, news)  and   (your uid, your gid)
  159.  */
  160.  
  161. #define OWNER    "news"
  162. #define    GROUP    "news"
  163.  
  164.  
  165. /**************************** LOCALIZATION ****************************
  166.  *
  167.  *    Specify where programs and files are installed.
  168.  *
  169.  *    BIN_DIRECTORY    - the location of the user programs (mandatory)
  170.  *
  171.  *    LIB_DIRECTORY     - the location of auxiliary programs and files.
  172.  *               (mandatory UNLESS ALL of the following are defined).
  173.  *
  174.  *    MASTER_DIRECTORY - the location of the master program (on server)
  175.  *               (= LIB_DIRECTORY if undefined)
  176.  *
  177.  *    CLIENT_DIRECTORY - the location of auxiliary programs (on clients)
  178.  *               (= LIB_DIRECTORY if undefined)
  179.  *
  180.  *    HELP_DIRECTORY   - the location of help files, online manual, etc.
  181.  *               (= CLIENT_DIRECTORY/help if undefined)
  182.  *
  183.  *    CACHE_DIRECTORY     - if NNTP is used, nn uses this central directory
  184.  *               to store working copies of articles on the local
  185.  *               system.  If not defined, it stores the articles
  186.  *               in each user's ~/.nn directory.
  187.  *
  188.  *    TMP_DIRECTORY    - temporary file storage.  Overriden by $TMPDIR.
  189.  *               (= /usr/tmp if undefined).
  190.  *
  191.  *    LOG_FILE         - the location of nn's log file.
  192.  *               (= LIB_DIRECTORY/Log if undefined).
  193.  */
  194.  
  195. #define BIN_DIRECTORY    "/usr/bin"
  196. #define LIB_DIRECTORY    "/usr/lib/nn"
  197.  
  198.  
  199. /**************************** DATABASE LOCATION **************************
  200.  *
  201.  *    Specify where the nn database should be installed.
  202.  *
  203.  *    If none of the following symbols are defined, the database will
  204.  *    be contained in the NEWS_DIRECTORY in a separate .nn directory for
  205.  *    master files and in files named .nnx and .nnd in each group's
  206.  *    spool directory.  To use this scheme, the OWNER specified above
  207.  *    must have write permission on the news spool directories.
  208.  *
  209.  *    If you access news via NNTP, you will probably always have to
  210.  *    give the database directory explicitly through DB_DIRECTORY
  211.  *    (and DB_DATA_DIRECTORY), since the normal news spool directories 
  212.  *    are probably not available on the local system.
  213.  *    The exception may be if nnmaster runs directly on the nntp server.
  214.  *
  215.  *    To change the default behaviour, you can define the following
  216.  *    symbols:
  217.  *
  218.  *    DB_DIRECTORY       - the directory containing the master files.
  219.  *
  220.  *    DB_DATA_DIRECTORY  - the directory containing the per-group files
  221.  *                 (default is DB_DIRECTORY/DATA if undefined).
  222.  *
  223.  *    DB_LONG_NAMES       - use group's name rather than number when
  224.  *                 building file names in DB_DATA_DIRECTORY.
  225.  *         (The file system must support long file names!!)
  226.  */
  227.  
  228. #define DB_DIRECTORY    "/var/spool/nn"
  229.  
  230.  
  231. /*************************** NEWS TRANSPORT **************************
  232.  *
  233.  *    Specify the location of your news programs and files
  234.  *    You only need to specify these if you are not
  235.  *    satisfied with the default settings.
  236.  *
  237.  *    NEWS_DIRECTORY         - The news spool directory.
  238.  *                  Default: /usr/spool/news
  239.  *
  240.  *    NEWS_LIB_DIRECTORY    - The news lib directory.
  241.  *                  Default: /usr/lib/news
  242.  *
  243.  *    INEWS_PATH        - The location of the inews program.
  244.  *                  Default: NEWS_LIB_DIR/inews
  245.  *
  246.  *    RMGROUP_PATH        - The location of the rmgroup program.
  247.  *                  Default: NEWS_LIB_DIR/{rm,del}group
  248.  */
  249.  
  250. #define NEWS_DIRECTORY        "/var/spool/news"    /* */
  251. #define NEWS_LIB_DIRECTORY    "/var/lib/news"        /* */
  252. #def