Introduction to Gatekeeper

Version 1.3
November 1993




Installing Gatekeeper
------------------------------------------------------------------



	Gatekeeper will only operate on Macintoshes with the 128K ROMs, 
	or better. This means that it should work fine with the Macin-
	tosh 512Ke, Plus, SE series, II series, Classic, LC and better. 
	In addition it should only be used with System versions 4.1 or 
	later; ideally 6.0.4 or later.



To install Gatekeeper you'll need the following files: Gatekeeper,
Gatekeeper Controls, and Gatekeeper Aid. Where these files are
placed, however, varies depending on the version of the System you
happen to be using. Regardless of the System you are using, though,
you can install Gatekeeper quickly and correctly by following the
steps below.


1.	Find your System Folder's icon.

2.	If the System Folder window is open (the System Folder's icon
	will appear gray if it is), find and close that window.

3.	Select the Gatekeeper, Gatekeeper Aid and Gatekeeper Controls
	files and drag them onto your System Folder's icon.

4.	If you're running a System earlier than version 7.0, the
	files will be copied and that'll be that. If you're running 
	System 7.0 or later an alert will appear and you'll be told 
	that the items "need to be stored in special places inside the 
	System Folder" - just click the OK button in this alert and 
	everything will happen automatically.

5.	Double-check the installation by making sure those items are
	in the locations shown in the following diagrams.

6.	If you've used Gatekeeper 1.2.x on your Mac before, look for
	the Gatekeeper Prefs file in either the System Folder or the
	Preferences folder. If you find it, and you're using System 7, 
	put it in the Trash, but don't bother trying to empty the 
	Trash. If you're using System 6 or earlier, just drag the Prefs
	file out of the System Folder. This will force Gatekeeper 1.3 
	to create a new Prefs file when you restart your Mac. The new 
	Prefs file will contain the latest set of default privilege 
	information, so it is normally preferable to earlier versions 
	of the file. (Once this is done you'll be able to throw away 
	that old Prefs file.)


System 4.1 to System 6.0.x Gatekeeper Component Locations

[Graphic Omitted]


System 7.x Gatekeeper Component Locations

[Graphic Omitted]


NOTE: Once Gatekeeper is installed and operating it will create two
new files named "Gatekeeper Log" and "Gatekeeper Prefs". System 7
users will find these files in the Preferences folder, while users
of earlier systems will find them in the System Folder.

Because of the way Gatekeeper Controls was written, you are not
required to place it in the Control Panels folder under System 7.
In fact, you can put it anywhere that happens to be convenient, or
you can even remove it altogether if you are certain you won't need
it to configure Gatekeeper at some later date. In general though,
it's best to put it in the Control Panels folder and leave it
there, so that there won't be any question of where to find it when
you need it.

System 6 users do not have the option of relocating the Gatekeeper
Controls file; it must be located in the System Folder for the
Control Panel desk accessory to find it. However, it is possible to
omit the Gatekeeper Controls file, if you are certain you won't
need it to configure Gatekeeper at some later date. Omitting
Gatekeeper Controls is useful when you're setting up a facility
like a public access lab in which you don't want users changing
Gatekeeper's configuration.

For the sake of flexibility there are three valid locations for the
Gatekeeper Log and Gatekeeper Prefs files under System 7. They can
be in the Preferences folder, the System Folder, or the same folder
that contains Gatekeeper. Under System 6, however, the choice of
location is limited to the System Folder or the same folder that
contains Gatekeeper (there are a few INITs which make this
distinction relevant).

NOTE: If, after you install Gatekeeper, you do not see the new
Gatekeeper icons (particularly the color icons available under
System 7) you will need to delete all previous versions of
Gatekeeper from your disk(s) and rebuild your Desktop file. This is
done by restarting your Macintosh while holding down both the
command and option keys until menus reappear in the menu bar at the
top of the screen. At this time you can release those keys. You
will soon be asked if you want to "rebuild the desktop" on your
disk(s). Click on the OK button, and the Finder will do the rest
for you. Remember, however, that rebuilding your Desktop file will
remove all the comments attached to your files in the "Get Info..."
dialog - other than that, though, it's a harmless operation.





