DataMuseum.dk

Presents historical artifacts from the history of:

DKUUG/EUUG Conference tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about DKUUG/EUUG Conference tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download
Index: ┃ T s

⟦7fc187d30⟧ TextFile

    Length: 10026 (0x272a)
    Types: TextFile
    Names: »sysdep.h«

Derivation

└─⟦a0efdde77⟧ Bits:30001252 EUUGD11 Tape, 1987 Spring Conference Helsinki
    └─ ⟦this⟧ »EUUGD11/euug-87hel/sec8/mcp/src/sysdep.h« 

TextFile

/****************************************************************************\
* 									     *
* 	sysdep.h							     *
* 									     *
* This file contains all the system dependent #define's.  In certain places  *
* you may configure mcp to your liking by commenting out certain	     *
* definitions.								     *
* 									     *
\****************************************************************************/

/*
 * Define BSD4_3 if this is a 4.3 BSD system.  Currently all this entails
 * is that mcp must use mkpasswd(8) to create the .dir and .pag passwd
 * database files.
 */
#define BSD4_3

/*
 * If this is 4.3 BSD system then DBMPASSWORD must point to the mkpaswd(8)
 * command.
 */
#ifdef BSD4_3
#define DBMPASSWORD	"/etc/mkpasswd"
#endif

/*
 * DEF_VISUAL and DEF_EDITOR should define two different editors.
 * For dumb terminals 
 *     If getenv("EDITOR") returns NULL, DEF_EDITOR will be used when editing
 *     a class or sig description.
 * For smart terminals
 *     If getenv("VISUAL") returns NULL, DEF_VISUAL will be used when
 *     a class or sig description.
 * Smart terminals are anything but "dumb", "network", and "dialup"
 */
#define	DEF_VISUAL	"/usr/new/jove"
#define	DEF_EDITOR	"/bin/ed"

/*
 * If for some ghastly reason TERM isn't defined, mcp will assume this.
 */
#define	DEF_TERM	"dumb"

/*
 * Disabling a user means changing his shell to be whatever DISABLED_SH
 * is defined to be.  An example disabled shell is in ../misc/sorry
 */
#define	DISABLED_SH	"/usr/misc/sorry"

/*
 * Freezing a user means changing his shell to be whatever FREEZE_SH
 * is defined to be.  An example shell for a frozen user is in
 * ../misc/freeze
 */
#define	FREEZE_SH	"/usr/misc/freeze"

/*
 * If defined HELPDIR should tell where the help files used in
 * describe-command wiil be installed.  If HELPDIR is not defined,
 * the help facilities will not be compiled in.
 */
#define HELPDIR		"/usr/mcphelp"

/*
 * DEF_PAGER is used to display the help pages from describe-command
 * if the environmental variable PAGER is not defined.
 * DEF_PAGER should understand nroff underlining sequences.
 * No need to define this if HELPDIR isn't defined.
 */
#ifdef HELPDIR
#define	DEF_PAGER	"/usr/ucb/more"
#endif

/*
 * If DOFILES is defined mcp will create home directories for new users,
 * remove home directories, mail, and secretmail of deleted users.  Also
 * if a user's uid is changed all his file ownerships will reflect this.
 * Otherwise it will be up to the system administrator to do these tasks.
 * Mcp will remind the SA of his responsibilities if DOFILES is undefined.
 */
#define DOFILES

/*
 * Mcp assumes that all user directories are under USERDIR as a default.
 * If this is a Sun system, code will be compiled in so that at runtime
 * mcp will check to see if USERDIR is mounted on a directory on another
 * host (a fileserver).  If so mcp will by necessity use
 * remote commands to manipulate the home directories of users.
 */
#define	USERDIR		"/usr1"

/*
 * If SENDMAIL is defined mcp will update the aliases data file and use
 * "newaliases" command as necessary to build the actual aliases database.
 * This includes the usual removal of users form aliases as accounts
 * are deleted, etc.
 *
 */
#define SENDMAIL

/*
 * This is the standard mail spool directory.  When users are deleted,
 * so is their mail if DOFILES is defined.
 */
#define	MAILSPOOL	"/usr/spool/mail"
/*
 * This is the standard secretmail spool.   I doubt if anyone actually
 * uses xsend and xget anymore but you never know...
 */
#define	SMAILSPOOL	"/usr/spool/secretmail"

/*
 * Directory for mcp to create it's temporary edit files in.  When adding
 * or updating class and sig descriptions mcp will put the description in
 * a temp file in this directory and invoke and either DEF_EDITOR or
 * DEF_VISUAL on it.
 */
#define	TMPDIR		"/tmp"

/*
 * New passwords created in add-user will be encrypted with this salt.
 * This is a convenience so that accounts with unchanged passwords can be
 * easily spotted by scanning the password file for this salt.
 */
#define	CRYPT_SALT	"//"

/*
 * DEF_GROUP will be the group offered as a default in add-user, so this
 * generally should be defined to be the name of the group with the most
 * members.
 */
#define DEF_GROUP	"student"

/*
 * DESCSIZE determines the maximum size that class and sig descriptions
 * will be allowed to be (in characters).  512 has proven to be more than
 * enough here.  Usually we can barely claw together 100.
 */
#define DESCSIZE	512

/*
 * If defined mcp will checkpoint changes in the accounting files each
 * CKPTIME minutes.  If not defined no automatic checkpointing will
 * be done although checkpoint files will still be written if mcp encounters
 * an unexpected signal.
 */
#define	CKPTIME		5

