Newsgroups: comp.sources.unix
From: bbh@mtek.mtek.com (Bud Hovell)
Subject: v25i137: policy V2 - tools for providing interactive timeshare policies, Part01/03
Sender: unix-sources-moderator@pa.dec.com
Approved: vixie@pa.dec.com

Submitted-By: bbh@mtek.mtek.com (Bud Hovell)
Posting-Number: Volume 25, Issue 137
Archive-Name: policy/part01

Return-Path: oliveb!mtek!nosun.West.Sun.COM!bbh
Received: by cognition.pa.dec.com; id AA04514; Tue, 25 Feb 92 06:52:16 -0800
Received: by uucp-gw-1.pa.dec.com; id AA09026; Tue, 25 Feb 92 06:52:03 -0800
Received: by oliveb.ATC.OLIVETTI.COM (smail2.5)
	id AA08054; 25 Feb 92 06:51:33 PST (Tue)
Received: from Sun.COM (sun-barr) by sun.Eng.Sun.COM (4.1/SMI-4.1)
	id AA03200; Tue, 25 Feb 92 06:27:11 PST
Received: from nosun.West.Sun.COM by Sun.COM (4.1/SMI-4.1)
	id AA12963; Tue, 25 Feb 92 06:26:52 PST
Received: from mtek.UUCP by nosun.West.Sun.COM (4.1/SMI-4.1-900117)
	id AA00552; Tue, 25 Feb 92 06:26:45 PST
Received: by mtek.mtek.com (Smail2.5+apb/mje900117)
	id AA10483; Tue, 25 Feb 92 04:04:52 PST
Subject: Policy Package, part 1 of 3
To: vixie (Paul Vixie)
Date: Tue, 25 Feb 92 4:04:50 PST
Reply-To: policy@mtek.com
X-Mailer: ELM [version 2.4dev PL52]
Message-Id: <9202250404.AA10483@mtek.mtek.com>
From: bbh@mtek.mtek.com (Bud Hovell)