Gatekeeper in Principle
------------------------------------------------------------------



Gatekeeper is a program designed to continuously monitor the
operation of your Macintosh, watching for operations that are
commonly carried out by viruses as they attempt to spread. When
Gatekeeper detects an infection attempt it will automatically stop
the attempt, almost before it's started.

This type of monitoring and protection is possible because viruses
generally depend on a small group of operations which they use in
somewhat unusual ways. Of course, if detecting virus operations was
really as straightforward as all that, everyone would be doing it.
The fact is there's a catch. Not a big one, but a catch just the
same:

	Some perfectly normal programs carry out some of the same 
	basic operations that viruses do. (For very different reasons, 
	of course.)

Gatekeeper deals with these "false-alarms" by allowing you to tell
it what virus-like operations any given program should be allowed
to carry out. You tell Gatekeeper just once, then forget about it -
everything's automatic from then on.

Gatekeeper restricts two basic classes of operations:

1.	Operations on information about files that contain programs.
	These are known as "File" operations.
	
2.	Operations on the components of programs stored within files.
	These are known as "Resource" (usually abbreviated as just 
	"Res") operations.

Within each class of operation there are three variants:

1.	The file being operated on is the file containing the
	currently running program, i.e. the program is operating on 
	itself. This is known as an operation of type "Self."

2.	The file being operated on is the System file. This is known
	as an operation of type "System" (usually abbreviated as 
	"Sys").

3.	The file being operated on is some other file, i.e. the
	program isn't operating on itself (case 1) and it isn't 
	operating on the System file (case 2), either. This is known 
	as an operation of type "Other."

With these two basic classes of virus operations, each of which has
three variants, we get a total of six separate operations for which
Gatekeeper has to watch.

If this doesn't mean anything to you, don't worry. It's helpful to
understand what these different operations do, but it's certainly
not required. Just understand that there are two classes of
operations monitored by Gatekeeper, "File" and "Res," and that
there are just three variations within those two classes, "Self,"
"System" and "Other." You don't have to memorize this, but it's
worth being aware of it.






Gatekeeper in Practice
------------------------------------------------------------------



[Graphic Omitted]

When push comes to shove, this is what Gatekeeper does. It
automatically detects and stops suspicious operations and notifies
you of the event.

This alert tells you what program appears to have been responsible
for the suspicious operation (Kermit), what privilege the program
attempted to violate (Res(System)), and who the intended victim was
(the System file). For the technical and the curious, it also
includes in brackets the name of the actual Toolbox or OS operation
that was blocked (AddResource) and what it's immediate intent was
(to add a resource of type 'nVIR' with an ID number of 0 to the
System file).

In this case the operation being stopped was an attempt by the nVIR
virus to implant itself in a Macintosh's System file. But what if
you didn't know about the nVIR virus? How would you determine
whether or not this was an operation that should have been
permitted?

Unfortunately, there's no perfect method. The first thing to do is
to run John Norstad's Disinfectant utility, version 3.3 or later,
to check for known viruses. If Disinfectant gives your Mac a clean
bill of health, you're probably safe. If you're still not sure
whether or not that operation should have been permitted, there are
a few rules of thumb that take care of most situations, so, when in
doubt, ask yourself the following questions:


Does the program modify, create, install, decode, recover or
restore applications, extensions or control panels? If so, it'll
need some type of File privilege.

*   All file manipulation, backup and recovery software will
    require File(Other) privileges in order to work properly.

    Examples: Finder, DiskFit, Symantec Tools, HFS Recover, 
    MacTools, Scanner, Floppy Recover, HD TuneUp, File Splitter.

