In the ../bin directory are four example programs:

1.  penguind [-p portnumber] [-v] [-Z password]

This is a 'daemon' which waits around for Penguin programs to contact
it and send it a code frame.  It unwraps the code frame and executes it.
It then creates a data frame out of the return value of the code and
sends that back.  It prints a lot of stuff on the screen to show you
what's going on.

Occasionally, a port will get wedged (because we can't set SO_NOLINGER
on the socket just yet) during heavy testing.  Either wait about 30
seconds and try to start penguind again, or give it a port number as
its first argument and it'll start there.

There should be a penguind running on coriolan.amicus.com on port
8118 (the default port which is used if you don't supply a portnumber)
at all times.  If you want to have non-default rights on that
penguind, let me know.

2.  client -h HOSTNAME -f FILENAME [-p portnumber] [-v] [-Z password]

'client' wraps the code in FILENAME and sends it to the penguind
running on HOSTNAME at port 'portnumber'.  It then listens for a
return value data packet and prints out what it got.

3.  makeapplet.pl PERLCODEFILE

'makeapplet.pl' wraps the code in PERLCODEFILE *insecurely* and writes
a Penguin frame to the file PERLCODEFILE.pen.

4.  runapplet.pl PENGUINFILE

'runapplet.pl' unwraps the code in PENGUINFILE and runs it in a secure
compartment (you could use this as a web browser helper app).

In this 'misc' directory, you'll also find six other files:

evilapp.pl    The perl source code for an 'evil' applet (it
              runs /bin/date using backticks, which is deemed
              a bad idea).

evilapp.pen   The Penguin applet file that wraps 'evilapp.pl'.
              Run this using 'runapplet.pl' from the bin directory
              (it should fail with a suitably ominous error message).

codefile      A file suitable for sending with client -f.
              Read it first (and of course have a penguind running).

rightsfile    An example rightsfile.  GO AND READ Safe.pm BEFORE
              YOU ATTEMPT TO EDIT A RIGHTSFILE.  However, this
              one should be relatively safe to copy into your
              home directory as '.rightsfile'.

mycat.asc     the PGP public key of my EXTREMELY NONTRUSTABLE cat,
              Map.  DO NOT GIVE THIS CAT RIGHTS TO DO ANYTHING TO
              YOUR SERVICE!  HE LOOKS CUTE BUT HE'S MEAN AS A SNAKE!

felix.asc     the PGP public key of Felix S. Gallo <fsg@coriolan.amicus.com>.
              That's me!  I believe strongly that nobody has ever compromised
              my private key, and that I will never knowingly sign code
              which will damage your machine.

Please add these to your PGP key ring, and, if you like, make appropriate
entries in your $HOME/.rightsfile.