#! /bin/sh
# This is a shell archive.  Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file".  To overwrite existing
# files, type "sh file -c".  You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g..  If this archive is complete, you
# will see the following message at the end:
#		"End of archive 1 (of 3)."
# Contents:  INSTALL MANIFEST README man/1stlogin.8.T man/policy.1.T
#   scripts/1stlogin.sh scripts/policy.pl scripts/policy.sh text/ann
#   text/appr text/gen text/help text/logins text/news text/usenet
# Wrapped by policy@mtek.com on Tue Feb 18 20:42:36 1992
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
mkdir man misc scripts text
if test -f 'INSTALL' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'INSTALL'\"
else
echo shar: Extracting \"'INSTALL'\" \(5727 characters\)
sed "s/^X//" >'INSTALL' <<'END_OF_FILE'
X$Id: INSTALL,v 5.3.2.5 91/09/03 09:55:04 policy USENET $
X
X                  INSTALLATION OF THE POLICY PACKAGE
X
X*Disclaimer*
X
XThe provider of this package offers no warrantee that it is suitable for any
Xparticular purpose, nor will provider be held liable for any direct or con-
Xsequential damage arising from the use of this package, or from use of any
Xelement or combination of elements thereof, by anyone anywhere at any time.
XProvider does, however, warrant that no element of this package, including
Xany offered advice, has been given which provider knows to be harmful to any
Xother party, or property thereof.
X
X*Directory Contents*
X
XAll policy text examples are in the 'text' directory, executable templates
Xare in 'scripts', and the man pages are in 'man'. When created by the Make-
Xfile, the installable scripts and localized man pages will live in the main
Xdirectory, along with this file, README, Makefile.d, and your Makefile.
X
X(The directory 'misc' contains information which isn't related to the instal-
Xlation itself.)
X
X*Installation* 
X
XCopy Makefile.d to Makefile to get a file to customize for local use.
X
XYou will need to edit the variables in the Makefile to suit local preferences,
Xincluding which version (Bourne or Perl) of the 'policy' script you want to
Xuse.
X
XExecute "make" with no arguments to see a menu of primary options.
X
XThe 'dotext' argument installs everything, including putting the text files
Xinto the policy directory. The 'notext' argument will do everything except
Xinstall the text files.
X
XEach of these options builds a brand new set of executables and man pages
Xeach time, just in case you made intervening changes to the Makefile.
X
XOnce all's installed, then you have only to hand-edit the following small add-
Xition in order to get the '1stlogin' executable cranked up each time a new
Xuser logs in for the first time.  Which entry you use depends on whether you
Xare operating under bsd or sysv.......
X
XFOR GENERIC BSD (systems using '~/.login'):
X
XAdd something like this entry to the new user's initial '.login' file:
X
X   # Show the 1st login announcement.
X   set record="~/.policy_read"
X   if   ( ! -f $record ) then
X        set announcement="/usr/local/etc/1stlogin"
X        if   ( ! -f $announcement ) then
X             echo Subject: $announcement file missing! | mail root
X	else $announcement
X	endif
X   endif
X
XThis calls the '1stlogin' script from 'csh' to be executed under the Bourne
Xshell.
X
XFOR GENERIC SYSV (systems using '/etc/profile'):
X
XAdd something like this entry at some appropriate place in your '/etc/profile'
Xfile:
X
Xrecord="$HOME/.policy_read"
Xif   [ ! -f $record ]
Xthen announcement="/usr/local/etc/1stlogin"
X     if [ ! -x $announcement ]
X     then echo "Subject: $announcement file missing!" | mail root
X     else $announcement
X     fi
Xfi
X
XNow, or at any other time you are fooling around with '/etc/profile', you may
Xwant to make a temporary backup copy of /etc/profile, and - before you log
Xoff - FULLY TEST that the new profile is working after your changes. If you
Xdon't feel comfortable making these changes, then get help from someone who
Xdoes. Or, put this entry in each individual new user's .profile - an approach
Xsimilar to the one described above for bsd. Not as nice, but....
X
X*Bugs*
X
XWe have done what we could to ensure this package will install on just about
Xany ordinary flavor of un*x, but if any installation problem occurs, please
Xsend email to the address listed in the man page (BUGS section) so we can
Xhave a shot at fixing it. If you have patches (unidiff ok), send them.
X
X*Summary Listing*
X
XThat should do it. Here is what an example listing looks like of the relevant
Xfiles on our system:
X
X-r--r--r--   1 root  root    444 Mar 24 07:50 /usr/local/adm/Policy/appr
X-r--r--r--   1 root  root   1791 Mar 24 07:50 /usr/local/adm/Policy/ann
X-r--r--r--   1 root  root   4932 Mar 24 07:50 /usr/local/adm/Policy/gen
X-r--r--r--   1 root  root    802 Mar 24 07:50 /usr/local/adm/Policy/help
X-r--r--r--   1 root  root   2956 Mar 24 07:50 /usr/local/adm/Policy/logins
X-r--r--r--   1 root  root   3333 Mar 24 07:50 /usr/local/adm/Policy/news
X-rw-rw-rw-   1 root  root    822 Mar 24 07:52 /usr/local/adm/Policy/polmenu
X-r--r--r--   1 root  root   1549 Mar 24 07:50 /usr/local/adm/Policy/usenet
X-r-xr-xr-x   1 root  root   3385 Mar  1 18:49 /usr/local/bin/policy
X-r--r--r--   1 root  root   2797 Mar 28 14:14 /usr/local/etc/1stlogin
X-r--r--r--   1 root  root   1425 Apr  4 15:34 /usr/man/man1/policy.1.Z
X-r--r--r--   1 root  root   1425 Apr  4 15:34 /usr/man/man8/1stlogin.8.Z
X
X*Acknowledgements*
X
XI owe particular gratitude and credit to these folks for assistance in
Xthe ways of the bsd world, in particular, (only sysv mumbled here loc-
Xally, I confess)....
X
X    Andy Linton <Andy.Linton@comp.vuw.ac.nz> - who ported
X    'policy.sh' to the perl version 'policy.pl', lending another
X    endorsement to the adoption of perl as a standard unix tool.
X    He also made very nice mods to the Makefile and *.sh files to
X    handle 'sh' command differences between BSD and SYSV using
X    variable substitutions.
X
X    Bjorn Satdeva <bjorn@sysadmin.com> - whose considerable talent
X    and experience helped assure these scripts are properly called
X    under a variety of unixen, and who advised me on fixes for minor
X    unpleasantries I encountered while creating the Makefile. He also,
X    of course, contributed one of the three reprint articles provided.
X
X    Michael Sofka <mike@pubserv.com> - who helped test all this, and
X    provided useful suggestions along the way.
X
X....and to Rob Kolstad <kolstad@sun.com> - who certainly should bear
X    *some* of the blame for this. :-)[
X                               
XMy sincere thanks to them all.
X
Xbud@mtek.com
END_OF_FILE
if test 5727 -ne `wc -c <'INSTALL'`; then
    echo shar: \"'INSTALL'\" unpacked with wrong size!
fi
# end of 'INSTALL'
fi
if test -f 'MANIFEST' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'MANIFEST'\"
else
echo shar: Extracting \"'MANIFEST'\" \(1355 characters\)
sed "s/^X//" >'MANIFEST' <<'END_OF_FILE'
X   File Name		Archive #	Description
X-----------------------------------------------------------
X INSTALL                    1	How to
X MANIFEST                   1	Shipping list of files in $Revision: 5.3.2.5 $
X Makefile.d                 2	Distribution makefile
X README                     1	Information on use and administration
X man/1stlogin.8.T           1	Template to make localized '1stlogin.1' man page
X man/policy.1.T             1	Template to make localized 'policy.1' man page
X misc/Survey                2	Brief survey for your voluntary feedback
X misc/art.rt                3	Short reprint article on policy-definition
X misc/art.ur1               2	Same
X misc/art.ur2               3	Same
X scripts/1stlogin.sh        1	Executable: shell for new login users
X scripts/policy.pl          1	Executable: policy (perl script)
X scripts/policy.sh          1	Executable: policy (shell script)
X text/ann                   1	Example: new login announcement
X text/appr                  1	Example: approval by top management
X text/gen                   1	Example: general policy
X text/help                  1	Example: help file for 'policy' menu
X text/logins                1	Example: specific user responsibilities
X text/news                  1	Example: local policy on usenet news
X text/usenet                1	Example: local policy on usenet connections
END_OF_FILE
if test 1355 -ne `wc -c <'MANIFEST'`; then
    echo shar: \"'MANIFEST'\" unpacked with wrong size!
fi
# end of 'MANIFEST'
fi
if test -f 'README' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'README'\"
else
echo shar: Extracting \"'README'\" \(5164 characters\)
sed "s/^X//" >'README' <<'END_OF_FILE'
X$Id: README,v 5.3.2.5 91/09/03 09:55:14 policy USENET $
X
X                           POLICY PACKAGE
X
XThis kit contains basic tools for providing interactive policy administration
Xin a unix environment. Two executable scripts are provided: '1stlogin', and
X'policy'. (See the 'INSTALL' document for installation instructions.)
X
XBefore you proceed, please consult the enclosed 'man' page templates (in the
Xdirectory 'man') for basic information about the operation of these scripts,
Xwhich are the core of this work.
X
X*** "Policies" or "Problems"? ***
X
XMany of the professional and technical persons I have known in the past 20
Xyears simply detested dealing with "people-problems" - all the inevitable
Xconflicts and personal frictions which exist in every human society. They
Xwere frequently gratified to find such thorny issues can often be dealt
Xwith through adoption of formal, outcome-oriented policies, and that what
Xappeared to be "people-problems" often proved to be only "policy problems".
XThe text examples enclosed may provide useful hints in how to develop your
Xown local policies.
X
XIn particular....
X
XThe 'gen' (general policy) text file is our basic, fundamental set of rules
Xregarding system usage.  All other policy files are subordinate to it, and
Xprovide only elaborating detail. It contains provisions based on what we
Xconsider to be common sense, ordinary courtesy, and/or practical necessity
Xin a sane computing environment. It also has some protections built in to
Xhelp defend users from covert or informal policies being created (or existing
Xones altered) because of someone's personal whim or hidden agenda.
X
XThe text file 'help' is the help file for the policy menu, and it advises
Xhow the login user can recognize the hierarchy of files and thus know which
Xto review, and in what order.
X
XThe text file 'appr' is an example of a notice of approval of current policies.
XThis makes it clear where the authority is really coming from for the estab-
Xlished policies - and thus tends to fend off any petty quibbling.
X
XThree other text files, 'logins', 'news', and 'usenet' are provided merely as
Xadditional examples based on our own local rules.
X
XThe copyright notices attached to text files are an artifact of our practice
Xof giving binding notice to users about which files may not be externally
Xpublished - these you see here are all "freely distributable".
X
X
X*** Usage ***
X
XOnce everything is installed, then at the command line type in 'policy', and
Xyou should see something similar to this example display:
X
X
X             DIRECTORY OF LOCAL POLICY FOR HOST 'MTEK'
X
X             ann     - first announcement to new users
X             appr    - approval by top management (!)
X             back    - who makes backups and when
X             cont    - routine & emergency contacts
X             email   - email services and how to use them
X             gen     - general policy (!)
X             help    - how to use these files (!)
X             logins  - responsibilities of users (!)
X             news    - local guidelines on usenet news (!)
X             sec     - system security (!)
X             tree    - what the directory structure contains
X             usenet  - our world-wide connection (!)
X
X             .....or 'q'uit
X
X             To review a policy, type in subject: >
X
XTyping in the key word (say, "news") pages up that file for the user to
Xread, then dumps him back to the menu when he quits the file.
X
XWhen you have developed your own local policies, of course, these will
Xbe reflected on the menu, instead.
X
X*** Administration ***
X                         [ 1stlogin script ]
X
XAdministrators may want to make it a habit to save the mail notification
Xmessages recording first-logins into a permanent record for possible future
Xreference.  These will be your *only* iron-clad evidence of when and that
Xspecific users received formal notice, unless you are going to require a
Xsigned piece of paper (which some situations may demand).
X
X                          [ policy script ] 
X
XOnce set up, the script automatically updates the menu any time a text file
Xis added or updated.  NOTE: in those rare instances you may choose to
X*remove* a named text file, just manually touch the menu file back to an
Xancient date (e.g., "touch 0101000080 polmenu") and 'policy' will faithfully
Xrebuild a new menu of current entries when next invoked by any user.
X
XOther than keeping up with occasional revisions of written policy, that's
Xabout all there is to it.
X
X
X*** Miscellaneous ***
X
X'Survey':
XWe would appreciate having this feedback from you.  We now maintain an
Xongoing base of data about trends in policy administration and ask only
Xthat you contribute to that effort.  This form also gives us feedback on
Xwhether your installation of these tools went smoothly.  Even if you were
Xto decide not to use this package at all, we would like this feedback.
X
XArticle reprints:
XIncluded for anyone who may be interested, these present a number of
Xconsiderations for defining and installing an effective policy structure
Xin an organization. Your specific mileage may vary, of course, depending
Xon local political weather and terrain. :-)
X
Xbud@mtek.com
END_OF_FILE
if test 5164 -ne `wc -c <'README'`; then
    echo shar: \"'README'\" unpacked with wrong size!