*   Communications programs, compression utilities, and electronic
    mail packages require File(Other) privileges when decoding
    downloaded applications and system files.

    Examples: Compact Pro, StuffIt, PackIt, BinHex, NCSA Telnet,
    XferIt, VersaTerm, MacTerminal, White Knight, AppleLink, etc.

NOTE: Gatekeeper does not require that self extracting archives
(SEAs) created by Compact Pro, StuffIt, Zoom or Disk Doubler have
any privileges in order to operate. These types of SEAs are handled
as special cases internally, so they can be used without privileges
and without worry.


Does the program modify, create, install or delete resources that
contain programs? If so, it'll need some type of Res privilege.
Some of the most common examples of resources that contain programs
are desk accessories, FKEYs, and HyperCard's XCMDs and XFCNs.

*   Installer and Updater applications almost always require
    Res(Other) and/or Res(System) privileges and are likely to 
    require similar File privileges. However, since these applica-
    tions are used infrequently, they shouldn't be granted any 
    privileges. Just turn Gatekeeper off (after using Disinfectant 
    3.3, or later, to verify that the items to be installed are 
    free of known viruses) while you perform the installation.

    Examples: Apple's Installer, PageMaker Installer, TOPS Installer.

*   Resource manipulation utilities generally need Res(Other)
    privileges and will need Res(System) privileges if they are used 
    to modify the System file. The exact privileges they require 
    will depend on what you use these utilities for.

    Examples: Font/DA Mover, ResEdit, FKey Manager, ResCopier stack,
    RMaker, Rez.

*   Development systems (i.e. programming languages) require
    File(Other) and Res(Other) privileges in order to build 
    virtually all projects.

    Examples: THINK C, THINK Pascal and Apple's MPW.

If none of these cases seem to fit your situation, or you're just
not sure, check with others who might have relevant knowledge -
users groups can be good places to find such people.

If none of the programs listed in the examples above sound very
familiar to you, don't worry: most programs don't need any
privileges.






Gatekeeper's Division of Labor
------------------------------------------------------------------



There are two crucial components of any Gatekeeper installation;
Gatekeeper and Gatekeeper Aid. Although this document will discuss
Gatekeeper at length, it will hardly mention Gatekeeper Aid,
because it doesn't require any configuration. In this section,
though, we'll take some time out to talk a bit about Gatekeeper Aid
and how it relates to Gatekeeper.

Gatekeeper, as has been discussed above, is a general purpose
anti-virus utility which knows little or nothing about specific
viruses. It stops viruses from operating by carefully monitoring
your Mac and stopping any suspicious behavior that occurs. It has
been remarkably successful in stopping both the viruses that
existed when it was first released and those that have appeared in
the years since then, but no anti-virus system can ever be perfect,
and at least one virus appeared that could get around Gatekeeper's
protections. That's why Gatekeeper Aid exists.

Gatekeeper Aid is a utility that searches for and removes families
of known viruses which Gatekeeper either can't stop at all, or
can't stop completely enough to render harmless. Over time, its
role has been expanded to include some general purpose anti-virus
duties as well as the detection and removal of some viruses that
Gatekeeper can stop successfully, but which also happen to be
easily detected and removed.

Together, Gatekeeper and Gatekeeper Aid form a security system
capable of stopping all known viruses, and one with a proven (if
inevitably imperfect) ability to stop new viruses as they appear.
This is why it's crucial to use both products; one or the other
isn't enough to provide effective protection.

In spite of this, it is possible to use Gatekeeper Aid independent
of Gatekeeper. Some people use Gatekeeper Aid to augment the
abilities of other anti-virus utilities, like the Disinfectant
INIT. Rest assured that 'Aid still works perfectly well in such
setups.






1 - General Section
------------------------------------------------------------------



[Graphic Omitted]

Gatekeeper's General section is always the first thing you'll see
when you open Gatekeeper. It'll tell you what version of Gatekeeper
you're using, but other than that it's pretty dull. 

