Release 1.0a
------------

o [JAF] Added version negotiation extension to startup protocol.
  Nautilus now knows what versions it's compatible with and has the
  ability to send a message to an older version informing the user of
  an incompatibility and letting him know where to pick up a newer
  version from.

o Added Utimer() function to unix code to provide more accurate timings
  of speech coders.

o Fixed bug in cli.c where VERSION string was used as the passphrase
  when a user presses carriage return for the passphrase.  This results
  in incompatibility between different versions of Nautilus.

o [JAF] Restructured source code and commented liberally.

o [JAF] Added "-v" option to display coder performance relative to host CPU.

o Updated nautilus.doc.

o Enhanced 8500bps coder (sp85) to sound better by adding low
  pass filtering.

o Added ability to vary microphone sensitivity and output volume
  level in config file (DOS only).

Beta 0.9.2
----------

o Added a new coder called sp64.  Sounds OK, and works at modem
  speeds of only 7200 bps.

o Renamed coders from apsd and dmsp to sp85 and sp124.  New naming
  convention has type of coder and approximate bit rate in hundreds
  of bits per second.

o Increased number of audio samples used for random number initialization
  (from 1024 to 2048).

o Added MODEM_RESET configuration parameter which specifies a string
  to be sent to the modem before Nautilus exits.  The default value
  is "Z" which sends the string "ATZ" to the modem to cause it to
  reset.

o Added code in main() to check input from audio device used to
  initialize random number generator.  If insufficient entropy is
  present, a warning message is generated.

o Changed InitAudio() in unix.c to properly work around bug in Sun
  audio driver.  Changed ReadAudio() in unix.c to return error
  status.  If you noticed a "braaaap" sound when Nautilus started
  up on your Sun in the past, these fixes will cure this problem.

o Eliminated call to keycrunch() in DES3_Key_Setup().

o Changed keycrunch() to accept a mode parameter.  The output of
  keycrunch will be completely different depending on whether or not
  the mode parameter is zero or nonzero.

o Changed the key exchange protocol in XChange().  Now the originator
  and answerer use a different hash on the passphrase so that they use
  a different key to encrypt the parameters they exchange.  This
  prevents the attack originally discovered by Dan Bernstein as well as
  the variations pointed out by Colin Plumb on sci.crypt.  The fix in
  release 0.9.1 was insufficient to stop all variations of the playback
  attack it was designed to detect.

Beta 0.9.1
----------

o Added code to XChange() to detect a replay attack.  Attack works
  as follows:  Attacker must at the receiving end.  Attacker substitutes
  received keyexch structure as his own.  This results in a session key,
  transmit iv, and receive iv which are all zeros.  Thanks go to Dan
  Bernstein for pointing out this weakness.

o Rewrote WaitFor() function from scratch.  The new function is line
  oriented, and hopefully this will fix problems some Nautilus users
  are experiencing with their modems.

o Changed speed element in modem element in params structure from
  int to unsigned.

o Modified Connect() and AnswerMode() to be a bit more robust in
  controlling the modem.

o Modified DOS ClosePort() to not mess with modem control registers.

o Fixed include bug in sun4gcc target in makefile.unx.

Beta 0.9.0
----------

o Added private key crypto interface.  Utilizes a session key generated
  by a cryptographically strong psuedo-random number generator run at
  both ends and a session key exchange protocol that is resistant to
  replay attacks.

o Added BLOWFISH cipher.

o Added IDEA cipher.

o Added 3DES cipher.


Alpha 0.3.2
-----------

o Fixed comm.c so that Nautilus issues a "ATD" command to the modem
  in the absence of a phone number.  "ATO" doesn't pick up the phone
  line and thus doesn't work.

o Changed sun-dmsp.c and idmsp.c to optimize coder performance.
  Obtained approximately 0.3 dB boost in SNR and 0.27 dB boost in
  SNRSEG.


Alpha 0.3.1
-----------

o Changed comm.c to allow user to specify -o (originate) without
  specifying a phone number.  This causes the Nautilus to issue a "ATO"
  command to the modem to put it in originate mode.

o Changed beep frequency from 500HZ to 750HZ and duration from 100ms
  to 80ms.


Alpha 0.3.0
-----------

o Added coder negotiation code to allow Nautilus to automatically
  select the best coder to use based on the CPU and bandwidth limitations
  of both ends.  Added code to allow users to override the automatically
  selected coder if desired.  Modified init.c, nautilus.h, comm.c,
  cli.c, unix.c, and pc-audio.c