fi
# end of 'README'
fi
if test -f 'man/1stlogin.8.T' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'man/1stlogin.8.T'\"
else
echo shar: Extracting \"'man/1stlogin.8.T'\" \(1969 characters\)
sed "s/^X//" >'man/1stlogin.8.T' <<'END_OF_FILE'
X.\" $Id: 1stlogin.8.T,v 5.3.2.5 91/09/03 09:54:41 policy USENET $
X.\"
X.\" Copyright (c) 1991 by Bergen B. Hovell, Jr.
X.\" You may not distribute or otherwise use this work for any profit-making
X.\" purpose without the express permission of the author, but this work is
X.\" otherwise freely distributable so long as this header remains attached.
X.\" _______________________________________________________________________
X.\"
X.TH 1STLOGIN 8 USENET "Policy Administration"
X.\"
X.SH "NAME"
X.B 1stlogin \fP-
Xdisplay initial policy announcement to new login user and send notification
Xto system administrator showing when announcement was made (or report that
Xit was not).
X.SH "SYNOPSIS"
X.B 1stlogin
X.SH "DESCRIPTION"
XThis command is automatically invoked during the login process at the beginning
Xof the user's first (only) login session. How this is discriminated is based
Xon whether a previously-created "record" file exists in the user's home
Xdirectory.
X.PP
XWhen the script executes, it creates this record before exiting.
X.PP
X(This created record contains a notice stating that the record is not to be
Xremoved \- and why \- in the hope that the user may bother to read it before
Xremoving it.) 
X.PP
XIf the script finds everything in order, it sends mail to the administrator
Xdocumenting when the first login session occurred and indicating that the
Xuser was duly notified. These records can then be saved for reference, if
Xfuture need arises.
X.PP
XIf the script fails, then mail is sent to notify the administrator that
Xrepair action is required and that a new login user has failed to be properly
Xnotified to read the restrictions on his use of local computer resources.
X.SH "OPTIONS"
XNone
X.SH "SEE ALSO"
Xpolicy(1)
X.SH "FILES"
XPATH_TO_1ST
X.br
XPATH_TO_ANN
X.br
XRECORD_FILE
X.br
X.SH "BUGS"
XIf the user removes the records file from his home directory, then the
Xscript will run again upon his next login.
X.PP
XBug reports to:
X.br
X<\fIpolicy@mtek.com\fP> or <\fImtek!policy\fP>
END_OF_FILE
if test 1969 -ne `wc -c <'man/1stlogin.8.T'`; then
    echo shar: \"'man/1stlogin.8.T'\" unpacked with wrong size!
fi
# end of 'man/1stlogin.8.T'
fi
if test -f 'man/policy.1.T' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'man/policy.1.T'\"
else
echo shar: Extracting \"'man/policy.1.T'\" \(1982 characters\)
sed "s/^X//" >'man/policy.1.T' <<'END_OF_FILE'
X.\" $Id: policy.1.T,v 5.3.2.5 91/09/03 09:55:58 policy USENET $
X.\"
X.\" Copyright (c) 1991 by Bergen B. Hovell, Jr. All Rights Reserved.
X.\" You may not distribute or otherwise use this work for any profit-making
X.\" purpose without the express permission of the author, but this work is
X.\" otherwise freely distributable so long as this header remains attached.
X.\" _______________________________________________________________________
X.\"
X.TH POLICY 1 USENET "Policy Administration"
X.\"
X.SH "NAME"
X.B policy \fP-
Xdisplay policies for login users of local computing resources.
X.SH "SYNOPSIS"
X.B policy
X.SH "DESCRIPTION"
XThis command causes a menu to be displayed to an ordinary user, from which
Xhe may select individual policy documents for review.
X.PP
XEach selection item consists of a key word, followed by a brief description
Xof the subject addressed in that document. When the user types in the key
Xword, the associated document is paged to his screen for review. When he
Xleaves the document, he is returned to the menu.
X.PP
XIf the item description is followed by the symbolic notation \fI(!)\fP,
Xthen that selection contains a formal policy requirement with which the user
Xis obliged to be fully acquainted, and with which he must fully comply.
X.PP
XAbsent such symbolic notation, a selection item contains merely topical
Xadvisory information approved for the user to rely upon if the need arises.
XAll such documents therefore lie outside of defined \fIpolicy\fP, since
Xthe user is not obliged to perform \- or not perform \- some specific or
Xgeneral behavior. Such advisory documents are co-located under the
X\fRpolicy\fP menu simply for user convenience.
X.PP
XA help file is provided, listed as the selection item \fIhelp\fP.
X.SH "OPTIONS"
XThere are no options at this time, though creeping featurism may overcome
Xthis deficiency in the future. 
X.SH "FILES"
XPATH_TO_POLEX
X.br
XPATH_TO_POLDIR
X.br
X.SH "BUGS"
XBug reports to:
X.br
X<\fIpolicy@mtek.com\fP> or <\fImtek!policy\fP>
END_OF_FILE
if test 1982 -ne `wc -c <'man/policy.1.T'`; then
    echo shar: \"'man/policy.1.T'\" unpacked with wrong size!