The most important thing in this section isn't really a part of
this section at all; it's the scrolling list of sections which
always appears in the same place at the top of the window. This
list shows you all the other parts of Gatekeeper you can access.
Clicking on a section name in the list takes you to that section.


    Keyboard Shortcuts - Section List
    -------------------------------------------------------
    tab                 Advance to next section.
    shift + tab         Go back to previous section.
    -------------------------------------------------------






2 - Help Section
------------------------------------------------------------------



[Graphic Omitted]

The Help section provides a simple quick-reference to Gatekeeper's
features. It doesn't do anything fancy; I'm afraid there's no
searching or indexing features. However, when used on Macs running
System 6.0 or later, the text is displayed in multiple fonts, sizes
and styles to make the text as easy to navigate as possible. In
particular, major section headings in the help text are set in
Helvetica 18 point bold, so they're easily located as you scroll
through the text.

To view the text properly, make sure that the Times, Helvetica and
Monaco fonts are installed in your System.

If you'd like to print text from the help display, select the text
with the mouse and then select the "Copy" item from the "Edit"
menu. You can then paste the text into any word processor and print
it out in any way you'd like.


    Keyboard Shortcuts
    -------------------------------------------------------
    home                Move to top of help text.
    end                 Move to bottom of help text.
    page up             Move up one "page."
    page down           Move down one "page."
    option              If held down when the Help section 
                        is initially opened, help text is 
                        displayed only in Geneva 9.
    -------------------------------------------------------






3 - ON/OFF Section
------------------------------------------------------------------



[Graphic Omitted]

The ON/OFF section provides you with the means to turn off
Gatekeeper for up to nearly one hundred hours. It's simple enough;
just click on the big, fancy ON/OFF button. When the button says
OFF in big, bold, red letters, all of Gatekeeper's protections are
disabled. When the button merely says ON, Gatekeeper is operating
normally, providing your system all the protection it can.

Turn Gatekeeper off when you're performing relatively brief tasks
that Gatekeeper would otherwise interfere with. The most common
examples of such tasks are running "installer" programs which
install software of some kind on your system, such as PageMaker or
TOPS.

Remember, Gatekeeper will automatically turn itself on again after
the time limit has expired. (If you're looking at the ON/OFF
section at the time, you'll see that the time remaining counter has
counted-down to 0:00:00.) If the time limit value is too small (or
too large) for your needs, you can change it just by clicking on it
and entering the new value the same way you would if you were
setting the time in the General control panel or the Alarm Clock
desk accessory.

NOTE: Turning off Gatekeeper doesn't turn off Gatekeeper Aid. Even
with Gatekeeper off, 'Aid will still remove any known viruses that
it detects. The one thing it will not do is remove suspicious
resources (known as "Implied Loaders") when it comes across them.






4 - Settings Section
------------------------------------------------------------------



[Graphic Omitted]

The Settings section allows you to define some of the basic ways in
which Gatekeeper operates. Each group of options is discussed
below.

When a Privilege Violation Occurs
---------------------------------

Two radio buttons in this area let you tell Gatekeeper what to do
about suspicious operations it encounters. When the "Stop the
Operation (Notify & Veto)" radio button is selected, Gatekeeper
will stop any suspicious activities it observes. On the other hand,
if the "Permit the Operation (Notify Only)" radio button is
selected, Gatekeeper will not actually interfere with suspicious
operations; it will merely tell you the operations have occurred.
It's then up to you what you do about them.

Gatekeeper Aid will also respect these settings to some extent -
when "Notify Only" mode is chosen, it will refrain from removing
any suspicious resources (known as "Implied Loaders") that it may
find. However, even in "Notify Only" mode, 'Aid will still remove
any known viruses it comes across.

When an Important Event Occurs
------------------------------

Two check boxes in this area let you tell Gatekeeper and Gatekeeper
Aid what they should do when they need to get your attention.
Typically, they only need to get your attention when they observe
things like privilege violations, viral infections or other
similarly unusual events. The "Display an Alert" check box tells
Gatekeeper and 'Aid, when they are used with System 6.0 or later,
to display an alert describing the event that occurred and their
response to that event. The "Record it in the Log File" check box
tells them to record a short description of the event in the
Gatekeeper Log file for later review. These two options may be in
used in any combination you find convenient; in practice, however,
it's best to keep both options checked.

