Files
mars-nwe/opt/nw.ini.hook.cmake
Mario Fetka 10d092bf71 config: add initial salvage settings
Prepare nwserv.conf/nw.ini template support for the upcoming NetWare salvage backend.

Add configuration entries for enabling salvage support and for selecting the recycle/salvage repository names. The default layout keeps deleted file payloads below .recycle and stores JSON metadata below .salvage.

This does not implement salvage handling yet. AFP 0x13 and the NCP salvage functions remain unsupported until the nwsalvage backend exists.
2026-05-31 11:16:44 +02:00

1268 lines
50 KiB
CMake

#
# This is the configuration-file for "mars_nwe", a free netware-emulator
# for Linux.
#
# last changed: 01-Sep-00
# new volume flag 'x' for unix access rights (Przemyslaw Czerpak) 0.99.pl20
# comment out second printer and printserver entry in 0.99.pl20
# debug log section changed some values to '1' in 0.99.pl20
#
# !! section 31 : flags added in 0.99.pl18, but not used
# !! section 8 : new flags added in 0.99.pl18 !!
# !! section 9 : default directory/file umask changed in 0.99.pl9 !!
# !! section 46 : default attrib location changed in 0.99.pl9 !!
# !! section 5 : deleting of ipx devices/routes changed in 0.99.pl6 !!
# !! section 4 : automatic creation of ipx-interfaces changed in 0.98.pl9 !!
#
# since version 0.98.pl11:
# the most important options in config.h can now be altered in
# this file begin at section 60.
#
# Most configuration errors depend on section 4.
# !! Please read section 4 very carefully. !!
#
# This file specifies which Linux-resources (printers, users, directories)
# should be accessible to the DOS-clients via "mars_nwe". Furthermore
# some general parameters are configured here.
# Some options of "mars_nwe" can only be altered by editing the the file
# `config.h' and re-compiling "mars_nwe", please see there for more
# information.
# -------------------------------------------------------------------------
# SMArT / configuration editor markers
#
# This file may contain marker comments of the form:
#
# # >>> SMARTHOOK SECTION N BEGIN
# # >>> SMARTHOOK SECTION N ACTIVE BEGIN
# # <<< SMARTHOOK SECTION N ACTIVE END
# # <<< SMARTHOOK SECTION N END
#
# These markers define stable update regions for the SMArT web interface.
# They allow the editor to replace the active configuration lines of a
# section without stripping the explanatory comments and blank lines around
# that section.
#
# The marker lines are plain comments and are ignored by mars_nwe itself.
#
# If you edit this file manually, you may change the configuration entries
# inside a marked section as usual, but the marker lines should remain in
# place if you want SMArT to update the file cleanly later.
# -------------------------------------------------------------------------
# Syntax of this config-file:
# - everything after a "#" is treated as a comment (particularly
# it does never belong to the values themselves)
# - entries _must_ begin with a number, indicating the section
# they belong to
# - hexadecimal values are prepended by "0x"
#
# All examples are verbatim.
#
# The term "DOS-client" does not refer to the special operating-system
# "DOS" in _this_ file. "DOS-client" is only a synomym for all possible
# ipx-clients (it's choosen for the people who are confused by the
# meaning of "client" and "server").
# The "Linux-side" of the game is always the "mars_nwe"-server.
# =========================================================================
# >>> SMARTHOOK SECTION 1 BEGIN
# Section 1: volumes (required)
#
# In this section you list all Linux-directories accessible via "mars_nwe".
#
# To be more precise: a mapping from Linux-directories to mars_nwe-volumes
# is done. (Volumes are the beasts you can map to drive letters under DOS
# using "map.exe").
#
# Linux-directory mars_nwe-volume map.exe DOS-Drive
# /var/local/nwe/SYS -------> SYS -------------> W:
#
# More than one entry is allowed in this section.
# The maximum number of volumes must be specified in `config.h'
# or in section 61 in this file.
#
# Please note that at least the volume "SYS" must be defined and it must
# contain the following sub-directories: LOGIN, PUBLIC, SYSTEM, MAIL.
# See the installation-instructions in the doc-directory for more infos
# and the info to section 16 (tests on startup) in this file.
#
# !! NOTE !!
# First defined volume should always named 'SYS'.
#
#
# -------------------------------------------------------------------------
# Syntax:
# 1 VOLUMENAME DIRECTORY [OPTIONS] [UMASKDIR UMASKFILE]
#
# VOLUMENAME: the name of the mars_nwe-volume (max. 8 characters)
# DIRECTORY: the directory on your Linux-system associated with that
# volume; use the special name "~" to refer to the users
# individual home-directory.
# A directory entry like "~/tmp" also work since 0.99.pl3.
#
# If the netadmin wants to map the homedirectories with the MAP-Command to
# every user, he can do it in two variants:
# We suppose that the user test2 is logged in MARS_NWE. He has files
# earlier stored in his homedirectory /home/test2.
# In case of entry 1 in /etc/nwserv.conf (naturally amongst other entries)
# there are other results of the MAP-command.
#
# Variant 1 Variant 2
#
#DOS-Command MAP H:=MARS\HOMEDIR: MAP H:=MARS\HOMEDIR:
#
#Entry in /etc/nwserv.conf
# 1 HOMEDIR ~ k 1 HOMEDIR /home k
#
#Result of DIR *.* All files stored in All homedirs of the
# /home/test2 will shown. users will shown.
# Showing his own files
# it is a command like
# CD test2 and then
# dir *.* necessary.
#
# OPTIONS: none or some of the following characters (without a seperator)
# - Placeholder.
#
# Next two options control DOS and OS/2 namespace.
# i ignore case, handle mixing upper/lowercase filenames (slow)
# should only be used if you really need it.
# k use lowercase-filenames (if you don't set this,
# and you don't set 'i' all files _must_ be upper-case)
#
# m removable volume (e.g. cd-roms) or volumes, which
# should be remountable when mars_nwe is running.
# n (n)o fixed inodes. This volume do not have fixed inodes.
# e.g. DOS-Volumes, CD-ROMS. This flag is very important for
# attrib and trustee handling.
# o (lowercase o)
# volume has only one filesystem/device/namespace
# this is for filesystems with high inode > 0xFFFFFFF.
# because for namespace services mars_nwe normally use the
# first 4 bit of 32 bit inode for distinguish
# between several devices/namespaces for one volume.
# p "PIPE"-filesystem. All files are pipe commands.
# See `doc/PIPE-FS'.
# r volume is read-only and always reports "0 byte free"
# (this is intended for copies of CD-ROMs on harddisks)
# t volume has trustees.
# Real access is trustee rights + unix rights.
# Trustees are stored in extra directories,
# normally under /var/nwserv/trustees.
# Must only be used for volume which have fix inodes.
# A volume with trustees should never be renamed.
# For some more notes see 'doc/TRUSTEES'.
# x use unix access rights (for use with ACL)
# T volume has trustees & ignore the rights granted in UN*X filesystem
# exactly like option "t" except that the unix rights are not added
#
# additional Namespaces
# O (uppercase o)
# + OS/2 namespace (useful for Win95 clients, see doc/FAQS).
# N + NFS namespace (not really tested).
#
#
# UMASKDIR: default directory creat umask.
# UMASKFILE: default file creat umask.
# values are always octal, they overwrite standard
# section 9 values for this specific volume.
#
# -------------------------------------------------------------------------
#
# Examples:
# 1 SYS /var/local/nwe/SYS kt 711 600
# 1 CDROM /cdrom kmnor
# 1 HOME ~ k -1
# 1 HOMETMP ~/tmp kiO
# 1 PRIVAT ~/privat kO 700 600
# 1 WORLD /var/world kiO 777 666
# 1 FAXQ /var/spool/fax/faxqueue k
# >>> SMARTHOOK SECTION 1 ACTIVE BEGIN
1 SYS @MARS_NWE_INSTALL_FULL_FILEDIR@/SYS/ kt 711 600
# <<< SMARTHOOK SECTION 1 ACTIVE END
# <<< SMARTHOOK SECTION 1 END
# =========================================================================
# >>> SMARTHOOK SECTION 2 BEGIN
# Section 2: servername (optional)
#
# The servername is the name under which this server will show up when
# using tools like "slist" (server-list).
#
# If you don't supply an entry for this section, the hostname of your
# Linux-machine will be converted to all-uppercase and used as the servername.
#
# -------------------------------------------------------------------------
# Syntax:
# 2 SERVERNAME
#
# SERVERNAME: a name for this nw-server
# -------------------------------------------------------------------------
#
# Example:
# 2 MARS # name of the server would be "MARS"
# >>> SMARTHOOK SECTION 2 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 2 ACTIVE END
# <<< SMARTHOOK SECTION 2 END
# =========================================================================
# >>> SMARTHOOK SECTION 3 BEGIN
# Section 3: Number of the internal network (required)
#
# If have dealt with the TCP/IP-configuration of your Linux-Box, the term
# "ip-address" may be familiar to you. It's a numer that uniquely
# identifies your machine in the internet.
# As you might already expect, even the IPX-people use a unique number to
# identify each other. Addresses in the IPX-world always consist of a
# 4-byte "network-number" plus a 6-byte "node-number" (remember the
# ip-addresses also use 4-bytes).
#
# The numbering-rule for ipx-clients is easy: their "address" is the
# external-network of the server they are connected to plus the
# hardware-address of their own ethernet-card (6 byte). As a result of this
# rule, the clients can determine their address automatically (by listening
# to the server and looking at their own ethernet-hardware) and no
# configuration-files on the clients-side have to be maintained. (It would
# really be a nasty thing if you think of very many DOS-clients [remember:
# DOS is an OS where ordinary users can screw up the configuration files].)
#
# For internal routing purposes, a netware-server has an "internal network"
#
# As there is no organisation which regulates the use of network-numbers
# in the IPX-world, you have to run "slist" (under DOS or Linux) to
# determine a number that isn't already used by another server on your
# net. You better double-check and ask the other network administrators
# before using a random value because not all servers might be on-line when
# you "listen" to the net.
#
# A reasonable choice for the internal net-number of your mars_nwe-server
# could be the ip-address of your Linux-Box. It is reasonable because
# ip-addresse are unique and if every nw-administrator uses only this uniqe
# value, potential conflicts will be minimized. Of course this choice is
# no guarantee and it only works if your Linux-Box IP is well configured.
#
# Please note that you have to specify the address of your "internal
# ipx-network" in hexadecimal format (the leading "0x" indicates it).
#
#
# -------------------------------------------------------------------------
# Syntax:
# 3 INTERNAL_NET [NODE]
#
# INTERNAL_NET: the hexadecimal value of your "internal ipx-network". Use
# "0x0" or "auto" to refer to your ip-addresse (it's a kind of
# automagically setup)
# NODE: use "1" if you don't know what this entry is for (optional)
# -------------------------------------------------------------------------
#
# Example:
# 3 auto 1 # 'automatic' setup, use ip-number as internal net
# >>> SMARTHOOK SECTION 3 ACTIVE BEGIN
3 auto
# <<< SMARTHOOK SECTION 3 ACTIVE END
# <<< SMARTHOOK SECTION 3 END
# =========================================================================
# >>> SMARTHOOK SECTION 4 BEGIN
# Section 4: IPX-devices (strongly recommended)
#
# This section contains information for the ipx-router built into mars_nwe
# and/or the external program "nwrouted".
# Both processes exchange the ipx-packets between your machine and the rest
# of the world (in other words: their functionallity is essential). Of
# course, to use one of both is already sufficient.
#
# Note for people with other IPX/NCP servers on the net:
# - choose the same frame-type as the other servers use
# - make sure your network-number is not already in use by another
# server (see the output of "slist" under Linux or DOS)
#
# Under Linux, it is possible to let the kernel creat all ipx-devices
# automatically for you. This is only possible (and only makes sense then)
# if there are other IPX/NCP servers on the same net which are setup
# correctly. It can be switched on in section '5'.
# -------------------------------------------------------------------------
# Syntax:
# 4 NET_NUMBER DEVICE FRAME [TICKS]
#
# NET_NUMBER: this number is determined by the router of the physical
# network you're attached to. Use "0x0" to use the entry
# for all network number match.
#
# DEVICE: the network-interface associated with the NET_NUMBER. Use
# a "*" (star) to use this entry for all devices match.
#
# FRAME: the frame-type of the data-packets on your local network.
# Possible values are:
#
# ethernet_ii :best for mixed(ipx, ip) environments
# 802.2 :Novell uses this as default since 3.12
# 802.3 :older frame typ, some boot proms use it
# snap :normally not used
# token :for token ring cards
# auto :automatic detection of the frame-type used
# in your ipx-environment
#
# TICKS: the time data-packets need to get delivered over a
# certain interface. If your connection goes through several
# routers, the shortest path can be determined by summing up
# all ticks for every route and compare the results.
# (1 tick = 1/18th second), default=1
# Note: If ticks > 6 then the internal router handles
# RIP/SAP specially. (RIP/SAP filtering)
#
# !! NOTE !!
# Automatic detection in this section means that ipx-interfaces which
# are created by other instances than the server/router,
# e.g. pppd, ipppd or ipx_interface, will be detected and inserted/removed
# in internal device/routing table at runtime.
#
# Automatic kernel creation of interfaces can be switched on in section 5.
# -------------------------------------------------------------------------
#
# Examples:
# 4 0x10 eth0 802.3 1 # setup ethernet with frame 802.3
# 4 0xa20 arc0 802.3 1 # standard arcnet (TRXNET)
#
# 4 0x0 * AUTO 1 # auto detection of all ipx-interfaces.
# 4 0x0 eth0 AUTO 1 # auto detection of eth0 frames.
# 4 0x0 eth0 802.2 1 # auto detection of eth0 frame 802.2.
#
# Note: If ticks > 6 then the internal router handles RIP/SAP specially.
# (RIP/SAP filtering)
# 4 0x0 isdn0 802.3 7 # auto isdn interface with ethernet encap.
# 4 0x0 ippp0 AUTO 7 # auto ippp0 (isdn ppp) interface.
# 4 0x0 ppp0 AUTO 7 # auto detection of ppp0 interface.
# >>> SMARTHOOK SECTION 4 ACTIVE BEGIN
4 0x22 eth0 ethernet_ii 1
4 0x0 * AUTO 1
# <<< SMARTHOOK SECTION 4 ACTIVE END
# <<< SMARTHOOK SECTION 4 END
# =========================================================================
# >>> SMARTHOOK SECTION 5 BEGIN
# Section 5: special device flags
# Flags
# 0x1 do not remove by nwserv/nwrouted added routes and ipx-devices
# beyond the lifetime of the server or router.
# If this flag is not set then all by nwserv/nwrouted added
# ipx-devices/routes will be deleted when
# nwserv/nwrouted ends and if no ipx socket is still
# open. (default).
#
# 0x2 Switch on automatic kernel creation of ipx-interfaces.
# The automatic kernel creating of ipx-devices sometimes
# make trouble (Win95). It should only be used in the
# beginning or for testing !!
#
# 0x4 do remove ALL routes and ipx-devices
# beyond the lifetime of the server or router.
# If this flag is set then all ipx-devices/routes
# will be deleted when nwserv/nwrouted ends,
# without looking for open ipx sockets.
# This was the default prior mars_nwe 0.99.pl6 !
# This also do complete ipx reinit when starting
# mars_nwe.
# This was the default prior mars_nwe 0.99.pl9 !
#
#
#
# other flags may follow.
# value will be interpreted as hex value.
# >>> SMARTHOOK SECTION 5 ACTIVE BEGIN
5 0x0
# <<< SMARTHOOK SECTION 5 ACTIVE END
# <<< SMARTHOOK SECTION 5 END
# =========================================================================
# >>> SMARTHOOK SECTION 6 BEGIN
# Section 6: version-"spoofing"
#
# Some clients work better if the server tells that it is a 3.11 Server,
# although many calls (namespace services) of a real 3.11 Server are
# missing yet.
# -------------------------------------------------------------------------
# Syntax:
# 6 SERVER_VERSION [FLAGS]
#
# SERVER_VERSION: the version-number reported to DOS-clients
# 0 Version 2.15 (was default till version 0.98.pl7)
# 1 Version 3.11 (is default now)
# 2 Version 3.12
#
# If you want to use longfilenamesupport and/or namespace routines
# you should set this section to '1' or '2'
# And you should read doc/FAQS.
#
# FLAGS: some flags
# &1 enable burst mode connections.
# If you want to test Burst mode this flag must be set.
# and in config.h you must set ENABLE_BURSTMODE to 1.
#
# other flags may follow.
# value will be interpreted as hex value.
# -------------------------------------------------------------------------
#
# >>> SMARTHOOK SECTION 6 ACTIVE BEGIN
6 1 0x0
# <<< SMARTHOOK SECTION 6 ACTIVE END
# <<< SMARTHOOK SECTION 6 END
# =========================================================================
# >>> SMARTHOOK SECTION 7 BEGIN
# Section 7: password handling of DOS-clients (required)
#
# When changing your "mars_nwe"-password from a DOS-client, this client
# (think of "LOGIN.EXE", "SYSCON.EXE" or "SETPASS.EXE") can encrypt your
# password before sending it to the "mars_nwe"-server (this improves
# security a little bit).
# In this section you can enforce encryption of user-passwords or allow
# not-encrypted sending of passwords over the net.
#
#
# On the Linux-side, passwords will only be stored in encrypted format.
#
#
# -------------------------------------------------------------------------
# Syntax:
# 7 Value
#
# Value:
# 0 enforce encryption of _all_ passwords by the DOS-client
# (default)
# 1 as "0", but allow the non-encrypted version of the
# "change password"-routine.
# 7 allow all non-encrypted stuff but no empty nwe passwords.
# 8 allow all non-encrypted stuff and also allow empty
# nwe-passwords.
# 9 use all non-encryted calls + "get crypt key" will always fail
# so the login program will use the old unencryted calls.
# this will *not* work with all clients !! (OS2/client)
# -------------------------------------------------------------------------
# >>> SMARTHOOK SECTION 7 ACTIVE BEGIN
7 0
# <<< SMARTHOOK SECTION 7 ACTIVE END
# <<< SMARTHOOK SECTION 7 END
# =========================================================================
# >>> SMARTHOOK SECTION 8 BEGIN
# Section 8: special login/logout/security and other flags.
# Flags
# 0x1 allow changing dir/accessing other files than login/*
# when not logged in, if the client supports it.
# ( this was standard till mars_nwe-0.98.pl4 )
#
# 0x2 switch on strange compatibility mode for opening files.
# If an opencall do an open for writing but
# the file is readonly then this call will not fail
# but open the file readonly.
#
# 0x4 allow the rename file call (NCP function 0x45)
# renaming of directories.
# normally the rename file call returns an error if this
# routine is used for renaming directories.
#
# 0x8 ignore station/time restrictions for supervisor.
#
# 0x10 allows deleting a file even if the file is opened by
# other process.
# ( this was standard before mars_nwe-0.99.pl0 )
#
# 0x20 store file base entries for later use.
# Normally only directory base entries are stored.
# necessary if using ncpfs as mars_nwe client.
#
# 0x40 limit's volume's free space info to 2 GB.
# in some volume info calls.
# some DOS clients need it.
#
# 0x80 allows renaming a file even if the file is opened by
# other process.
# ( this was standard before mars_nwe-0.99.pl18 )
#
# 0x100 not used yet.
#
# 0x200 needed for direct int17 printing on NETX clients
# (patch from Przemyslaw Czerpak)
#
# other flags may follow.
# value will be interpreted as hex value.
# >>> SMARTHOOK SECTION 8 ACTIVE BEGIN
8 0x0
# <<< SMARTHOOK SECTION 8 ACTIVE END
# <<< SMARTHOOK SECTION 8 END
# =========================================================================
# >>> SMARTHOOK SECTION 9 BEGIN
# Section 9: Standard creat mode for creating directories and files.
#
# mkdir mode (creat mode directories), creat mode files
# values are always interpreted as octal values !
# if 0 is specified the standard umask will be used.
# if -1 is specified for directories the st_mode of parent directory
# will be used.
# Volumes depended values can be set in section 1.
# 9 -1 0640
#
# >>> SMARTHOOK SECTION 9 ACTIVE BEGIN
9 0751 0640
# <<< SMARTHOOK SECTION 9 ACTIVE END
# <<< SMARTHOOK SECTION 9 END
# =========================================================================
# >>> SMARTHOOK SECTION 10 BEGIN
# Section 10: GID with minimal rights
#
# When loading the netware-drivers in the "autoexec.bat" of your
# DOS-client, you automatically "attach" to a netware-server.
# As a result, a new drive-letter is accessible under DOS, usally
# containing the programs "login.exe" and "slist.exe".
# Because you haven't logged in, nothing else of the netware-server
# will be visible to you. All actions requested from the DOS-client
# will be done with the following GID on the Linux-side in this
# case.
# To achieve some level of security, the user/group asscociated with
# the GID should only have _read_ rights on the files visible,
# _nothing_ else.
#
# On most Linux-systems, there is a user and group "nobody" defined in
# `/etc/passwd' and `/etc/group'. Use the number of that user/group
# for the following entries.
#
# -------------------------------------------------------------------------
# Syntax:
# 10 GID
#
# GID numeric number of the group
# -------------------------------------------------------------------------
#
# Example:
# 10 65534
# >>> SMARTHOOK SECTION 10 ACTIVE BEGIN
10 65534
# <<< SMARTHOOK SECTION 10 ACTIVE END
# <<< SMARTHOOK SECTION 10 END
# =========================================================================
# >>> SMARTHOOK SECTION 11 BEGIN
# Section 10: UID with minimal rights
#
# When loading the netware-drivers in the "autoexec.bat" of your
# DOS-client, you automatically "attach" to a netware-server.
# As a result, a new drive-letter is accessible under DOS, usally
# containing the programs "login.exe" and "slist.exe".
# Because you haven't logged in, nothing else of the netware-server
# will be visible to you. All actions requested from the DOS-client
# will be done with the following UID on the Linux-side in this
# case.
# To achieve some level of security, the user/group asscociated with
# the UID and GID should only have _read_ rights on the files visible,
# _nothing_ else.
#
# On most Linux-systems, there is a user and group "nobody" defined in
# `/etc/passwd' and `/etc/group'. Use the number of that user/group
# for the following entries.
#
# -------------------------------------------------------------------------
# Syntax:
# 11 UID
#
# UID numeric number of the user
# -------------------------------------------------------------------------
#
# Example:
# 11 65534
# >>> SMARTHOOK SECTION 11 ACTIVE BEGIN
11 65534
# <<< SMARTHOOK SECTION 11 ACTIVE END
# <<< SMARTHOOK SECTION 11 END
# =========================================================================
# >>> SMARTHOOK SECTION 12 BEGIN
# Section 12: supervisor-login (required)
#
# The "supervisor" of a nw-server is much like "root" on the Linux-side.
#
# Specify a Linux-user that should be mapped to the supervisor of this
# mars_nwe-server.
# To improve security, don't use "root" for this purpose but create a
# seperate administrative account (under Linux) called "nw-adm" or similar.
#
# The nw-user defined in this section will have the mars_nwe internal UID
# "1" (remember even under Linux "root" must have the special UID "0"), so
# it is not possible to define a supervisor in section 13 (the users
# defined there will get random UIDs).
# You _can_ define a user with name "SUPERVISOR" in section 13, but he
# won't really be the "local god" on the "mars_nwe"-server.
# And of course you _can_ define a supervisor with name "GOD" or "ROOT"
# in _this_ section, which would only break the traditional naming-scheme
# of the netware-world.
#
#
# -------------------------------------------------------------------------
# Syntax:
# 12 NW_LOGIN LINUX_LOGIN [PASSWORD]
#
# NW_LOGIN: the login-name for the "mars_nwe"-server (traditionally,
# this is "SUPERVISOR")
# LINUX_LOGIN: the account on the Linux-side associated with the NW_LOGIN
# PASSWORD: the password for the NW_LOGIN. It must be clear-text but
# will be encrypted and permanent stored in the
# bindery-files, so it (the password or the whole section, at
# your option) can be deleted after the first start of
# "nwserv".
#
# Make sure this file is not world-readable as long
# as the password stands here.
#
# If you leave this field blank when starting "mars_nwe" the
# first time, the supervisor-login will be completely
# disabled. In other words: there is no way to supply the
# supervisor with no password ("null-password").
# -------------------------------------------------------------------------
#
# Example:
# 12 SUPERVISOR nw-adm top-secret
# >>> SMARTHOOK SECTION 12 ACTIVE BEGIN
12 SUPERVISOR root
# <<< SMARTHOOK SECTION 12 ACTIVE END
# <<< SMARTHOOK SECTION 12 END
# =========================================================================
# >>> SMARTHOOK SECTION 13 BEGIN
# Section 13: user-logins (optional)
#
# You can provide mappings from the regular login-names of your Linux-Box
# to "mars_nwe"-logins here.
# Every "mars_nwe"-user _must_ have a login-name on the Linux side (even
# if he can't log in into the account associated with the login-name,
# because you locked it with a "*") in order to "own" files.
# If you specify a Linux-login that doesn't exist (one could think of a
# typo), the user will only have the minimal rights defined in
# sections 10/11.
#
# You may also map different mars_nwe user to the same unix user.
#
# See section 12 for a description of the syntax.
#
# Unlike in section 12, you can define users with no password.
# If you explizit want to set 'no password' here then use
# a '-' sign as password.
# -------------------------------------------------------------------------
# Syntax:
# 13 NW_LOGIN [LINUX_LOGIN] [PASSWORD] [FLAGS]
#
# FLAGS must be a hex value begin with 0x
# the only FLAG value in the moment is 0x1 for 'fixed passwords'
# which cannot be changed by user.
# Example:
# 13 MARTIN
# 13 MARTIN martin
# 13 DAREK martin
# 13 COMMON common gast 0x1 # no password change by user.
# 13 COMMON common 0x1 # syntax is allowed too.
# >>> SMARTHOOK SECTION 13 ACTIVE BEGIN
13 GUEST nobody - 0x1
# <<< SMARTHOOK SECTION 13 ACTIVE END
# <<< SMARTHOOK SECTION 13 END
# =========================================================================
# >>> SMARTHOOK SECTION 14 BEGIN
# Section 14: currently not used
# >>> SMARTHOOK SECTION 14 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 14 ACTIVE END
# <<< SMARTHOOK SECTION 14 END
# =========================================================================
# >>> SMARTHOOK SECTION 15 BEGIN
# Section 15: automatic mapping of logins (decision required)
#
# If you have a large number of accounts on your Linux-machine, you may
# want to map all Linux-logins automatically to "mars_nwe"-logins.
#
# At this stage this section is only a quick hack to make life a bit
# easier for the administrator.
#
# WARNING: as there is no algorithm to convert the encrypted
# "Linux-passwords" into the encrypted format used by the DOS-clients (and
# therefore "mars_nwe"), you have to supply a common password for all
# automatically mapped users. This is a big security concern and you
# should never make this common password public (and, of course you
# should choose a sufficient "secure" (read: difficult) password).
# Type the common password to grant access to the users login and the
# command "setpass" instead of telling the password to the user.
#
# Only those Linux-logins will handled automatically that don't have a
# "x" or "*" as their encrypted password.
#
#
# -------------------------------------------------------------------------
# Syntax:
# 15 FLAG DEFAULT_PASSWORD
#
# FLAG:
# 0 DON'T map the Linux-logins automatically to
# "mars_nwe"-logins (default)
# 1 YES, DO the automatic mapping and provide every login
# created this way with the common password given with
# "DEFAULT_PASSWORD"
# 99 re-read the logins from /etc/passwd and overwrite even the
# already existing logins from the bindery (this will also
# reset all the passwords to "DEFAULT_PASSWORD")
#
# DEFAULT_PASSWORD: the common password for all automatically created
# logins (only needed if FLAG is not "0"); everything about
# password in section 12 applies to this.
# -------------------------------------------------------------------------
# >>> SMARTHOOK SECTION 15 ACTIVE BEGIN
15 0 top-secret
# <<< SMARTHOOK SECTION 15 ACTIVE END
# <<< SMARTHOOK SECTION 15 END
# =========================================================================
# >>> SMARTHOOK SECTION 16 BEGIN
# Section 16: Tests on startup
#
# If you want some sanity checks at startup, set this flag to > 0.
# "mars_nwe" will try to create/change missing directories:
# SYS:LOGIN, SYS:MAIL, SYS:MAIL/XXX, SYS:PUBLIC, SYS:SYSTEM ...
# (with the "right" permissions, of course) if you enable this.
# should also be enabled when you use a new mars_nwe version.
# Disabling this test only spares little time when starting mars_nwe.
# some values:
# 1 few important tests.
# 2 also check/compress bindery.
# >>> SMARTHOOK SECTION 16 ACTIVE BEGIN
16 1
# <<< SMARTHOOK SECTION 16 ACTIVE END
# <<< SMARTHOOK SECTION 16 END
# =========================================================================
# >>> SMARTHOOK SECTION 17 BEGIN
# Section 17: some bindery / user related flags.
# Flags
# 0x1 give all user an empty! login script, if they do not
# already have one. Is interpreted by test routines
# which run if section 16 is set and nwserv starts
# or got a SIGHUP. ( nwserv -h )
#
# other flags may follow.
# value will be interpreted as hex value.
# >>> SMARTHOOK SECTION 17 ACTIVE BEGIN
17 0x0
# <<< SMARTHOOK SECTION 17 ACTIVE END
# <<< SMARTHOOK SECTION 17 END
# =========================================================================
# >>> SMARTHOOK SECTION 18 BEGIN
# Section 18: some queue handling related flags.
# Flags
# 0x1 always unset (disable) the print banner flag.
#
# other flags may follow.
# value will be interpreted as hex value.
# >>> SMARTHOOK SECTION 18 ACTIVE BEGIN
18 0x0
# <<< SMARTHOOK SECTION 18 ACTIVE END
# <<< SMARTHOOK SECTION 18 END
# =========================================================================
# >>> SMARTHOOK SECTION 19-20 BEGIN
# Section 19-20: currently not used
# >>> SMARTHOOK SECTION 19-20 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 19-20 ACTIVE END
# <<< SMARTHOOK SECTION 19-20 END
# =========================================================================
# >>> SMARTHOOK SECTION 21 BEGIN
# Section 21: print queues (optional)
#
# Which of the printers connected to your Linux-box should be accessible
# from the DOS-clients?
# Multiple entries are allowed.
#
# -------------------------------------------------------------------------
# Syntax:
# 21 QUEUE_NAME [QUEUE_DIR] [PRINT_COMMAND]
#
# QUEUE_NAME: the name of the print queue on client-side (to make it
# perfectly clear: _not_ the Linux-queue)
# QUEUE_DIR: spooling directory for the print-jobs.
# The name is the DOS (not Unix) name of this
# directory.
# It must be placed on the first defined volume.
# (standard name is SYS volume).
# Then it will be created at starttime of mars_nwe.
# It must exist before printing.
# (_not_ the spooling-directories of the Linux-lpd)
# NOTE !
# A '-' sign as QUEUE_DIR has special meaning of
# 'standard' queuedir name. ( SYS:\SYSTEM\queueid.QDR )
#
# PRINT_COMMAND: command used for serving the print-jobs under Linux
# (see "man lpr" and "man magicfilter" for details)
# if the '!' is last parameter of command then
# the queue-packet fields 'banner_user_name'
# and 'banner_file_name' will be added to the
# command as last parameters.
# NOTE !
# If a print command is not specified the job can/must be
# printed by any print server.
# (e.g. pserver (ncpfs utils) or external printserver)
#
# Examples:
# 21 LASER - lpr -Plaser
# 21 OCTOPUSS
# 21 FAXPRINT - /usr/bin/psfaxprn /var/spool/fax/faxqueue
# -------------------------------------------------------------------------
#21 LP_PS
# >>> SMARTHOOK SECTION 21 ACTIVE BEGIN
21 LP - lpr -
# <<< SMARTHOOK SECTION 21 ACTIVE END
# <<< SMARTHOOK SECTION 21 END
# =========================================================================
# >>> SMARTHOOK SECTION 22 BEGIN
# Section 22: print server entries (optional)
# adds printserver entries into bindery
# e.g. to enable printing with ncpfs pserver
# -------------------------------------------------------------------------
# Syntax:
# 22 PSERVER_NAME QUEUE_NAME [FLAGS]
#
# FLAGS:
# 1 Let PSERVER_NAME be a 'normal' user (type 1).
# Used for simple qserver which works under 'normal' user login.
#
# Examples:
# 22 PS1 OCTOPUSS
#22 PS_NWE LP_PS 1
# >>> SMARTHOOK SECTION 22 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 22 ACTIVE END
# <<< SMARTHOOK SECTION 22 END
# =========================================================================
# >>> SMARTHOOK SECTION 30 BEGIN
# Section 30: Burst mode values (optional)
#
# -------------------------------------------------------------------------
# Syntax:
# 30 MAX_BURST_READ_BUF MAX_BURST_WRITE_BUF
# default is 0x2000 0x2000
# Examples:
# 30 0x2000 0x2000
# >>> SMARTHOOK SECTION 30 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 30 ACTIVE END
# <<< SMARTHOOK SECTION 30 END
# =========================================================================
# >>> SMARTHOOK SECTION 31 BEGIN
# Section 31: not used yet
# Flags not used yet
#
# >>> SMARTHOOK SECTION 31 ACTIVE BEGIN
31 0x0
# <<< SMARTHOOK SECTION 31 ACTIVE END
# <<< SMARTHOOK SECTION 31 END
# =========================================================================
# >>> SMARTHOOK SECTION 40 BEGIN
# Section 40: Some pathes (optional)
#
# -------------------------------------------------------------------------
# 40 = path for vol/dev/inode->path cache, needed for client-32,namespace
# >>> SMARTHOOK SECTION 40 ACTIVE BEGIN
40 @MARS_NWE_INSTALL_FULL_SPOOLDIR@/.volcache
# <<< SMARTHOOK SECTION 40 ACTIVE END
# <<< SMARTHOOK SECTION 40 END
# =========================================================================
# >>> SMARTHOOK SECTION 41 BEGIN
# 41 = path for share/lock files
# >>> SMARTHOOK SECTION 41 ACTIVE BEGIN
41 @MARS_NWE_INSTALL_FULL_SPOOLDIR@/.locks
# <<< SMARTHOOK SECTION 41 ACTIVE END
# <<< SMARTHOOK SECTION 41 END
# =========================================================================
# >>> SMARTHOOK SECTION 42 BEGIN
# 42 = path for spool dir, e.g. internal print queue handling
# >>> SMARTHOOK SECTION 42 ACTIVE BEGIN
42 @MARS_NWE_INSTALL_FULL_SPOOLDIR@
# <<< SMARTHOOK SECTION 42 ACTIVE END
# <<< SMARTHOOK SECTION 42 END
# =========================================================================
# >>> SMARTHOOK SECTION 43-44 BEGIN
# 43-44 = not in use
# >>> SMARTHOOK SECTION 43-44 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 43-44 ACTIVE END
# <<< SMARTHOOK SECTION 43-44 END
# =========================================================================
# >>> SMARTHOOK SECTION 45 BEGIN
# 45 = path for bindery file's
# >>> SMARTHOOK SECTION 45 ACTIVE BEGIN
45 @MARS_NWE_DATA_DIR@/bindery
# <<< SMARTHOOK SECTION 45 ACTIVE END
# <<< SMARTHOOK SECTION 45 END
# =========================================================================
# >>> SMARTHOOK SECTION 46 BEGIN
# 46 = path for attribute handling
# >>> SMARTHOOK SECTION 46 ACTIVE BEGIN
46 @MARS_NWE_DATA_DIR@/attrib
# <<< SMARTHOOK SECTION 46 ACTIVE END
# <<< SMARTHOOK SECTION 46 END
# =========================================================================
# >>> SMARTHOOK SECTION 47 BEGIN
# 47 = path for trustee handling
# >>> SMARTHOOK SECTION 47 ACTIVE BEGIN
47 @MARS_NWE_DATA_DIR@/trustees
# <<< SMARTHOOK SECTION 47 ACTIVE END
# <<< SMARTHOOK SECTION 47 END
# =========================================================================
# >>> SMARTHOOK SECTION 48-49 BEGIN
# Section 48-49: Salvage / recycle support
#
# 48 = enable NetWare salvage support
# 0 = disabled
# 1 = enabled
#
# 49 = salvage/recycle repository names
# first value = recycle data repository
# second value = salvage metadata repository
#
# Deleted file payloads are moved below the recycle repository. Salvage
# metadata is stored separately as JSON below the salvage repository.
#
# Example layout for a deleted file:
# SYS/.recycle/SUPERVISOR/PUBLIC/PMDFLTS.INI
# SYS/.salvage/SUPERVISOR/PUBLIC/PMDFLTS.INI.json
#
# The initial defaults intentionally only prepare configuration for the later
# nwsalvage backend. AFP 0x13 and NCP salvage calls remain unsupported until
# backend handling exists.
# >>> SMARTHOOK SECTION 48-49 ACTIVE BEGIN
48 1
49 .recycle .salvage
# <<< SMARTHOOK SECTION 48-49 ACTIVE END
# <<< SMARTHOOK SECTION 48-49 END
# =========================================================================
# >>> SMARTHOOK SECTION 50 BEGIN
# Section 50: Conversion tables by Victor Khimenko <khim@mccme.ru>
# Tables for DOS->Unix names translation & upper/lowercase translations
# For more information see doc/README.NLS
# some examples files exist in the examples directory.
# Conversation file must include 4 tables a 256 byte.
# 0 = dos2unix
# 1 = unix2dos
# 2 = down2up 'dosname'
# 3 = up2down 'dosname'
# -------------------------------------------------------------------------
# Syntax:
# 50 Filename of conversation file.
#
# Examples:
# 50 @MARS_NWE_INSTALL_FULL_CONFDIR@/nwserv.cnv
# >>> SMARTHOOK SECTION 50 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 50 ACTIVE END
# <<< SMARTHOOK SECTION 50 END
# =========================================================================
# >>> SMARTHOOK SECTION 51-59 BEGIN
# 51-59 = not in use
# >>> SMARTHOOK SECTION 51-59 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 51-59 ACTIVE END
# <<< SMARTHOOK SECTION 51-59 END
# =========================================================================
# >>> SMARTHOOK SECTION 60 BEGIN
# Changing defaults from config.h
# more information in config.h
# 60 10 # MAX_CONNECTIONS
# >>> SMARTHOOK SECTION 60 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 60 ACTIVE END
# <<< SMARTHOOK SECTION 60 END
# =========================================================================
# >>> SMARTHOOK SECTION 61 BEGIN
# 61 10 # MAX_NW_VOLS
# >>> SMARTHOOK SECTION 61 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 61 ACTIVE END
# <<< SMARTHOOK SECTION 61 END
# =========================================================================
# >>> SMARTHOOK SECTION 62 BEGIN
# 62 = not in use
# >>> SMARTHOOK SECTION 62 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 62 ACTIVE END
# <<< SMARTHOOK SECTION 62 END
# =========================================================================
# >>> SMARTHOOK SECTION 63 BEGIN
# 63 50 # MAX_DIR_BASE_ENTRIES
# >>> SMARTHOOK SECTION 63 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 63 ACTIVE END
# <<< SMARTHOOK SECTION 63 END
# =========================================================================
# >>> SMARTHOOK SECTION 64-67 BEGIN
# 64-67 = not in use
# >>> SMARTHOOK SECTION 64-67 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 64-67 ACTIVE END
# <<< SMARTHOOK SECTION 64-67 END
# =========================================================================
# >>> SMARTHOOK SECTION 68 BEGIN
# 68 1 # USE_MMAP (use mmap=1, no mmap=0)
# >>> SMARTHOOK SECTION 68 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 68 ACTIVE END
# <<< SMARTHOOK SECTION 68 END
# =========================================================================
# >>> SMARTHOOK SECTION 69 BEGIN
# 69 1 # HANDLE_ALL_SAP_TYPS (all sap typs=1, only typ 4=0)
# >>> SMARTHOOK SECTION 69 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 69 ACTIVE END
# <<< SMARTHOOK SECTION 69 END
# =========================================================================
# >>> SMARTHOOK SECTION 70 BEGIN
# 70 0x44444444 # NETWORK_SERIAL_NMBR (4 byte)
# >>> SMARTHOOK SECTION 70 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 70 ACTIVE END
# <<< SMARTHOOK SECTION 70 END
# =========================================================================
# >>> SMARTHOOK SECTION 71 BEGIN
# 71 0x2222 # NETWORK_APPL_NMBR (2 byte)
# >>> SMARTHOOK SECTION 71 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 71 ACTIVE END
# <<< SMARTHOOK SECTION 71 END
# =========================================================================
# --------------------------------------------------------
# You usally don't want to change anything below this line
# --------------------------------------------------------
# =========================================================================
# >>> SMARTHOOK SECTION 80 BEGIN
# Sections 80-99: some more constants
# 80 50 # max_dir_search_handles (namspace.c)
# >>> SMARTHOOK SECTION 80 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 80 ACTIVE END
# <<< SMARTHOOK SECTION 80 END
# =========================================================================
# >>> SMARTHOOK SECTION 81-99 BEGIN
# 81-99 = not in use
# >>> SMARTHOOK SECTION 81-99 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 81-99 ACTIVE END
# <<< SMARTHOOK SECTION 81-99 END
# =========================================================================
# >>> SMARTHOOK SECTION 100-106 BEGIN
# Sections 100-106: amount of debug-information
#
# FLAG:
# 0 no debug messages
# 1 errors and notes are reported
# 99 maximum debug levels
#
#100 0 # debug IPX KERNEL (0 | 1)
#101 1 # debug NWSERV
#102 1 # debug NCPSERV
#103 1 # debug NWCONN
#104 0 # debug (start) NWCLIENT, should *always* be '0' !
#105 1 # debug NWBIND
#106 1 # debug NWROUTED
# >>> SMARTHOOK SECTION 100-106 ACTIVE BEGIN
100 0
101 1
102 1
103 1
104 0
105 1
106 1
# <<< SMARTHOOK SECTION 100-106 ACTIVE END
# <<< SMARTHOOK SECTION 100-106 END
# =========================================================================
# >>> SMARTHOOK SECTION 107-199 BEGIN
# 107-199 = not in use
# >>> SMARTHOOK SECTION 107-199 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 107-199 ACTIVE END
# <<< SMARTHOOK SECTION 107-199 END
# =========================================================================
# >>> SMARTHOOK SECTION 200-202 BEGIN
# Sections 200-202: logging of "nwserv"
#
#200 1 # 0 = no logfile and dont daemonize nwserv/nwrouted
# # 1 = daemonize nwserv/nwrouted and use logfile
#201 @MARS_NWE_LOG_DIR@/nw.log # filename of logfile
#201 syslog # if filename == syslog then syslogd will be used for
# # all messages
#
#202 0x1 # flag in hex notation
# # 0x0=append all messages to logfile.
# # & 0x1=creat new logfile instead of appending.
#202 0x3 # & 0x2=use syslogd for error messages instead of logfile.
# >>> SMARTHOOK SECTION 200-202 ACTIVE BEGIN
200 1
201 @MARS_NWE_LOG_DIR@/nw.log
202 0x1
# <<< SMARTHOOK SECTION 200-202 ACTIVE END
# <<< SMARTHOOK SECTION 200-202 END
# =========================================================================
# >>> SMARTHOOK SECTION 203-209 BEGIN
# 203-209 = not in use
# >>> SMARTHOOK SECTION 203-209 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 203-209 ACTIVE END
# <<< SMARTHOOK SECTION 203-209 END
# =========================================================================
# >>> SMARTHOOK SECTION 210-211 BEGIN
# Sections 210-211: timing
#210 10 # 1 .. 600 (default 10) seconds after server
# # really goes down after a down command
#211 60 # 10 .. 600 (default 60) broadcasts every x seconds
# >>> SMARTHOOK SECTION 210-211 ACTIVE BEGIN
210 10
211 60
# <<< SMARTHOOK SECTION 210-211 ACTIVE END
# <<< SMARTHOOK SECTION 210-211 END
# =========================================================================
# >>> SMARTHOOK SECTION 212-299 BEGIN
# 212-299 = not in use
# >>> SMARTHOOK SECTION 212-299 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 212-299 ACTIVE END
# <<< SMARTHOOK SECTION 212-299 END
# =========================================================================
# >>> SMARTHOOK SECTION 300-302 BEGIN
# Sections 300-302: loging of routing-information
#300 1 # > 0 print routing info to file every x broadcasts.
# # ( normally minutes )
#301 @MARS_NWE_LOG_DIR@/nw.routes # filename of logfile
#
#302 0x1 # flags will be interpreted as hex value.
# # 0 = append to this file
# # & 0x1 = creat new routing info file
# # & 0x2 = split info into several files
# # (extensions = .1, .2, .3 ... )
# >>> SMARTHOOK SECTION 300-302 ACTIVE BEGIN
300 1
301 @MARS_NWE_LOG_DIR@/nw.routes
302 0x1
# <<< SMARTHOOK SECTION 300-302 ACTIVE END
# <<< SMARTHOOK SECTION 300-302 END
# =========================================================================
# >>> SMARTHOOK SECTION 303-309 BEGIN
# 303-309 = not in use
# >>> SMARTHOOK SECTION 303-309 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 303-309 ACTIVE END
# <<< SMARTHOOK SECTION 303-309 END
# =========================================================================
# >>> SMARTHOOK SECTION 310 BEGIN
# Section 310: watchdogs
#310 7 # send wdog's only to device net < x ticks.
# # 0 = always send wdogs. < 0 = never send wdogs
# >>> SMARTHOOK SECTION 310 ACTIVE BEGIN
310 7
# <<< SMARTHOOK SECTION 310 ACTIVE END
# <<< SMARTHOOK SECTION 310 END
# =========================================================================
# >>> SMARTHOOK SECTION 311-399 BEGIN
# 311-399 = not in use
# >>> SMARTHOOK SECTION 311-399 ACTIVE BEGIN
# <<< SMARTHOOK SECTION 311-399 ACTIVE END
# <<< SMARTHOOK SECTION 311-399 END
# =========================================================================
# >>> SMARTHOOK SECTION 400 BEGIN
# Section 400:
# station file for special handling of stations.
#400 @MARS_NWE_INSTALL_FULL_CONFDIR@/nwserv.stations # for syntax see file in the examples directory.
# >>> SMARTHOOK SECTION 400 ACTIVE BEGIN
400 @MARS_NWE_INSTALL_FULL_CONFDIR@/nwserv.stations
# <<< SMARTHOOK SECTION 400 ACTIVE END
# <<< SMARTHOOK SECTION 400 END
# =========================================================================
# >>> SMARTHOOK SECTION 401 BEGIN
# Section 401: nearest server
#
# for special handling of the 'get nearest server request'.
#401 0 # 0 = ignore entry 400, get nearest response always enabled.
# # 1 = 400 are excludes, get nearest response normally enabled.
# # 2 = 400 are includes, get nearest response normally disabled.
# >>> SMARTHOOK SECTION 401 ACTIVE BEGIN
401 0
# <<< SMARTHOOK SECTION 401 ACTIVE END
# <<< SMARTHOOK SECTION 401 END
# =========================================================================
# >>> SMARTHOOK SECTION 402 BEGIN
# Section 402: station connect restrictions
#
# for special handling of the 'creat connection' (attach) call.
#402 0 # 0 = ignore entry 400, create connection always enabled.
# # 1 = 400 are excludes, create connection normally enabled.
# # 2 = 400 are includes, create connection normally disabled.
# >>> SMARTHOOK SECTION 402 ACTIVE BEGIN
402 0
# <<< SMARTHOOK SECTION 402 ACTIVE END
# <<< SMARTHOOK SECTION 402 END