fi
# end of 'man/policy.1.T'
fi
if test -f 'scripts/1stlogin.sh' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'scripts/1stlogin.sh'\"
else
echo shar: Extracting \"'scripts/1stlogin.sh'\" \(3703 characters\)
sed "s/^X//" >'scripts/1stlogin.sh' <<'END_OF_FILE'
X:
X#!/bin/sh
X# $Id: 1stlogin.sh,v 5.3.2.5 91/09/03 09:55:00 policy USENET $
X#
X# Copyright (c) 1991 by Bergen B. Hovell, Jr.
X# You may not distribute or otherwise use this work for any profit-making
X# purpose without the express permission of the author, but this work is
X# otherwise freely distributable so long as this header remains attached.
X##################### edit these in the Makefile! ########################
XPATH=
Xpager=
Xrecord=
Xpoldir=
Xannouncement=
Xdefterm=
Xmssgto=
Xname=
Xfast=
X##########################################################################
XIFS="
X"
Xexport PATH IFS
X
Xtrap '' 2;                            # Allow no user interrupts
X
Xlogdate=`exec 'date'`                 # Date of record of this announcement
X
X# Let's do it:
Xif [ ! -r "$announcement" ]
Xthen echo "Subject: New-login info failed for '$name' on $logdate!" \
X                                                               | mail $mssgto
Xelse if [ ! "$TERM" ]
X     then TERM=$defterm
X          export TERM
X          noterm=yes
X     fi
X     
X     # Do we have a "clear" function available?
X     if [ -x /bin/clear -o -x /usr/bin/clear -o -x /usr/ucb/clear ]
X     then clear=`clear`
X     # ....or curses?
X     elif  [ -x /usr/bin/tput ]
X     then clear=`tput clear`
X     # ....nada....
X     else clear=
X     fi
X     
X     # Call up the new-login announcement into the pager, and apologize if
X     # we are not a fast machine:
X     echo  $clear
X     $pager $announcement
X     echo  $clear
X     if [ "$fast" != "yes" ]
X     then cat << "     endmssg"  
X
X
X
X
X
X
X                          ADMINISTRATIVE NOTICE!
X
X          * * * * * * * * * * * * * * * * * * * * * * * * * * * *
X          *                                                     *
X          *  Sorry for the brief delay, but I must do some one- *
X          *  time tasks related to your first login session.    *
X          *                                                     *
X          *  Please be patient................................  *
X          *                                                     *
X          * * * * * * * * * * * * * * * * * * * * * * * * * * * *
X
X
X
X
X
X
X
X     endmssg
X     fi
X     
X     # Create a file for us to test hereafter so this script never runs
X     # again for this user:
X     cat << "     endmssg"  > $record
X
X               * * * * * * * * * * * * * * * * * * * * * * * 
X               *                  NOTICE                   *
X               *                                           *
X               *  The existence of this file suppresses    *
X               *  the one-time login announcement about    *
X               *  policies on this host. If you remove     *
X               *  this file, that announcement will again  *
X               *  bore you the next time you log in. :-)   *
X               *                                           *
X               * * * * * * * * * * * * * * * * * * * * * * * 
X
X                             Thanks.....System Administrator
X     endmssg
X     chmod 440 $record
X     
X     # Notify the administrator that the user has completed his first login and
X     # has seen the announcement (or that he did not!):
X     if [ -f $record ]
X     then echo "Subject: Successful new-login '$name' logged in on $logdate" \
X                                                               | mail $mssgto
X     else echo "Subject: New-login info failed for '$name' on $logdate!"     \
X                                                               | mail $mssgto
X     fi
X
X     # If he didn't have a TERM value coming into this script on this system,
X     # then be sure it is null going out:
X     if [ "$noterm" ]
X     then TERM=""
X          export TERM
X     fi
X
Xfi
X   
X# end of file
END_OF_FILE
if test 3703 -ne `wc -c <'scripts/1stlogin.sh'`; then
    echo shar: \"'scripts/1stlogin.sh'\" unpacked with wrong size!
