· The debug packet display shows both the plain text and encrypted versions of the packet.
· Corrupt packets (likely due to bad encodings by mismatched secrets) are detected.
· More complete checking of the header information to assist debugging.
· Fixed a display problem in Continue packets.
· New example clients have been added that illustrate ARAP, MSCHAP, PAP, CHAP, and ASCII authentication methods as well as authorization and accounting.
· Fixed a problem with ARAP. It was not creating the DES key properly.
· The AVPair class did not understand that an attribute may have an empty value. This has been fixed.
· Sun's crypto provider does not provide the MD4 message digest. Other code has been provided to overcome this omission on Sun's part. This affected MSCHAP authentication - it would throw a null pointer exception.
· Fixed a problem that caused the faulty contruction of the jar and source files that resulted in the demo random number generator being included instead of the SecureRandom version. V 1.07 Feb 14, 2005
· Removed specific BouncyCastle crypto functions. Now the default provider is used. This changed how the MD4 and MD5 digests are created. BouncyCastle provides a much faster MD5/MD4 than the default algthough for a client is is probably not that important. DES encryption is now accessed from the default crypto provider as well.
· The mschap.java class has been renamed to MSChap and the construct is public.
· The TACACSClient method authenticationContinue() has been fixed to use the correct flags (TAC_PLUS_CONTINUE_FLAG_ABORT and TAC_PLUS_CONTINUE_FLAG_OK). The CONTINUE / REPLY protocol works better now.
· Some cosmetic changes inside to make better use of constants.
· Changed the DES crypto to use the SUN crypto package. Some methods that didn't formerly throw the TACACException now do. Please recomplile your code with the new jar file to find these methods.
· Internal changes to some private and protected methods to allow for debugging display of packets.
· When debugging is enabled using the TACACSClient.setDebugging() method request and reply packet unencrypted contents are be displayed.
· Fixed an error in decoding the different authentication replies - two messages were picked up where only one was present. The getAdminMessage() method has been removed.
· Added missing Authorization STATUS contstants, like TAC_PLUS_AUTHOR_STATUS_FAIL.
· Improved the examples/modserver/ModAttributes example.
· Changes the name of TACACSSession.encrypt(boolean encrypt) to TACACSSession.enableEncryption(boolean enable) so it matches the same method used in the TACACSClient.
· The global settings of the header flags weren't sent to the TACACSSession when it was created. This is fixed. Now global settings will initially apply to the session.
· Removed the list of legal attributes from AuthenticationAttributes and AuthorizationAttributes. The AttributeList class replaces both.
· Fixed a problem with authorization attributes not being returned.
· Initial coding.