/****************************************************************************\
* 									     *
* These define the locations of the accounting files.  Each accounting file  *
* (account, alias, class, group, passwd, range, sig, vig) also has a	     *
* #define for a backup file, a temporary file for storing intermediate	     *
* changes to the Accounts file, and a checkpoint file.  Mcp checkpoints any  *
* changes it has made in memory to the checkpoint file once every CKPTIME    *
* seconds.								     *
* 									     *
* Each temporary file (e.g. ACTMP) MUST be in the same filesystem as its     *
* respective accounting file because the save routines do a rename(2) call   *
* from the temp file to the accounting file.				     *
* 									     *
\****************************************************************************/

/*
 * the account file
 */
#define	ACFILE		"/usr/adm/accts/Accounts"
#define	ACBAK		"/usr/adm/accts/Accounts.bak"
#define	ACTMP		"/usr/adm/accts/Accounts.tmp"
#define	ACCKP		"/usr/adm/accts/Accounts.mcp"

/*
 * the class file
 */
#define	CSFILE		"/usr/adm/accts/Classes"
#define	CSBAK		"/usr/adm/accts/Classes.bak"
#define	CSTMP		"/usr/adm/accts/Classes.tmp"
#define	CSCKP		"/usr/adm/accts/Classes.mcp"

/*
 * the group file
 *
 * Note that since mcp uses getgrent(3) to read the
 * group file, changing the define here does no good in that respect.
 * However you can make mcp write out its version of the group file
 * anywhere you like by changing these, if you suspect mcp of mangling.
 */
#define	GRPFILE		"/etc/group"
#define	GRPBAK		"/etc/group.bak"
#define	GRPTMP		"/etc/group.tmp"
#define	GRPCKP		"/etc/group.mcp"

/*
 * the passwd file
 *
 * Note that since mcp uses getpwent(3) to read the
 * passwd file, changing the define here does no good in that respect.
 * However you can make mcp write out it's version of the passwd file
 * anywhere you like by changing these, if you suspect mcp of mangling.
 */
#define	PWDFILE		"/etc/passwd"
#define	PWDBAK		"/etc/passwd.bak"
#define	PWDTMP		"/etc/passwd.tmp"
#define	PWDCKP		"/etc/passwd.mcp"
#define	PWDLOCK		"/etc/ptmp"

/*
 * the range file
 */
#define	RANGEFILE	"/usr/adm/accts/Ranges"
#define	RANGEBAK	"/usr/adm/accts/Ranges.bak"
#define	RANGETMP	"/usr/adm/accts/Ranges.tmp"
#define	RANGECKP	"/usr/adm/accts/Ranges.mcp"

/*
 * the sig file
 */
#define	SIGFILE		"/usr/adm/accts/Sigs"
#define	SIGBAK		"/usr/adm/accts/Sigs.bak"
#define	SIGTMP		"/usr/adm/accts/Sigs.tmp"
#define	SIGCKP		"/usr/adm/accts/Sigs.mcp"

/*
 * the vig file
 */
#define	VIGFILE		"/usr/adm/accts/Vigs"
#define	VIGBAK		"/usr/adm/accts/Vigs.bak"
#define	VIGTMP		"/usr/adm/accts/Vigs.tmp"
#define	VIGCKP		"/usr/adm/accts/Vigs.mcp"

/*
 * These alias file definitions will be #ifdef'ed out if you have not
 * #define'd SENDMAIL above.  If you do plan to use mcp to manipulate the
 * sendmail aliases, check these definitions.  ALIASFILE *must* be the aliases
 * file that sendmail uses.
 */
#ifdef SENDMAIL
# define ALIASFILE	"/usr/lib/aliases"
# define ALIASBAK	"/usr/lib/aliases.bak"
# define ALIASTMP	"/usr/lib/aliases.tmp"
# define ALIASCKP	"/usr/lib/aliases.mcp"
# define ALBIND		"/usr/adm/accts/AliasBindings"
# define ALBINDBAK	"/usr/adm/accts/AliasBindings.bak"
# define ALBINDTMP	"/usr/adm/accts/AliasBindings.tmp"
# define ALBINDCKP	"/usr/adm/accts/AliasBindings.mcp"
/* path to the newaliases command to update the aliases database */
# define NEWALIASES	"/usr/ucb/newaliases"
#endif

/**************************\
* 			   *
* Other file definitions.  *
* 			   *
\**************************/

/*
 * Standard location for the lastlog, used by login(1) and finger(1).
 */
#define	LASTLOG		"/usr/adm/lastlog"


/*
 * Mcp gets the list of available shells from this file and builds a
 * completion list from it.  The file format is one shell per line
 * with the first line containing the shell that will be the default
 * in add-user.  For 4.3 BSD systems it is convenient to use /etc/shells,
 * since the passwd(1) command already uses this list.  Mcp will ignore the
 * comments in this file, for compatibility with /etc/shells on 4.3 BSD
 * systems.
 */
#define	SHELLFILE	"/etc/shells"

/****************************************************************************\
* 									     *
* These definitions are needed only if DOFILES is #define'd above.  For Sun  *
* systems, the pathnames for the executables should be correct for the	     *
* fileserver and all the clients.  The paths given will work if the	     *
* commands have not been moved from the locations in which they were	     *
* distributed.								     *
* 									     *
* Mcp uses these chiefly as remote commands on Sun systems.  FIND is used    *
* to change the onwership of user files in all cases involving more than     *
* one file.  Otherwise mcp will use the system primitives chmod(),	     *
* chown(), etc., instead of these commands.				     *
* 									     *
\****************************************************************************/

#ifdef DOFILES
#define MV	"/bin/mv"
#define RM	"/bin/rm"
#define MKDIR	"/bin/mkdir"
#define CHGRP	"/bin/chgrp"
#define CHOWN	"/etc/chown"
#define CHMOD	"/bin/chmod"
#define FIND	"/usr/bin/find"
#define NICE	"/bin/nice"
#endif