fi
# end of 'scripts/1stlogin.sh'
fi
if test -f 'scripts/policy.pl' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'scripts/policy.pl'\"
else
echo shar: Extracting \"'scripts/policy.pl'\" \(3392 characters\)
sed "s/^X//" >'scripts/policy.pl' <<'END_OF_FILE'
X#!/usr/local/bin/perl
X# $Id: policy.pl,v 5.3.2.5 91/09/03 09:56:01 policy USENET $
X#
X# Ported to perl by Andy Linton <Andy.Linton@comp.vuw.ac.nz>
X# Based on a shell script by Bud Hovell <bud@mtek.com>
X#
X# Copyright (c) 1991 Andy Linton
X# All rights reserved.
X#
X# Redistribution and use in source and binary forms are permitted provided
X# that: (1) source distributions retain this entire copyright notice and
X# comment, and (2) distributions including binaries display the following
X# acknowledgement:  ``This product includes software developed by the
X# Victoria University of Wellington, New Zealand and its contributors''
X# in the documentation or other materials provided with the distribution
X# and in all advertising materials mentioning features or use of this
X# software.
X# Neither the name of the University nor the names of its contributors may
X# be used to endorse or promote products derived from this software without
X# specific prior written permission.
X# THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
X# WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
X# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
X#################### edit these in the Makefile! ###########################
X$poldir='';
X$pager='';
X$myname='';
X############################################################################
X# Note: any policy file must be named identically to the first word of the
X# 	first line in the file itself. Consider the file "logins", with
X#	this as line one:
X#
X#	logins  - responsibilities of users
X#
X#	.....where the word "logins" begins at character one of line
X#       one of the file named "logins". This first line will then be
X#       extracted to the ad-hoc menu file to provide the menu id for
X#       the user to select the "logins" policy file.
X
X$| = 1;		# Force a flush after each write or print
X
X$clear='';
X# Do we have a "clear" function?
Xif (-x '/bin/clear')
X{
X	$clear='/bin/clear';
X}
Xelsif (-x '/usr/bin/clear')
X{
X	$clear='/usr/bin/clear';
X}
Xelsif (-x '/usr/ucb/clear')
X{
X	$clear='/usr/ucb/clear';
X}
X# ....or curses?
Xelsif (-x '/usr/bin/tput')
X{
X	$clear='/usr/bin/tput clear';
X}
X
X# Build a menu from the files in the $poldir directory
Xchdir ($poldir);
Xopendir (POLDIR, $poldir) || die "Can't opendir $poldir, stopped";
Xwhile ($filename = readdir (POLDIR))
X{
X  if (-f $filename)
X  {
X    open (FILENAME, $filename) || die  "Can't opendir $filename, stopped";
X    $_ = <FILENAME>;
X    close (FILENAME);
X    ($menu_entry, $junk) = split(/\$/);
X    $menu{$filename} = $menu_entry;
X  }
X}
X
X$hostname = `$myname`;
X$hostname =~ tr/a-z/A-Z/;
X
X# Re-run the menu until 'quit' from user:
Xwhile(1)
X{
X  system ("$clear");
X
X  print "\nDIRECTORY OF LOCAL POLICY FOR $hostname\n";
X  
X  while (($key, $value) = each(%menu))
X  {
X    print "\n\t$value\n";
X  }
X
X  print "\n\tor 'q'uit";
X  print "\n\nTo review a policy, type in subject: > ";
X  $_ = <STDIN>;
X  if (/^[qQ]$/)
X  {
X    # Wants to quit
X    print "\nPolicy review concluded. Thank you for your interest.\n";
X    last;
X  }
X  elsif (/^$/)
X  {
X    # No entry
X    print "\nYou must provide a name or 'q'uit.\007";
X    sleep (2);
X    next;
X  }
X  else
X  {
X    # Wants another
X    chop;
X    if (-r "$poldir/$_")
X    {
X      system ("$clear");
X      system ("$pager $poldir/$_");
X    }
X    else
X    {
X      print "\nYou must provide a name or 'q'uit.\007";
X      sleep (2);
X    }
X  }
X}
END_OF_FILE
if test 3392 -ne `wc -c <'scripts/policy.pl'`; then
    echo shar: \"'scripts/policy.pl'\" unpacked with wrong size!
fi
# end of 'scripts/policy.pl'
fi
if test -f 'scripts/policy.sh' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'scripts/policy.sh'\"
else
echo shar: Extracting \"'scripts/policy.sh'\" \(4198 characters\)
sed "s/^X//" >'scripts/policy.sh' <<'END_OF_FILE'
X:
X#!/bin/sh
X# $Id: policy.sh,v 5.3.2.5 91/09/03 09:56:03 policy USENET $
X#
X# Copyright (c) 1989, 1990, 1991 by Bergen B. Hovell, Jr.
X# You may not distribute or otherwise use this work for any profit-making
X# purpose without the express permission of the author, but this work is
X# otherwise freely distributable so long as this header remains attached.
X#############################################################################
X# Revision 4.6.2.2  91/04/04  12:30:18  bbh
X# Use variable substitution for differences in BSD vs. SYSV 'sh' commands.
X# By Andy Linton <Andy.Linton@comp.vuw.ac.nz>.
X#################### edit these in the Makefile! ############################
XPATH=
Xpoldir=
Xpager=
Xmyname=
Xis3b1=
X#############################################################################
X# Note: any policy file must be named identically to the first word of the
X# 	first line in the file itself. Consider the file "logins", with
X#	this as line one:
X#  
X#	logins  - responsibilities of users
X#
X#	.....where the word "logins" begins at character one of line
X#       one of the file named "logins". This first line will then be
X#       extracted to the ad-hoc menu file to provide the menu item for
X#       the user to select the "logins" policy file.
X#
X#	Optionally, you may show an RCS header or id as the last item
X#	on line 1, and it will be stripped away so as not to show up on
X#	the menu listing. It will, however, show up when the file is
X#	paged up onto the screen, so the user can see what the last date
X#	of change (or perhaps just the Revision number) exists for that
X#	policy file. This is a recommended approach, if you have RCS to
X#	maintain these files. (SCCS could be used similarly, which would
X#	necessitate only minor changes in the sed statement below).
X############################################################################
Xexport PATH
X
X# Some variables:
Xhost=`$myname | tr [a-z] [A-Z]`       
Xmenu=$poldir/polmenu
X
X# Are we a 3B1?:
Xif [ "$is3b1" = "yes" ]
Xthen c='\c'
X     nl='\n'
X     n=
Xelse # Andy's sort for bsd vs. sysv:
X     nl=`echo \\\\n`
X     if [ ${nl} ]
X     then nl='
X'
X     else nl='\n'
X     fi
X     c=`echo \\\\c`
X     if [ ${c} ]
X     then n='-n'
X          c=
X     else c='\c'
X     fi
Xfi
X
X# Do we have a "clear" function?
Xif [ -x /bin/clear -o -x /usr/bin/clear -o -x /usr/ucb/clear ]
Xthen clear=`clear`
X# ....or curses?
Xelif  [ -x /usr/bin/tput ]
Xthen clear=`tput clear`
Xelse clear=
Xfi
X    
X# Any files newer than menu?
Xcd $poldir 
Xnew=`find . -newer $menu -print`
X
X# If so, menu needs to be updated:
Xif [ "$new" ]
Xthen echo "${nl}Ooops...hold on while I build a new menu for '$0'...${nl}" 
X     > $menu
X     filelist=`ls | sed -e 's/polmenu//g' \
X 			-e 's/^[ 	]$//g' \
X                        -e 's/$//g'; echo "${nl}"`
X     for file in $filelist
X     do
X          echo ${n} "               ${c}"                          >> $menu
X          # This will read out all of line 1 into the user menu,
X          # except for any trailing Id or Header stuff for RCS
X    	  # (if you show your revision info on line one):
X          cat $file | sed -n '1p' | sed 's/[$].*$//g'              >> $menu
X     done
Xfi
X    
X# Re-run the menu until 'quit' from user:
Xi=x
Xuntil [ $i = "q|Q|quit|Quit" ]; do
X     echo $clear
X     echo "${nl}               DIRECTORY OF LOCAL POLICY FOR HOST '$host'${nl}"
X     cat $menu
X     echo "${nl}               .....or 'q'uit"
X     echo ${n} "${nl}               To review a policy, type in subject: > ${c}"
X     read i
X     case $i in
X           q|Q|quit|Quit) # Wants to quit
X                echo "${nl}               Policy review concluded.  Thanks for your interest.${nl}"
X                break ;;
X           "")  # No entry
X                i=x
X                echo "${nl}               You must provide a name or 'q'uit.\007"
X                sleep 2
X                continue ;;
X           *)   # Wants another
X                if [ -r $poldir/$i ]
X                then echo $clear
X		     $pager $poldir/$i
X    	             i=x
X                else echo "${nl}               You must provide a name or 'q'uit.\007"
X    	             sleep 2
X    	             i=x
X                fi
X                continue ;;
X     esac
Xdone
END_OF_FILE
if test 4198 -ne `wc -c <'scripts/policy.sh'`; then
    echo shar: \"'scripts/policy.sh'\" unpacked with wrong size!