During Startup
--------------

Two check boxes in this area let you tell Gatekeeper and 'Aid how
to behave when your Mac starts-up. If the "Show the Gatekeeper
Icon" check box is checked, Gatekeeper and Gatekeeper Aid's icons
will be displayed somewhere along the bottom of your Mac's display
during startup. Showing icons in this fashion is merely a
convenient way of showing that both items are installed on your
Macintosh. In addition, if either one cannot install itself for
some reason, its icon will be drawn with a large red X over it to
warn you that something went wrong.

The other check box in this area, labeled "Display a Mode Warning
Alert", allows you to tell Gatekeeper whether or not it should
display a "warning" alert after startup to remind you of what mode
it is operating in. Gatekeeper can operate in either Notify Only or
Notify & Veto mode. By default, Gatekeeper displays a warning alert
after startup when it is in Notify Only mode (since it doesn't
protect against viruses in that mode), but does not display a
warning alert when in Notify & Veto mode (since that is the mode in
which Gatekeeper normally operates). The "Display a Mode Warning
Alert" check box, however, allows you to change this behavior to
suit your own needs.






5 - Log Section
------------------------------------------------------------------



[Graphic Omitted]

The Log section allows you to view the contents of Gatekeeper's log
file if the "Record it in the Log File" option is checked in the
Settings section. The log is a file in which Gatekeeper and
Gatekeeper Aid record all the important events they observe so that
you can review them at a later date.

Each entry in the log file occupies one line of the log display.
Entries for different days are separated by a line which indicates
the day and date on which the entries below it occurred. All other
lines in the display begin with the time at which the event
occurred and are completed by a brief indication of the type of
event that occurred. Important events like privilege violations are
drawn in bold, red text so that you can locate them at a glance.
Startup and Shutdown messages are grouped together by dotted lines
in the left margin of the list so that you easily see when your Mac
has been in use, or has crashed.

To see an explanation of an entry in the log file, select that
entry in the log file display and click on the "Get Info" button. A
dialog similar to one of the two on the next page will appear. The
dialog will give you all the available details including the name
of the program responsible for the operation and the name of the
disk that program was stored on at the time.

Double-clicking on an entry, not surprisingly, has the same effect
as selecting an entry and clicking on the "Get Info" button.

[Graphic Omitted]

Startup & Shutdown Entries
--------------------------

Normally, the log will contain only "Startup" and "Shutdown"
entries, which tell you when your Macintosh has been started or
shutdown in Gatekeeper's presence. These entries are totally
routine, and are recorded only to help you determine when your Mac
has been used and whether it may have been used without Gatekeeper,
thereby leaving it unprotected against possible virus attacks.

HINT: To determine whether your Mac may have been used without
Gatekeeper, look at the difference between the volume write counts
for a Shutdown entry and the Startup entry that appears immediately
after it. If the difference is greater than normal - and it's up to
you to determine what's normal for your Mac - then your Mac
probably has been booted with some other disk. So what's a "volume
write count"? It's just the number of times any information has
been written to the disk since it was last initialized. Every time
you save a document, for instance, a number of writes are made to
the disk and the volume write count increases accordingly.

Res & File Privilege Violation Entries
--------------------------------------

Occasionally, you may find other entries in the log file, though.
These entries begin with the words "Res" or "File" and describe
attempts by programs to exceed the privileges they have been
granted. These entries tell you one of two things: (1) some program
needs additional privileges in order to operate correctly, or (2) a
virus is attempting to spread on your Macintosh and is being
stopped by Gatekeeper. If you're not sure which is which, run
Disinfectant 3.3, or later, to see if there are any known viruses
on your Macintosh. If Disinfectant detects a virus in the program
that was guilty of the privilege violation, you know that
Gatekeeper was doing its job properly and stopping a virus from
spreading. If Disinfectant gives your Mac a clean bill of health,
though, it's up to you to determine whether the guilty program was
operating normally, or was the victim of a new virus which
Disinfectant cannot detect.

Some rules of thumb that may help you determine what privileges
certain types of programs will require are included in the
"Gatekeeper in Practice" section of this document. Read through
those rules of thumb and see if any obvious explanations present
themselves.

If you're still not sure what to do at this point - and that's
highly understandable - contact your system administrator for help.
If you don't have a system administrator to pick on, or you are a
system administrator and you still can't decide how to resolve the
matter, make sure you're using the latest version of Disinfectant
and remember that you can always pick on me (the author) - see the
Bug Reports section of this document for details.

Granting Privileges from the "Get Info" Window
----------------------------------------------

If, on the other hand, you are confident that an entry in the log
file merely indicates that a program needs an additional privilege
in order to operate correctly, you can easily grant that privilege
to the program by clicking on the "Grant Privilege" button in the
"Get Info" dialog box for that entry. 

After using the Grant Privilege button, you can, if you wish,
switch to the Privileges section where you'll find that the guilty
program has been automatically selected, and its privileges
displayed, in case you want to make any adjustments (like removing
the version number from the end of the program's name).

Other Entries
-------------

A number of other types of entries which are not discussed here may
also be found in the Gatekeeper Log. Selecting them and clicking on
the "Get Info" button will give you a brief, and hopefully
informative, explanation of their meanings.


    Keyboard Shortcuts
    -------------------------------------------------------
    home                Move to top of log file.
    end                 Move to bottom of log file.
    page up             Move up one "page."
    page down           Move down one "page."
    up-arrow            Select the previous line.
    down-arrow          Select the next line.
    return              Display an explanation of the 
                        selected line. Same as clicking on 
                        the "Get Info" button.
    enter               Same as return.
    -------------------------------------------------------






6 - Privileges Section
------------------------------------------------------------------



[Graphic Omitted]

The Privilege section is the most important part of Gatekeeper. In
this section you tell Gatekeeper what programs are allowed to
perform operations that would otherwise be considered suspiciously
virus-like. (These operations are known as "privileged
operations".) This information allows Gatekeeper to operate
automatically on behalf of you and others; preventing viruses from
operating successfully while permitting normal programs to work
unhindered. 

Gatekeeper is distributed with a large list of common programs
known to require privileges, so that most users will not need to
worry about setting-up any privileges in order to use Gatekeeper on
their Macintosh system.

In order to add a program to the privilege list, you can click on
the "Add..." button and select the program using the standard "Open..."
dialog box. Alternately, you can click on the "New..." button and
type in the name of the program directly - note that this is often
the only way to grant privileges to desk accessories.

In order to grant privileges to a program, click on the program's
name in the privilege list and check the appropriate check-boxes
that will appear at the bottom right side of the Privileges
section. For an explanation of what the various privileges mean,
see the "Gatekeeper in Principle" section of this document.

To changed the name of an item in the privilege list, select the
item and click on the "Edit..." button. A dialog box will appear in
which you can edit the item's name.

Removing an item from the privilege list is easiest of all; just
select the item and click on the "Clear" button.

To keep confusion to a minimum certain changes are made to names as
they are added to the privilege list, so don't be surprised if the
name you enter isn't exactly the name that actually ends-up in the
privilege list. Invisible characters like control characters are
replaced with spaces. So are colons. Non-breaking spaces are
replaced with conventional spaces. Spaces found at the beginning of
names are always removed, and diacritical marks although they are
preserved, are ignored when the list is searched. These
translations make Gatekeeper good at coping with subtle changes to
program names, and eliminates confusion like that which resulted
when Apple quietly replaced the non-breaking space in DA Handler's
name with a conventional space.


    Keyboard Shortcuts
    -------------------------------------------------------
    home                Move to top of privilege list.
    end                 Move to bottom of privilege list.
    page up             Move up one "page."
    page down           Move down one "page."
    up-arrow            Select the previous line.
    down-arrow          Select the next line. 
    type-to-select      Typing a name will select the item 
                        most closely matching that name.
    return              Edit the selected item. Same as 
                        clicking on the "Edit..." button.
    enter               Same as return.
    command + e         Same as return.[1]
    delete              Delete the selected item. Same as 
                        clicking on the "Clear" button.
    backspace           Same as delete.
    clear               Same as delete.
    command + n         Create a new entry. Same as 
                        clicking on the "New..." button.[1]
    command + a         Add a new entry. Same as clicking 
                        on the "Add..." button.[1]
    command + o         Same as command + a.[1]
    -------------------------------------------------------
    [1] System 7.0 does not allow control panels like 
    Gatekeeper Controls to receive most command key 
    shortcuts. Consequently, marked shortcuts do not work 
    in System 7.0 - this is not a bug in Gatekeeper.
    -------------------------------------------------------






Postcards, Bug Reports, Etc.
------------------------------------------------------------------



I can be reached with questions, suggestions, bug reports (be sure
to note the version number of Gatekeeper and/or Gatekeeper Aid that
you were using), etc. at...

US Mail:
--------
Chris Johnson
Gatekeeper
4505-B Avenue H
Austin, TX 78751
USA

Internet:
---------
chrisj@mbs.telesys.utexas.edu

UUCP:
-----
{husc6|uunet}!cs.utexas.edu!ut-emx!chrisj

AppleLink:
----------
chrisj@mbs.telesys.utexas.edu@internet#

CompuServe:
-----------
>INTERNET:chrisj@mbs.telesys.utexas.edu

MCI Mail:
---------
Command: Create
To: Chris Johnson (EMS)
EMS: Internet
MBX: chrisj@mbs.telesys.utexas.edu

Turnaround time on email messages is usually under 48 hours, if I'm
not drowning in mail at the time. If I am drowning in mail at the
time (an increasingly common situation in the last few years),
it'll definitely take longer to get back to you. Turnaround time on
US Mail is approaching five years in many cases. So, if you have
the choice, send email. If you must use US Mail, including a self
addressed stamped envelope just might help to speed up the process.

...and please send a postcard. (See the Copyright Notice below.)

(Of course, if you use this product and happen to work for Apple
Computer, feel free to convince Apple to contribute a fast
Macintosh computer system of some sort as a way of finally showing
some support for this development effort. ...Not that I'm holding
my breath.)






Finding the Latest Version
------------------------------------------------------------------



There are several good ways to find the latest version of
Gatekeeper:

1. FTP -- People with FTP access to the Internet can retrieve the
latest version via anonymous FTP to the microlib/mac/virus
directory of microlib.cc.utexas.edu. Of course, there are many
other good archive sites which should also have current versions at
any given time, but I upload new releases directly into microlib as
soon as they're ready, so I can guarantee that it's up to date.

2. Email -- If you can send me email, I can usually email the latest
version back to you. Be sure to let me know what version you are
currently using. There can be problems, however. Some services like
AppleLink and CompuServe limit the length of messages their users
can receive to something in the neighborhood of 32K. This means
that I'd have to split Gatekeeper into more than 12 parts in order
to send it via email (and the recipient would subsequently have to
reassemble all those parts). This is very time consuming, so unless
your mail system will accept messages close to 100K in length, it's
probably not a good idea to try to get Gatekeeper via email.
Remember to tell me the maximum message length your system will
accept.

3. U.S. Mail is also an option. Send a diskette along with a
self-addressed, stamped envelope (SASE) to the address below.
Unlike correspondence, I am able to periodically catch-up on all
the outstanding update requests, so you really will get your disk
back eventually. Unfortunately, disks sent without a SASE (or a
reasonable facsimile), legible return address, return postage, etc.
can't be returned. (Hey, the software is free; I can't afford to
pop for the postage, disks, etc., and I can't do invoices, either.
Believe it or not, I do get update requests without disks, postage,
etc.)

If you live in a country other than the U.S., postage for the
SASE will be hard to come by, of course. International postage
coupons will work fine, though, as will U.S. currency (standard
disclaimers about sending cash in the mail apply, unfortunately).
If you're not sure what the correct postage is, ask your local
postal officials. If you even come close, I'll make sure you get
your update.

I will occasionally replace a bad or damaged diskette out of my
own pocket, but don't count on it. In other words, don't send me
that old diskette that you found under the refrigerator last
spring. I probably won't be able to format it successfully, and
you'll always wonder why you didn't get your disk back. If I had a
lot of money, it might be different, but I don't.

Finally, if you haven't already sent a picture postcard, please
include one with your update request. (See the Copyright Notice
above for details.)

Anyway, the address to send those disks to is:

		Chris Johnson
		Gatekeeper Update from 1.3
		4505-B Avenue H
		Austin, TX  78751
		USA

The "Gatekeeper Update..." line is important, so be sure to include 
it. Note that the "from 1.3" part tells me what version you are 
currently using so that I won't make the mistake of sending you a 
version which you already have.






Credits
------------------------------------------------------------------



Many thanks to all the Gatekeeper testers. Without their help and
patience Gatekeeper couldn't have been made even remotely as
reliable and trouble-free as it is.

Scott R. Anderson
Dale M. Arends
Brian Aslakson
Steve Baumgarten
David A. Belsley
Sunil Bhatla
Thomas R. Blake
James Blieden
Jonathan Brecher
Daniel Buchan
Rick Cardona
Ian Chai
Philippe Chatalic
Brian L. Donnell
Jon Duke
Jim Elliott
Bill Engels
Zbigniew Fiedorowicz
Charette Frederick
Brian Gaines
Peter Galko
David A. Grayson
Ben Goren
Marcus Harvey
Jay Hirsh
Steve Holden
Kirk Holub
Dan Hugo
John Im
David Inman
William G. Innanen
Andrew E. Johnson
Vahe Kassardjian
Kendrick Killian
Edgar Knapp
Dick Kriss
Dave Lee
Masato Ogawa
Doc O'Leary
John Owens
John F. Pane
Peter John Roberts
Clay C. Ross
Nick Rothwell
Robert Rubinoff
Howard Shubs
Larry Simmons
Robert Stewart
Michael Stovsky
Jochen Teufel
Werner Uhrig
Johan van Zanten
Mike Weasner
Jerry Wilcox
Thomas Willett
Ed Wright
Marvin Yount
David R. Zinkin
Sam Zschokke

I would also like to thank all the people around the world who have
sent me problem reports at one time or another. Unfortunately,
there's just no testing ground quite like the real world. There are
too many people to list (and, in fact, too many to keep track of),
but they know who they are. Thanks to all.

Thanks to Ken McLeod for his translation of the original ShowINIT
code into THINK C. There's only a few lines of his code left in
Gatekeeper's ShowINIT implementation, but I'm glad I had that code
to work from. Patrick C. Beard's code was also helpful, but none of
it survives into this implementation.

Gatekeeper and Gatekeeper Aid were built with version 5.0.4 of
THINK C.






Copyright (c)
------------------------------------------------------------------



Gatekeeper (c)1988-1993
Gatekeeper Aid (c)1990-1993
by Chris Johnson.

All Rights Reserved.

Gatekeeper and Gatekeeper Aid are free for non commercial public
distribution. This software may not be sold or distributed for
profit, or included with other software or hardware which is sold
or distributed for profit, without the permission of the author.
(CD-ROM publishers are not now, nor have they ever been, an
exception to this rule.)

To put it simply, I don't make any money from this software, so
nobody else should either.

While there is no charge for Gatekeeper, I do ask that if you use
this product, you send me a picture postcard from your home town
(or from wherever you happen to be at the time). If that's too much
to ask, find a comparable product with more reasonable terms....