fi
# end of 'scripts/policy.sh'
fi
if test -f 'text/ann' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'text/ann'\"
else
echo shar: Extracting \"'text/ann'\" \(971 characters\)
sed "s/^X//" >'text/ann' <<'END_OF_FILE'
Xann     - first announcement to new users             $Revision: 5.3.2.5 $
X^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
X
X      (Touch <u> to move up, <space-bar> or <return> to move down)
X
X                                WELCOME!!!
X
X      * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
X      *  Immediately after logging in, you should invoke 'policy' * 
X      *  from the command line, then select "help" from the menu  *
X      *  for instructions to review the policies which govern the *
X      *  operation of this system.  This should take very little  *
X      *  time, and is a condition of your local login privilege.  *
X      *                                                           *
X      *  (A man page also is provided for the 'policy' command).  *
X      * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
X
X
X                           (Touch <q> to quit>
X
X
XCopyright (c) 1990, 1991 by MTEK International, Inc. - freely distributable.
END_OF_FILE
if test 971 -ne `wc -c <'text/ann'`; then
    echo shar: \"'text/ann'\" unpacked with wrong size!
fi
# end of 'text/ann'
fi
if test -f 'text/appr' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'text/appr'\"
else
echo shar: Extracting \"'text/appr'\" \(733 characters\)
sed "s/^X//" >'text/appr' <<'END_OF_FILE'
Xappr    - approval by top management (!)
X^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
X
XFrom: Mike McCormick <mc@mtek.com>
XSubject: Approval of computer resource policy
XTo: All login users
X$Date: 91/09/03 09:55:24 $.
X
XI have reviewed and do herewith endorse and approve all computer resource
Xpolicies published as of this date, up through and including:
X
X                           $Revision: 5.3.2.5 $
X
XAny objections or concerns about policies described under the 'policy' menu
Xon this host should be directed first to the system manager, and thereafter
Xto me if your concerns remain unresolved.
X
X[signed]
XMichael C. McCormick
XPresident
XMTEK International, Inc.
X
X  Copyright (c) 1991 by MTEK International, Inc. - freely distributable.
END_OF_FILE
if test 733 -ne `wc -c <'text/appr'`; then
    echo shar: \"'text/appr'\" unpacked with wrong size!
fi
# end of 'text/appr'
fi
if test -f 'text/gen' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'text/gen'\"
else
echo shar: Extracting \"'text/gen'\" \(5206 characters\)
sed "s/^X//" >'text/gen' <<'END_OF_FILE'
Xgen     - general policy (!)                           $Revision: 5.3.2.5 $
X^^^^^^^^^^^^^^^^^^^^^^^^^^^^
X
X                     * * * * * * * * * * * * * * *
X                     * Computer Resources Policy *
X                     * * * * * * * * * * * * * * *
X
XAll users shall use computing facilities in a manner which is ethical, legal,
Xand not contrary to the interests of others, including MTEK International,
XInc. ("the company").
X
X1.  Scope
X
XComputing facilities are those operated by or for the benefit of the company,
Xand provided for authorized use only by local and remote authorized users.
X
X"Policy" refers only to those collective electronic documents accessible to
Xauthorized users under the 'policy' menu and marked with the symbol "(!)",
Xas shown at the top of this document.
X
XAll other menu-items are merely advisory, providing approved information
Xwhich the user may rely upon.
X
X2.  Application
X
XAll users shall strictly adhere to both the letter and spirit of the policies
Xprovided to assure a predictable computing environment secure for all users.
X
XSystem administrators (persons having 'root' permission) may occasionally have
Xto stray from the letter of these policies, but may *never* violate its spirit.
XIf in doubt, they shall seek consultation.
X
X3.  Basic Provisions
X
XFailure to abide with the following general rules may result in loss of login
Xaccess:
X
X   * 	You may only use those facilities which have been authorized
X	for your use. If access is protected by a password, you are not
X	to make this password available to others, nor allow someone else
X	to give his password to you or use your account. You may not
X	attempt to find out the password of another user, nor abet such
X	attempt by any other person.
X
X   * 	You may use authorized facilities only for authorized purposes.
X
X   * 	You must be aware of the law of copyright as it affects computer
X	software. A formal copyright need not be in evidence for legal
X	copyright protection to be in force.
X	
X   *    You are the copyright owner of any file which you solely create
X	for your own exclusive use. Any other file is copyright either
X	by the company, by commercial vendors, or by other individual
X	users, and it is illegal for you to reproduce such file in any
X	part or in any form, except where required by company business,
X	or else by written permission of the copyright owner.
X
X   * 	You may not attempt to interfere with the present or future oper-
X	ation of any computing facility.
X
X   * 	You may not attempt to subvert -- or abet others to subvert -- the
X	security of any computing facility.
X
X   *    You may not interfere with use by any other authorized user, nor
X	compromise the confidentiality of the company's internal business
X	practices or records.
X
X   * 	You may not use the company's computing facilities to send messages
X	which are manifestly obscene or otherwise harassing.
X
X4.  Right of Free Speech
X
XYou may disagree with any or all computer resource policies, either publically
Xor privately, in accordance with your First Amendment rights.  However, you
Xmay not violate any published policy for any reason or cause.
X
X5. Right of Appeal
X
XIf any policy has provisions you dislike, please notify the system manager
Xdescribing your concerns and/or suggestions. You have the right of appeal
Xto the President, MTEK International, regarding any policy provision or
Xinterpretation thereof.
X
X6.  Administration
X
XAll policies must be endorsed by the President, MTEK International, Inc.,
Xbefore they may be placed in force. Policies may be modified only by formal
Xchange, followed by adequate public notice to all login users.
X
X7.  Disclaimer
X
X* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
X*                                                                         *
X*    The company accepts NO RESPONSIBILITY for any damage to or loss of   *
X*    data arising directly or incident to the use of these or other       *
X*    facilities, or for any consequential loss or damage therefrom. It    *
X*    makes representation of NO WARRANTY, express or implied, regarding   *
X*    the computing services offered, or their fitness for any particular  *
X*    use or purpose.                                                      *
X*                                                                         *
X*    The company's liability in the event of any loss or damage shall     *
X*    be LIMITED TO THE FEES AND CHARGES, IF ANY, PAID TO THE COMPANY      *
X*    for use of the computing facilities which resulted in said loss      *
X*    or damage.                                                           *
X*                                                                         *
X* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
X
X8.  Agreement to Comply
X
XYou implicitly acknowledge, by continued system use, your agreement to comply
Xwith all published policies governing the use of this system.
X
XYou also agree to read all future system 'news' messages containing the word
X"policy", since these will contain information announcing specific policy
Xchanges which are of substance.
X
XCopyright (c) 1990, 1991 by MTEK International, Inc. - freely distributable.
END_OF_FILE
if test 5206 -ne `wc -c <'text/gen'`; then
    echo shar: \"'text/gen'\" unpacked with wrong size!
fi
# end of 'text/gen'
fi
if test -f 'text/help' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'text/help'\"
else
echo shar: Extracting \"'text/help'\" \(1244 characters\)
sed "s/^X//" >'text/help' <<'END_OF_FILE'
Xhelp    - how to use these files (!)          $Revision: 5.3.2.5 $
X^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
X
XThose documents which are marked with "(!)" are compulsory. (The item
X'ann' is the announcement you already saw when you first logged in, and
Xyou need not read it again.)
X
XThese remaining items should be read in the following order:
X
X               gen     - general policy (!)
X               logins  - responsibilities of users (!)
X               sec     - system security (!)
X               usenet  - our access to the world (!)
X               news    - guidelines on usenet news (!)
X               appr    - approval by top management (!)
X
XAll these files are marked with copyright notices.
X
XThose that say "freely distributable" you may copy and publish anywhere,
Xin any form, to anyone.
X
XThose which are marked "All rights reserved" and "not distributable" may
Xnot be copied by you or distributed to anyone in any form, electronic or
Xotherwise, since they contain information we don't want dispersed to
Xthe outside world.
X
XTo select any displayed item, simply type in the key word shown at the
Xleft to read about that subject.
X
XTo quit at any time, type in 'q'.
X
XCopyright (c) 1991 by MTEK International, Inc. - freely distributable.
END_OF_FILE
if test 1244 -ne `wc -c <'text/help'`; then
    echo shar: \"'text/help'\" unpacked with wrong size!
fi
# end of 'text/help'
fi
if test -f 'text/logins' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'text/logins'\"
else
echo shar: Extracting \"'text/logins'\" \(2506 characters\)
sed "s/^X//" >'text/logins' <<'END_OF_FILE'
Xlogins  - responsibilities of users (!)                 $Revision: 5.3.2.5 $
X^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
X
X1. Facilities Authorized
X
XAs a login user, you are granted use of all computing facilities, subject
Xonly to these provisions:
X
X	A. If you are neither a company-engaged employee nor contractor, then
X	you may use only those public facilities provided. Except for email
X	and news postings, you may not attempt access to any facility which
X	will result in third-party charges accruing to the company.
X	
X	B. Employees and contractors may use any facility provided them by
X	the company as required to complete their assigned work, subject
X	only to "need-to-know".
X	
X	C. System administrators (persons having full 'root' permissions
X	on this host) may use any facilities available and necessary to
X	complete required tasks, so long as such use does not needlessly
X	violate the privacy of any login user or of restricted company files.
X	System administrators may likewise grant the same access to outside
X	support persons, as needed, but only on a temporary basis. Need-to-
X	know restrictions apply to them no less than others.
X
X2. Suspension & Termination
X
XThe system manager is vested with the absolute and unfettered right to
Xsuspend, with or without immediately-stated cause or notice, any login which
Xmay have been granted on this host at any time, as follows:
X
X	A. Cause for suspension shall exist whenever the system manager judges
X	that the action of a login user is (or may be) of such character as to
X	threaten immediate harm to the company, to any computing facility,
X	or to any user owing to apparent violation of any provision of the
X	general computer resources policy.
X
X        B. Receipt from a local user (or system administrator at another host)
X	of complaint about manifestly abusive behavior by a local user may
X	likewise place user's login privileges in extreme jeopardy.
X
XA final decision on termination shall follow a full review of the facts and
Xevents brought to evidence by the suspended login user and any other parties
Xclaiming an interest in the outcome. The President will finally rule on any
Xrecommendation to permanently terminate.
X
X3. Bogus Email & News
X
XIt is true that it is relatively simple to create 'bogus' email or news
Xpostings. Any login user who believes that someone has sent bogus mail
Xor news under his name and this site name should notify the system manager
Ximmediately.
X
XCopyright (c) 1990, 1991 by MTEK International, Inc. - freely distributable.
END_OF_FILE
if test 2506 -ne `wc -c <'text/logins'`; then
    echo shar: \"'text/logins'\" unpacked with wrong size!
fi
# end of 'text/logins'
fi
if test -f 'text/news' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'text/news'\"
else
echo shar: Extracting \"'text/news'\" \(2622 characters\)
sed "s/^X//" >'text/news' <<'END_OF_FILE'
Xnews    - guidelines on usenet news (!)                $Revision: 5.3.2.5 $
X^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
XWe carry only a partial selection of newsgroups owing to limitations of disk
Xspace. If there is a group you want to read that is not currently carried,
Xthen make a request to the system manager, and we will attempt to supply it
Xpromptly, so long as local disk space will not be unreasonably compromised.
X
XNo request shall be denied because of the subject matter of the group.  No
Xattempt will be made to censor incoming news groups, nor the content of the
Xindividual articles posted thereto. To which groups you choose to subscribe
Xand post is your private business, and we make no judgements of such individ-
Xual preferences or choices.
X
XIf you are not a prior user of usenet news, then DON'T POST until you know
Xwhat you are doing and have read the "netiquette" documents (request your
Xown personal printed copy from the system administrator).
X
XYou will see a number of (perhaps passionate) discussions regarding "the
Xspirit of usenet" - interpretations of what limits, if any, that different
Xpersons believe should or shouldn't be respected in a worldwide collective
Xthat is quite accurately described as an "anarchy".
X
XUsenet may be an anarchy, but this site is not! We subscribe to the notion
Xthat each usenet host management should "think globally, act locally", and
Xwe do so by our own best lights.
X
XTherefore, if you do post an article, we ask that you conduct yourself as an
Xadult. A modest word is no less effective than a brash one, if you are
Xskilled. If you are not skilled, then you won't conceal the fact by resorting
Xto gratuitous abuse. Indeed, this deficiency will only be compounded and
Xmade more visible to everyone around you - both locally and out on the net.
X
XIf in doubt, trim your sails a bit.
X
XWe must point out that any complaints of real abuse (either in one or more
Xnews postings or private email messages) will be treated seriously if the
Xcomplaint originates from the system administrator of another site.
X
XIf you have offended some other user elsewhere, but that user is not willing
Xto make a formal complaint to his local management, then we have to assume
Xthe injury was modest and falls within the normal ranges of usenet posting
Xbehavior (or misbehavior, depending on your view :-).
X
XLikewise, however, the risk *is* yours, so consider carefully who you are
Xaddressing - some people don't have a sense of humor or a thick hide - and
Xit is your personal responsibility to assess this accurately.
X
X   Copyright (c) 1991 by MTEK International, Inc. - freely distributable.
END_OF_FILE
if test 2622 -ne `wc -c <'text/news'`; then
    echo shar: \"'text/news'\" unpacked with wrong size!
fi
# end of 'text/news'
fi
if test -f 'text/usenet' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'text/usenet'\"
else
echo shar: Extracting \"'text/usenet'\" \(4867 characters\)
sed "s/^X//" >'text/usenet' <<'END_OF_FILE'
Xusenet  - our world-wide connection (!)                  $Revision: 5.3.2.5 $
X^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
X    
X  The provisions of the following charter are binding upon system adminis-
X  trators and all login users on this host:
X    
X  ============================================================================
X
X                           USENET GENERAL STANDARDS
X
X  Local site administration will:
X    
X  1. Support the expansion of network connectivity to other sites wherever
X     reasonable within the limitations of local authorized resources.
X    
X  2. Perpetually maintain a current usenet map for this site, and publish
X     ONLY those connections made with leaf-sites whose sysadmins agree to:
X        
X     A. Perpetually maintain a current usenet map for that site, and.....
X    	   
X     B. Submit a copy of their initial map for our local records, and....
X    
X     C. Require other new leaf-sites to which they may connect thereafter
X	to meet these same requirements.
X
X  3. Assist sysadmins of other sites to establish network connection, and
X     particularly assist any who are connecting to a network feed for the
X     very first time (including preparation for them of initial usenet map,
X     if necessary).
X        
X  4. Provide "common carrier" network services for receiving, transmitting,
X     and storing email and news articles. Limitation, if any, of specific
X     news groups carried shall be based solely on considerations of available
X     authorized resources and demonstrated readership interest. Any liability
X     which may arise from the contents of email, news, or any similar elec-
X     tronic transmission shall be the sole responsibility of the individual
X     originator, regardless of location, and no local attempt shall be made
X     to review, regulate, or censor contents of such transmissions at any
X     time.
X    
X  5. Advise local users of their sole responsibility for any news postings or
X     private email messages they may originate, with the probability of local
X     action against them if one or more complaints are received where evidence
X     shows the presence of blatant and willful intent (aggravated or not) to
X     abuse other person(s) or classes of persons.
X     
X  6. Advise local users that private email messages are assumed to be confi-
X     dential communications to the addressee(s) unless the originator states
X     clearly that confidentiality need not be preserved. If a user reveals the
X     contents of such email to a non-addressee, then he or she assumes the
X     burden of proof that confidentiality was not desired by the sender. Fail-
X     ure to respect email confidentiality shall be treated as willful abuse
X     of the originator.
X    
X  7. Allow any local user to provide to the system administrator a full and
X     complete copy of any email which the user believes to show evidence of
X     harrassment or abuse. (Such complaint received from a user in another
X     organization shall be returned with instructions to submit the complaint
X     to their own local sysadmin, who then has the option of forwarding the
X     complaint). Once such a formal complaint is received, the suspect email
X     shall automatically loose the full protection of confidentiality, since
X     it can and will be examined by those investigating the complaint, and
X     may be submitted to others for final action. Any user who repeatedly
X     complains of "abuse" (where none is found by third-party examination)
X     may, likewise, be held to have abused the persons whose email has
X     thus been wrongfully denied the full protection of confidentiality.
X     
X  8. Otherwise take reasonable measures to preserve the privacy of any email
X     which enters or leaves this site, regardless of origin or destination,
X     and reasonably assist in proper routing of any unsuccessful email trans-
X     mission which is forwarded for our attention. Sysadmins may examine email
X     headers only when necessary for administrative purposes, but shall not
X     examine other contents. However, no express or implied warrantee of email
X     privacy exists owing to this or any provision of this charter.
X
X  9. Provide to local users a prominently-displayed notice of local exceptions
X     (if any) to these general standards.
X
X 10. Encourage other existing sites to formally adopt these minimum standards
X     for themselves to help assure the reliability, security, and privacy of
X     all network communications.
X
X =============================================================================
X    
X  Any request for uucp connection should be emailed to "postmaster@mtek.com"
X  or "mtek!postmaster" for attention. Only rarely would such a request be
X  refused. We will be as helpful as prevailing conditions allow.
X    
X  Copyright (c) 1991 by MTEK International, Inc. - freely distributable.
END_OF_FILE
if test 4867 -ne `wc -c <'text/usenet'`; then
    echo shar: \"'text/usenet'\" unpacked with wrong size!
fi
# end of 'text/usenet'
fi
echo shar: End of archive 1 \(of 3\).
cp /dev/null ark1isdone
MISSING=""
for I in 1 2 3 ; do
    if test ! -f ark${I}isdone ; then
	MISSING="${MISSING} ${I}"
    fi
done
if test "${MISSING}" = "" ; then
    echo You have unpacked all 3 archives.
    echo "'This is usenet version 5.3.2.5 of 91/09/03.'"
    rm -f ark[1-9]isdone
else
    echo You still need to unpack the following archives:
    echo "        " ${MISSING}
fi
##  End of shell archive.
exit 0
-- 
Bud Hovell
_______________
policy@mtek.com
