You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by el...@apache.org on 2007/09/24 12:18:45 UTC

svn commit: r578743 [1/12] - in /directory/apacheds/branches/apacheds-kerberos: kerberos-shared/ kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/ kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto...

Author: elecharny
Date: Mon Sep 24 03:18:05 2007
New Revision: 578743

URL: http://svn.apache.org/viewvc?rev=578743&view=rev
Log:
Applied the changes I have made on the kerberos code to a branch, in order to share this work with others.

Be aware that it's not compiling yet...

Added:
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/KerberosUtils.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/AuthServerReply.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/AuthServerRequest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/KerberosCred.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/KerberosError.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/KerberosPriv.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/TicketGrantingServerRequest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/application/ApplicationRequest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/components/InvalidTicketException.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/AdAndOr.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/KerberosRequestBody.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/PreAuthEncryptedTimestamp.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/flags/
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/flags/AbstractKerberosFlags.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/flags/ApOption.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/flags/ApOptions.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/flags/KdcOption.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/flags/KdcOptions.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/flags/KerberosFlag.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/flags/KerberosFlags.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/flags/Options.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/flags/TicketFlag.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/flags/TicketFlags.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/types/
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/types/AuthorizationType.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/types/HostAddressType.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/types/KerberosErrorType.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/types/LastRequestType.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/types/PreAuthenticationDataType.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/types/PrincipalNameType.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/types/SamType.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/types/TransitedEncodingType.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/service/VerifyTicket.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/crypto/checksum/
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/crypto/checksum/KerberosUtilsTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/AuthServerRequestTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/KdcRequestTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/KerberosCredTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/KerberosErrorTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/KerberosPrivTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/TicketGrantingServerRequestTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/components/
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/components/AuthenticatorTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/components/TicketTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/value/
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/value/AdAndOrTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/value/AuthorizationDataTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/value/ChecksumTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/value/EncryptedDataTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/value/EncryptionKeyTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/value/EncryptionTypeInfo2EntryTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/value/EncryptionTypeInfoEntryTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/value/HostAddressTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/value/HostAddressesTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/value/KerberosRequestBodyTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/value/KerberosTimeTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/value/PreAuthEncryptedTimestampTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/value/PreAuthenticationDataTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/value/PrincipalNameTest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/messages/value/TransitedEncodingTest.java
Removed:
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/exceptions/ErrorType.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/decoder/EncryptionTypeInfo2Decoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/decoder/EncryptionTypeInfoDecoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/encoder/EncryptionTypeInfo2Encoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/ApplicationRequest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/AuthenticationReply.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/ErrorMessage.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/ErrorMessageModifier.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/components/AuthenticatorModifier.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/components/EncKrbPrivPartModifier.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/components/EncTicketPartModifier.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/ApOptions.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/AuthorizationType.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/EncryptedDataModifier.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/EncryptedTimeStamp.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/KdcOptions.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/LastRequestType.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/Options.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/PreAuthenticationDataModifier.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/PreAuthenticationDataType.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/PrincipalNameModifier.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/PrincipalNameType.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/RequestBody.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/RequestBodyModifier.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/SamType.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/TicketFlags.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/TransitedEncodingType.java
Modified:
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/pom.xml
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/checksum/ChecksumEngine.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/checksum/ChecksumHandler.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/checksum/ChecksumType.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/checksum/Crc32Checksum.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/AesCtsSha1Encryption.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/ArcFourHmacMd5Encryption.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/CipherTextHandler.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/Des3CbcSha1KdEncryption.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/DesCbcCrcEncryption.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/DesCbcMd5Encryption.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/EncryptionType.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/NullEncryption.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/RandomKeyFactory.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/exceptions/KerberosException.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/decoder/ApplicationRequestDecoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/decoder/AuthenticatorDecoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/decoder/AuthorizationDataDecoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/decoder/EncKdcRepPartDecoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/decoder/EncKrbPrivPartDecoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/decoder/EncTicketPartDecoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/decoder/EncryptedDataDecoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/decoder/EncryptedTimestampDecoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/decoder/EncryptionTypeDecoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/decoder/ErrorMessageDecoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/decoder/HostAddressDecoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/decoder/KdcReplyDecoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/decoder/KdcRequestDecoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/decoder/LastRequestDecoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/decoder/PreAuthenticationDataDecoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/decoder/PrincipalNameDecoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/decoder/TicketDecoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/encoder/ApplicationRequestEncoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/encoder/AuthenticatorEncoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/encoder/EncKdcRepPartEncoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/encoder/EncKrbPrivPartEncoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/encoder/EncTicketPartEncoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/encoder/EncryptedDataEncoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/encoder/EncryptedTimestampEncoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/encoder/EncryptionTypeEncoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/encoder/ErrorMessageEncoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/encoder/KdcReplyEncoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/encoder/KdcRequestEncoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/encoder/PrincipalNameEncoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/io/encoder/TicketEncoder.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/KdcReply.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/KdcRequest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/KerberosMessage.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/TicketGrantReply.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/components/Authenticator.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/components/EncAsRepPart.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/components/EncKdcRepPart.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/components/EncKrbPrivPart.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/components/EncTgsRepPart.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/components/EncTicketPart.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/components/Ticket.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/components/TicketModifier.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/AuthorizationData.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/AuthorizationDataEntry.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/Checksum.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/EncryptedData.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/EncryptedTimeStampModifier.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/EncryptionKey.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/EncryptionTypeInfoEntry.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/HostAddress.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/HostAddresses.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/KerberosPrincipalModifier.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/KerberosTime.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/KrbCredInfo.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/LastRequest.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/LastRequestEntry.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/PreAuthenticationData.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/PrincipalName.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/TransitedEncoding.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/messages/value/package-info.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/service/GetPrincipalStoreEntry.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/service/VerifyAuthHeader.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/store/PrincipalStore.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/store/PrincipalStoreEntry.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/store/PrincipalStoreEntryModifier.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/store/TicketFactory.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/store/operations/GetAllPrincipals.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/store/operations/GetPrincipal.java
    directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/test/java/org/apache/directory/server/kerberos/shared/crypto/encryption/CipherTextHandlerTest.java
    directory/apacheds/branches/apacheds-kerberos/protocol-changepw/src/main/java/org/apache/directory/server/changepw/ChangePasswordConfiguration.java
    directory/apacheds/branches/apacheds-kerberos/protocol-changepw/src/main/java/org/apache/directory/server/changepw/io/ChangePasswordDataEncoder.java
    directory/apacheds/branches/apacheds-kerberos/protocol-changepw/src/main/java/org/apache/directory/server/changepw/io/ChangePasswordErrorDecoder.java
    directory/apacheds/branches/apacheds-kerberos/protocol-changepw/src/main/java/org/apache/directory/server/changepw/io/ChangePasswordErrorEncoder.java
    directory/apacheds/branches/apacheds-kerberos/protocol-changepw/src/main/java/org/apache/directory/server/changepw/io/ChangePasswordRequestDecoder.java
    directory/apacheds/branches/apacheds-kerberos/protocol-changepw/src/main/java/org/apache/directory/server/changepw/io/ChangePasswordRequestEncoder.java
    directory/apacheds/branches/apacheds-kerberos/protocol-changepw/src/main/java/org/apache/directory/server/changepw/messages/ChangePasswordError.java
    directory/apacheds/branches/apacheds-kerberos/protocol-changepw/src/main/java/org/apache/directory/server/changepw/messages/ChangePasswordErrorModifier.java
    directory/apacheds/branches/apacheds-kerberos/protocol-changepw/src/main/java/org/apache/directory/server/changepw/messages/ChangePasswordRequest.java
    directory/apacheds/branches/apacheds-kerberos/protocol-changepw/src/main/java/org/apache/directory/server/changepw/messages/ChangePasswordRequestModifier.java
    directory/apacheds/branches/apacheds-kerberos/protocol-changepw/src/main/java/org/apache/directory/server/changepw/protocol/ChangePasswordProtocolHandler.java
    directory/apacheds/branches/apacheds-kerberos/protocol-changepw/src/main/java/org/apache/directory/server/changepw/service/BuildReply.java
    directory/apacheds/branches/apacheds-kerberos/protocol-changepw/src/main/java/org/apache/directory/server/changepw/service/ChangePasswordContext.java
    directory/apacheds/branches/apacheds-kerberos/protocol-changepw/src/main/java/org/apache/directory/server/changepw/service/GetAuthHeader.java
    directory/apacheds/branches/apacheds-kerberos/protocol-changepw/src/main/java/org/apache/directory/server/changepw/service/GetServerEntry.java
    directory/apacheds/branches/apacheds-kerberos/protocol-changepw/src/main/java/org/apache/directory/server/changepw/service/MonitorContext.java
    directory/apacheds/branches/apacheds-kerberos/protocol-changepw/src/main/java/org/apache/directory/server/changepw/service/VerifyServiceTicket.java
    directory/apacheds/branches/apacheds-kerberos/protocol-changepw/src/main/java/org/apache/directory/server/changepw/service/VerifyServiceTicketAuthHeader.java
    directory/apacheds/branches/apacheds-kerberos/protocol-changepw/src/test/java/org/apache/directory/server/changepw/protocol/ChangepwProtocolHandlerTest.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/KdcConfiguration.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/MonitorReply.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/MonitorRequest.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/SelectEncryptionType.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/authentication/BuildReply.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/authentication/GenerateTicket.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/authentication/GetClientEntry.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/authentication/GetServerEntry.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/authentication/SealReply.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/authentication/VerifyPolicy.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/preauthentication/VerifierBase.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/preauthentication/VerifyEncryptedTimestamp.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/preauthentication/VerifySam.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/ticketgrant/BuildReply.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/ticketgrant/GenerateTicket.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/ticketgrant/GetAuthHeader.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/ticketgrant/GetRequestPrincipalEntry.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/ticketgrant/GetTicketPrincipalEntry.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/ticketgrant/MonitorContext.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/ticketgrant/TicketGrantingContext.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/ticketgrant/VerifyBodyChecksum.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/ticketgrant/VerifyTgtAuthHeader.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/protocol/KerberosProtocolHandler.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/protocol/KerberosTcpEncoder.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/protocol/KerberosUdpEncoder.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/sam/SamException.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/sam/SamSubsystem.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/sam/SamVerifier.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/sam/TimestampChecker.java
    directory/apacheds/branches/apacheds-kerberos/protocol-kerberos/src/test/java/org/apache/directory/server/kerberos/messages/value/OptionsTest.java

Modified: directory/apacheds/branches/apacheds-kerberos/kerberos-shared/pom.xml
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-kerberos/kerberos-shared/pom.xml?rev=578743&r1=578742&r2=578743&view=diff
==============================================================================
--- directory/apacheds/branches/apacheds-kerberos/kerberos-shared/pom.xml (original)
+++ directory/apacheds/branches/apacheds-kerberos/kerberos-shared/pom.xml Mon Sep 24 03:18:05 2007
@@ -43,6 +43,12 @@
       <artifactId>apacheds-protocol-shared</artifactId>
       <version>${pom.version}</version>
     </dependency>
+
+    <dependency>
+      <groupId>org.slf4j</groupId>
+      <artifactId>nlog4j</artifactId>
+      <scope>provided</scope>
+    </dependency>
   </dependencies>
 </project>
 

Added: directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/KerberosUtils.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/KerberosUtils.java?rev=578743&view=auto
==============================================================================
--- directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/KerberosUtils.java (added)
+++ directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/KerberosUtils.java Mon Sep 24 03:18:05 2007
@@ -0,0 +1,200 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *  
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *  
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License. 
+ *  
+ */
+package org.apache.directory.server.kerberos.shared;
+
+import java.text.ParseException;
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.security.auth.kerberos.KerberosPrincipal;
+
+import org.apache.directory.shared.ldap.util.StringTools;
+
+/**
+ * An utility class for Kerberos.
+ *
+ * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+ */
+public class KerberosUtils
+{
+    /** A constant for integer optional values */
+    public static final int NULL = -1;
+
+    private static final List<String> EMPTY_PRINCIPAL_NAME = new ArrayList<String>();
+    
+    /**
+     * Parse a KerberosPrincipal instance and return the names. The Principal name
+     * is described in RFC 1964 : <br/>
+     * <br/>
+     * This name type corresponds to the single-string representation of a<br/>
+     * Kerberos name.  (Within the MIT Kerberos V5 implementation, such<br/>
+     * names are parseable with the krb5_parse_name() function.)  The<br/>
+     * elements included within this name representation are as follows,<br/>
+     * proceeding from the beginning of the string:<br/>
+     * <br/>
+     *  (1) One or more principal name components; if more than one<br/>
+     *  principal name component is included, the components are<br/>
+     *  separated by `/`.  Arbitrary octets may be included within<br/>
+     *  principal name components, with the following constraints and<br/>
+     *  special considerations:<br/>
+     * <br/>
+     *     (1a) Any occurrence of the characters `@` or `/` within a<br/>
+     *     name component must be immediately preceded by the `\`<br/>
+     *     quoting character, to prevent interpretation as a component<br/>
+     *     or realm separator.<br/>
+     * <br/>
+     *     (1b) The ASCII newline, tab, backspace, and null characters<br/>
+     *     may occur directly within the component or may be<br/>
+     *     represented, respectively, by `\n`, `\t`, `\b`, or `\0`.<br/>
+     * <br/>
+     *     (1c) If the `\` quoting character occurs outside the contexts<br/>
+     *     described in (1a) and (1b) above, the following character is<br/>
+     *     interpreted literally.  As a special case, this allows the<br/>
+     *     doubled representation `\\` to represent a single occurrence<br/>
+     *     of the quoting character.<br/>
+     * <br/>
+     *     (1d) An occurrence of the `\` quoting character as the last<br/>
+     *     character of a component is illegal.<br/>
+     * <br/>
+     *  (2) Optionally, a `@` character, signifying that a realm name<br/>
+     *  immediately follows. If no realm name element is included, the<br/>
+     *  local realm name is assumed.  The `/` , `:`, and null characters<br/>
+     *  may not occur within a realm name; the `@`, newline, tab, and<br/>
+     *  backspace characters may be included using the quoting<br/>
+     *  conventions described in (1a), (1b), and (1c) above.<br/>
+     * 
+     * @param principal The principal to be parsed
+     * @return The names as a List of nameComponent
+     * 
+     * @throws ParseException if the name is not valid
+     */
+    public static List<String> getNames( KerberosPrincipal principal ) throws ParseException
+    {
+        if ( principal == null )
+        {
+            return EMPTY_PRINCIPAL_NAME;
+        }
+        
+        String names = principal.getName();
+        
+        if ( StringTools.isEmpty( names ) )
+        {
+            // Empty name...
+            return EMPTY_PRINCIPAL_NAME;
+        }
+        
+        return getNames( names );
+    }
+
+    /**
+     * Parse a PrincipalName and return the names.
+     * 
+     */
+    public static List<String> getNames( String principalNames ) throws ParseException
+    {
+        if ( principalNames == null )
+        {
+            return EMPTY_PRINCIPAL_NAME;
+        }
+        
+        List<String> nameComponents = new ArrayList<String>();
+        
+        // Start the parsing. Another State Machine :)
+        char[] chars = principalNames.toCharArray();
+        
+        boolean escaped = false;
+        boolean done = false;
+        int start = 0;
+        int pos = 0;
+        
+        for ( int i = 0; i < chars.length; i++ )
+        {
+            pos = i;
+            
+            switch ( chars[i] )
+            {
+                case '\\' :
+                    escaped = !escaped;
+                    break;
+                    
+                case '/'  :
+                    if ( escaped )
+                    {
+                        escaped = false;
+                    }
+                    else 
+                    {
+                        // We have a new name component
+                        if ( i - start > 0 )
+                        {
+                            String nameComponent = new String( chars, start, i - start );
+                            nameComponents.add( nameComponent );
+                            start = i + 1;
+                        }
+                        else
+                        {
+                            throw new ParseException( "An empty name is not valid in a kerberos name", i );
+                        }
+                    }
+                    
+                    break;
+                    
+                case '@'  :
+                    if ( escaped )
+                    {
+                        escaped = false;
+                    }
+                    else
+                    {
+                        // We have reached the realm : let's get out
+                        done = true;
+                        // We have a new name component
+
+                        if ( i - start > 0 )
+                        {
+                            String nameComponent = new String( chars, start, i - start );
+                            nameComponents.add( nameComponent );
+                            start = i + 1;
+                        }
+                        else
+                        {
+                            throw new ParseException( "An empty name is not valid in a kerberos name", i );
+                        }
+                    }
+                    
+                    break;
+                    
+                default :
+            }
+            
+            if ( done )
+            {
+                break;
+            }
+        } 
+        
+        if ( escaped )
+        {
+            throw new ParseException( "A '/' at the end of a Kerberos Name is not valid.", pos );
+        }
+        
+        return nameComponents;
+    }
+}

Modified: directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/checksum/ChecksumEngine.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/checksum/ChecksumEngine.java?rev=578743&r1=578742&r2=578743&view=diff
==============================================================================
--- directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/checksum/ChecksumEngine.java (original)
+++ directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/checksum/ChecksumEngine.java Mon Sep 24 03:18:05 2007
@@ -40,9 +40,10 @@
     /**
      * Calculate a checksum given raw bytes and an (optional) key.
      *
-     * @param data
-     * @param key
-     * @param usage 
+     * @param data The data to encrypt
+     * @param key The key to use
+     * @param usage ???
+     * 
      * @return The checksum value.
      */
     public byte[] calculateChecksum( byte[] data, byte[] key, KeyUsage usage );

Modified: directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/checksum/ChecksumHandler.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/checksum/ChecksumHandler.java?rev=578743&r1=578742&r2=578743&view=diff
==============================================================================
--- directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/checksum/ChecksumHandler.java (original)
+++ directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/checksum/ChecksumHandler.java Mon Sep 24 03:18:05 2007
@@ -28,9 +28,9 @@
 import org.apache.directory.server.kerberos.shared.crypto.encryption.Aes256CtsSha1Encryption;
 import org.apache.directory.server.kerberos.shared.crypto.encryption.Des3CbcSha1KdEncryption;
 import org.apache.directory.server.kerberos.shared.crypto.encryption.KeyUsage;
-import org.apache.directory.server.kerberos.shared.exceptions.ErrorType;
 import org.apache.directory.server.kerberos.shared.exceptions.KerberosException;
 import org.apache.directory.server.kerberos.shared.messages.value.Checksum;
+import org.apache.directory.server.kerberos.shared.messages.value.types.KerberosErrorType;
 
 
 /**
@@ -73,7 +73,7 @@
     {
         if ( !DEFAULT_CHECKSUMS.containsKey( checksumType ) )
         {
-            throw new KerberosException( ErrorType.KDC_ERR_SUMTYPE_NOSUPP );
+            throw new KerberosException( KerberosErrorType.KDC_ERR_SUMTYPE_NOSUPP );
         }
 
         ChecksumEngine digester = getEngine( checksumType );
@@ -94,12 +94,12 @@
     {
         if ( checksum == null )
         {
-            throw new KerberosException( ErrorType.KRB_AP_ERR_INAPP_CKSUM );
+            throw new KerberosException( KerberosErrorType.KRB_AP_ERR_INAPP_CKSUM );
         }
 
         if ( !DEFAULT_CHECKSUMS.containsKey( checksum.getChecksumType() ) )
         {
-            throw new KerberosException( ErrorType.KDC_ERR_SUMTYPE_NOSUPP );
+            throw new KerberosException( KerberosErrorType.KDC_ERR_SUMTYPE_NOSUPP );
         }
 
         ChecksumType checksumType = checksum.getChecksumType();
@@ -108,7 +108,7 @@
 
         if ( !newChecksum.equals( checksum ) )
         {
-            throw new KerberosException( ErrorType.KRB_AP_ERR_MODIFIED );
+            throw new KerberosException( KerberosErrorType.KRB_AP_ERR_MODIFIED );
         }
     }
 
@@ -119,7 +119,7 @@
 
         if ( clazz == null )
         {
-            throw new KerberosException( ErrorType.KDC_ERR_SUMTYPE_NOSUPP );
+            throw new KerberosException( KerberosErrorType.KDC_ERR_SUMTYPE_NOSUPP );
         }
 
         try
@@ -128,11 +128,11 @@
         }
         catch ( IllegalAccessException iae )
         {
-            throw new KerberosException( ErrorType.KDC_ERR_SUMTYPE_NOSUPP, iae );
+            throw new KerberosException( KerberosErrorType.KDC_ERR_SUMTYPE_NOSUPP, iae );
         }
         catch ( InstantiationException ie )
         {
-            throw new KerberosException( ErrorType.KDC_ERR_SUMTYPE_NOSUPP, ie );
+            throw new KerberosException( KerberosErrorType.KDC_ERR_SUMTYPE_NOSUPP, ie );
         }
     }
 }

Modified: directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/checksum/ChecksumType.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/checksum/ChecksumType.java?rev=578743&r1=578742&r2=578743&view=diff
==============================================================================
--- directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/checksum/ChecksumType.java (original)
+++ directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/checksum/ChecksumType.java Mon Sep 24 03:18:05 2007
@@ -31,97 +31,97 @@
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  * @version $Rev$, $Date$
  */
-public final class ChecksumType implements Comparable<ChecksumType>
+public enum ChecksumType implements Comparable<ChecksumType>
 {
     /**
      * The "unknown" checksum type.
      */
-    public static final ChecksumType UNKNOWN = new ChecksumType( -1, "UNKNOWN" );
+    UNKNOWN( -1 ),
 
     /**
      * The "null" checksum type.
      */
-    public static final ChecksumType NULL = new ChecksumType( 0, "NULL" );
+    NULL( 0 ),
 
     /**
      * The CRC32 checksum type.
      */
-    public static final ChecksumType CRC32 = new ChecksumType( 1, "CRC32" );
+    CRC32( 1 ),
 
     /**
      * The rsa-md4 checksum type.
      */
-    public static final ChecksumType RSA_MD4 = new ChecksumType( 2, "rsa-md4" );
+    RSA_MD4( 2 ),
 
     /**
      * The rsa-md4-des checksum type.
      */
-    public static final ChecksumType RSA_MD4_DES = new ChecksumType( 3, "rsa-md4-des" );
+    RSA_MD4_DES( 3 ),
 
     /**
      * The des-mac checksum type.
      */
-    public static final ChecksumType DES_MAC = new ChecksumType( 4, "des-mac" );
+    DES_MAC( 4 ),
 
     /**
      * The des-mac-k checksum type.
      */
-    public static final ChecksumType DES_MAC_K = new ChecksumType( 5, "des-mac-k" );
+    DES_MAC_K( 5 ),
 
     /**
      * The rsa-md4-des-k checksum type.
      */
-    public static final ChecksumType RSA_MD4_DES_K = new ChecksumType( 6, "rsa-md4-des-k" );
+    RSA_MD4_DES_K( 6 ),
 
     /**
      * The rsa-md5 checksum type.
      */
-    public static final ChecksumType RSA_MD5 = new ChecksumType( 7, "rsa-md5" );
+    RSA_MD5( 7 ),
 
     /**
      * The rsa-md5-des checksum type.
      */
-    public static final ChecksumType RSA_MD5_DES = new ChecksumType( 8, "rsa-md5-des" );
+    RSA_MD5_DES( 8 ),
 
     /**
      * The rsa-md5-des3 checksum type.
      */
-    public static final ChecksumType RSA_MD5_DES3 = new ChecksumType( 9, "rsa-md5-des3" );
+    RSA_MD5_DES3( 9 ),
 
     /**
      * The sha1 (unkeyed) checksum type.
      */
-    public static final ChecksumType SHA1 = new ChecksumType( 10, "sha1 (unkeyed)" );
+    SHA1( 10 ),
 
     /**
      * The hmac-sha1-des3-kd checksum type.
      */
-    public static final ChecksumType HMAC_SHA1_DES3_KD = new ChecksumType( 12, "hmac-sha1-des3-kd" );
+    HMAC_SHA1_DES3_KD( 12 ),
 
     /**
      * The hmac-sha1-des3 checksum type.
      */
-    public static final ChecksumType HMAC_SHA1_DES3 = new ChecksumType( 13, "hmac-sha1-des3" );
+    HMAC_SHA1_DES3( 13 ),
 
     /**
      * The sha1 (unkeyed) checksum type.
      */
-    public static final ChecksumType SHA1_2 = new ChecksumType( 14, "sha1 (unkeyed)" );
+    SHA1_2 ( 14 ),
 
     /**
      * The hmac-sha1-96-aes128 checksum type.
      */
-    public static final ChecksumType HMAC_SHA1_96_AES128 = new ChecksumType( 15, "hmac-sha1-96-aes128" );
+    HMAC_SHA1_96_AES128( 15 ),
 
     /**
      * The hmac-sha1-96-aes256 checksum type.
      */
-    public static final ChecksumType HMAC_SHA1_96_AES256 = new ChecksumType( 16, "hmac-sha1-96-aes256" );
+    HMAC_SHA1_96_AES256( 16 ),
 
     /**
      * The hmac-md5 checksum type.
      */
-    public static final ChecksumType HMAC_MD5 = new ChecksumType( -138, "hmac-md5" );
+    HMAC_MD5( -138 );
 
     /**
      * Array for building a List of VALUES.
@@ -134,12 +134,7 @@
     /**
      * A List of all the checksum type constants.
      */
-    public static final List<ChecksumType> VALUES = Collections.unmodifiableList( Arrays.asList( values ) );
-
-    /**
-     * The name of the checksum type.
-     */
-    private final String name;
+    public static final List VALUES = Collections.unmodifiableList( Arrays.asList( values ) );
 
     /**
      * The value/code for the checksum type.
@@ -150,10 +145,9 @@
     /**
      * Private constructor prevents construction outside of this class.
      */
-    private ChecksumType( int ordinal, String name )
+    private ChecksumType( int ordinal )
     {
         this.ordinal = ordinal;
-        this.name = name;
     }
 
 
@@ -165,15 +159,28 @@
      */
     public static ChecksumType getTypeByOrdinal( int type )
     {
-        for ( int ii = 0; ii < values.length; ii++ )
-        {
-            if ( values[ii].ordinal == type )
-            {
-                return values[ii];
-            }
-        }
-
-        return UNKNOWN;
+    	switch ( type )
+    	{
+    		case -1	: return UNKNOWN;
+    		case 0	: return NULL;
+    		case 1	: return CRC32;
+    		case 2	: return RSA_MD4;
+    		case 3	: return RSA_MD4_DES;
+    		case 4	: return DES_MAC;
+    		case 5	: return DES_MAC_K;
+    		case 6	: return RSA_MD4_DES_K;
+    		case 7	: return RSA_MD5;
+    		case 8	: return RSA_MD5_DES;
+    		case 9	: return RSA_MD5_DES3;
+    		case 10	: return SHA1;
+    		case 12	: return HMAC_SHA1_DES3_KD;
+    		case 13	: return HMAC_SHA1_DES3;
+    		case 14	: return SHA1_2;
+    		case 15	: return HMAC_SHA1_96_AES128;
+    		case 16	: return HMAC_SHA1_96_AES256;
+    		case -138 : return HMAC_MD5;
+    		default	: return UNKNOWN;
+    	}
     }
 
 
@@ -185,17 +192,5 @@
     public int getOrdinal()
     {
         return ordinal;
-    }
-
-
-    public int compareTo( ChecksumType that )
-    {
-        return ordinal - that.ordinal;
-    }
-
-
-    public String toString()
-    {
-        return name;
     }
 }

Modified: directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/checksum/Crc32Checksum.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/checksum/Crc32Checksum.java?rev=578743&r1=578742&r2=578743&view=diff
==============================================================================
--- directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/checksum/Crc32Checksum.java (original)
+++ directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/checksum/Crc32Checksum.java Mon Sep 24 03:18:05 2007
@@ -27,36 +27,43 @@
 
 
 /**
+ * Compute a checksum using a CRC32 algorithm
+ * 
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  * @version $Rev$, $Date$
  */
 class Crc32Checksum implements ChecksumEngine
 {
+    /**
+     * Return the checksum type. Here, CRC32.
+     */
     public ChecksumType checksumType()
     {
         return ChecksumType.CRC32;
     }
 
-
+    /**
+     * Compute the checksum
+     * 
+     * @param data the data for which the checksum is computed
+     * @param key Not used
+     * @param usage Not used
+     * 
+     * @return the data checksum, as a four bytes array.
+     */
     public byte[] calculateChecksum( byte[] data, byte[] key, KeyUsage usage )
     {
         CRC32 crc32 = new CRC32();
         crc32.update( data );
+        int value = ( int ) crc32.getValue();
 
-        return int2octet( ( int ) crc32.getValue() );
-    }
-
-
-    private byte[] int2octet( int value )
-    {
         byte[] bytes = new byte[4];
-        int i, shift;
-
-        for ( i = 0, shift = 24; i < 4; i++, shift -= 8 )
-        {
-            bytes[i] = ( byte ) ( 0xFF & ( value >> shift ) );
-        }
-
+        
+        bytes[0] = ( byte ) ( ( value >> 24 ) & 0x00FF );
+        bytes[1] = ( byte ) ( ( value >> 16 ) & 0x00FF );
+        bytes[2] = ( byte ) ( ( value >> 8 ) & 0x00FF );
+        bytes[3] = ( byte ) ( value & 0x00FF );
+        
         return bytes;
     }
-}
+}
\ No newline at end of file

Modified: directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/AesCtsSha1Encryption.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/AesCtsSha1Encryption.java?rev=578743&r1=578742&r2=578743&view=diff
==============================================================================
--- directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/AesCtsSha1Encryption.java (original)
+++ directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/AesCtsSha1Encryption.java Mon Sep 24 03:18:05 2007
@@ -31,10 +31,10 @@
 import javax.crypto.spec.SecretKeySpec;
 
 import org.apache.directory.server.kerberos.shared.crypto.checksum.ChecksumEngine;
-import org.apache.directory.server.kerberos.shared.exceptions.ErrorType;
 import org.apache.directory.server.kerberos.shared.exceptions.KerberosException;
 import org.apache.directory.server.kerberos.shared.messages.value.EncryptedData;
 import org.apache.directory.server.kerberos.shared.messages.value.EncryptionKey;
+import org.apache.directory.server.kerberos.shared.messages.value.types.KerberosErrorType;
 
 
 /**
@@ -44,9 +44,12 @@
 abstract class AesCtsSha1Encryption extends EncryptionEngine implements ChecksumEngine
 {
     private static final byte[] iv = new byte[]
-        { ( byte ) 0x00, ( byte ) 0x00, ( byte ) 0x00, ( byte ) 0x00, ( byte ) 0x00, ( byte ) 0x00, ( byte ) 0x00,
-            ( byte ) 0x00, ( byte ) 0x00, ( byte ) 0x00, ( byte ) 0x00, ( byte ) 0x00, ( byte ) 0x00, ( byte ) 0x00,
-            ( byte ) 0x00, ( byte ) 0x00 };
+        { 
+            ( byte ) 0x00, ( byte ) 0x00, ( byte ) 0x00, ( byte ) 0x00, 
+            ( byte ) 0x00, ( byte ) 0x00, ( byte ) 0x00, ( byte ) 0x00, 
+            ( byte ) 0x00, ( byte ) 0x00, ( byte ) 0x00, ( byte ) 0x00, 
+            ( byte ) 0x00, ( byte ) 0x00, ( byte ) 0x00, ( byte ) 0x00 
+        };
 
 
     public int getConfounderLength()
@@ -86,7 +89,7 @@
     {
         byte[] Ke = deriveKey( key.getKeyValue(), getUsageKe( usage ), 128, getKeyLength() );
 
-        byte[] encryptedData = data.getCipherText();
+        byte[] encryptedData = data.getCipher();
 
         // extract the old checksum
         byte[] oldChecksum = new byte[getChecksumLength()];
@@ -108,7 +111,7 @@
         // compare checksums
         if ( !Arrays.equals( oldChecksum, newChecksum ) )
         {
-            throw new KerberosException( ErrorType.KRB_AP_ERR_BAD_INTEGRITY );
+            throw new KerberosException( KerberosErrorType.KRB_AP_ERR_BAD_INTEGRITY );
         }
 
         return withoutConfounder;

Modified: directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/ArcFourHmacMd5Encryption.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/ArcFourHmacMd5Encryption.java?rev=578743&r1=578742&r2=578743&view=diff
==============================================================================
--- directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/ArcFourHmacMd5Encryption.java (original)
+++ directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/ArcFourHmacMd5Encryption.java Mon Sep 24 03:18:05 2007
@@ -1,22 +1,3 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *  
- *    http://www.apache.org/licenses/LICENSE-2.0
- *  
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *  
- */
 package org.apache.directory.server.kerberos.shared.crypto.encryption;
 
 
@@ -59,7 +40,7 @@
 
     public byte[] getDecryptedData( EncryptionKey key, EncryptedData data, KeyUsage usage ) throws KerberosException
     {
-        return data.getCipherText();
+        return data.getCipher();
     }
 
 

Modified: directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/CipherTextHandler.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/CipherTextHandler.java?rev=578743&r1=578742&r2=578743&view=diff
==============================================================================
--- directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/CipherTextHandler.java (original)
+++ directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/CipherTextHandler.java Mon Sep 24 03:18:05 2007
@@ -26,7 +26,6 @@
 import java.util.HashMap;
 import java.util.Map;
 
-import org.apache.directory.server.kerberos.shared.exceptions.ErrorType;
 import org.apache.directory.server.kerberos.shared.exceptions.KerberosException;
 import org.apache.directory.server.kerberos.shared.io.decoder.AuthenticatorDecoder;
 import org.apache.directory.server.kerberos.shared.io.decoder.AuthorizationDataDecoder;
@@ -46,7 +45,7 @@
 import org.apache.directory.server.kerberos.shared.io.encoder.Encoder;
 import org.apache.directory.server.kerberos.shared.io.encoder.EncoderFactory;
 import org.apache.directory.server.kerberos.shared.io.encoder.EncryptedTimestampEncoder;
-import org.apache.directory.server.kerberos.shared.messages.AuthenticationReply;
+import org.apache.directory.server.kerberos.shared.messages.AuthServerReply;
 import org.apache.directory.server.kerberos.shared.messages.Encodable;
 import org.apache.directory.server.kerberos.shared.messages.TicketGrantReply;
 import org.apache.directory.server.kerberos.shared.messages.components.Authenticator;
@@ -56,8 +55,9 @@
 import org.apache.directory.server.kerberos.shared.messages.components.EncTicketPart;
 import org.apache.directory.server.kerberos.shared.messages.value.AuthorizationData;
 import org.apache.directory.server.kerberos.shared.messages.value.EncryptedData;
-import org.apache.directory.server.kerberos.shared.messages.value.EncryptedTimeStamp;
+import org.apache.directory.server.kerberos.shared.messages.value.PreAuthEncryptedTimestamp;
 import org.apache.directory.server.kerberos.shared.messages.value.EncryptionKey;
+import org.apache.directory.server.kerberos.shared.messages.value.types.KerberosErrorType;
 
 
 /**
@@ -81,9 +81,9 @@
     {
         Map<Class, Class> map = new HashMap<Class, Class>();
 
-        map.put( EncryptedTimeStamp.class, EncryptedTimestampEncoder.class );
+        map.put( PreAuthEncryptedTimestamp.class, EncryptedTimestampEncoder.class );
         map.put( EncTicketPart.class, EncTicketPartEncoder.class );
-        map.put( AuthenticationReply.class, EncAsRepPartEncoder.class );
+        map.put( AuthServerReply.class, EncAsRepPartEncoder.class );
         map.put( TicketGrantReply.class, EncTgsRepPartEncoder.class );
         map.put( EncKrbPrivPart.class, EncKrbPrivPartEncoder.class );
         map.put( EncApRepPart.class, EncApRepPartEncoder.class );
@@ -98,7 +98,7 @@
 
         map.put( EncTicketPart.class, EncTicketPartDecoder.class );
         map.put( Authenticator.class, AuthenticatorDecoder.class );
-        map.put( EncryptedTimeStamp.class, EncryptedTimestampDecoder.class );
+        map.put( PreAuthEncryptedTimestamp.class, EncryptedTimestampDecoder.class );
         map.put( AuthorizationData.class, AuthorizationDataDecoder.class );
         map.put( EncKrbPrivPart.class, EncKrbPrivPartDecoder.class );
         map.put( EncApRepPart.class, EncApRepPartDecoder.class );
@@ -138,11 +138,11 @@
         }
         catch ( IOException ioe )
         {
-            throw new KerberosException( ErrorType.KRB_AP_ERR_BAD_INTEGRITY, ioe );
+            throw new KerberosException( KerberosErrorType.KRB_AP_ERR_BAD_INTEGRITY, ioe );
         }
         catch ( ClassCastException cce )
         {
-            throw new KerberosException( ErrorType.KRB_AP_ERR_BAD_INTEGRITY, cce );
+            throw new KerberosException( KerberosErrorType.KRB_AP_ERR_BAD_INTEGRITY, cce );
         }
     }
 
@@ -166,11 +166,11 @@
         }
         catch ( IOException ioe )
         {
-            throw new KerberosException( ErrorType.KRB_AP_ERR_BAD_INTEGRITY, ioe );
+            throw new KerberosException( KerberosErrorType.KRB_AP_ERR_BAD_INTEGRITY, ioe );
         }
         catch ( ClassCastException cce )
         {
-            throw new KerberosException( ErrorType.KRB_AP_ERR_BAD_INTEGRITY, cce );
+            throw new KerberosException( KerberosErrorType.KRB_AP_ERR_BAD_INTEGRITY, cce );
         }
     }
 
@@ -261,7 +261,7 @@
 
         if ( clazz == null )
         {
-            throw new KerberosException( ErrorType.KDC_ERR_ETYPE_NOSUPP );
+            throw new KerberosException( KerberosErrorType.KDC_ERR_ETYPE_NOSUPP );
         }
 
         try
@@ -270,11 +270,11 @@
         }
         catch ( IllegalAccessException iae )
         {
-            throw new KerberosException( ErrorType.KDC_ERR_ETYPE_NOSUPP, iae );
+            throw new KerberosException( KerberosErrorType.KDC_ERR_ETYPE_NOSUPP, iae );
         }
         catch ( InstantiationException ie )
         {
-            throw new KerberosException( ErrorType.KDC_ERR_ETYPE_NOSUPP, ie );
+            throw new KerberosException( KerberosErrorType.KDC_ERR_ETYPE_NOSUPP, ie );
         }
     }
 }

Modified: directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/Des3CbcSha1KdEncryption.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/Des3CbcSha1KdEncryption.java?rev=578743&r1=578742&r2=578743&view=diff
==============================================================================
--- directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/Des3CbcSha1KdEncryption.java (original)
+++ directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/Des3CbcSha1KdEncryption.java Mon Sep 24 03:18:05 2007
@@ -32,10 +32,10 @@
 
 import org.apache.directory.server.kerberos.shared.crypto.checksum.ChecksumEngine;
 import org.apache.directory.server.kerberos.shared.crypto.checksum.ChecksumType;
-import org.apache.directory.server.kerberos.shared.exceptions.ErrorType;
 import org.apache.directory.server.kerberos.shared.exceptions.KerberosException;
 import org.apache.directory.server.kerberos.shared.messages.value.EncryptedData;
 import org.apache.directory.server.kerberos.shared.messages.value.EncryptionKey;
+import org.apache.directory.server.kerberos.shared.messages.value.types.KerberosErrorType;
 
 
 /**
@@ -93,7 +93,7 @@
     {
         byte[] Ke = deriveKey( key.getKeyValue(), getUsageKe( usage ), 64, 168 );
 
-        byte[] encryptedData = data.getCipherText();
+        byte[] encryptedData = data.getCipher();
 
         // extract the old checksum
         byte[] oldChecksum = new byte[getChecksumLength()];
@@ -115,7 +115,7 @@
         // compare checksums
         if ( !Arrays.equals( oldChecksum, newChecksum ) )
         {
-            throw new KerberosException( ErrorType.KRB_AP_ERR_BAD_INTEGRITY );
+            throw new KerberosException( KerberosErrorType.KRB_AP_ERR_BAD_INTEGRITY );
         }
 
         return withoutConfounder;

Modified: directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/DesCbcCrcEncryption.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/DesCbcCrcEncryption.java?rev=578743&r1=578742&r2=578743&view=diff
==============================================================================
--- directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/DesCbcCrcEncryption.java (original)
+++ directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/DesCbcCrcEncryption.java Mon Sep 24 03:18:05 2007
@@ -31,10 +31,10 @@
 import javax.crypto.spec.IvParameterSpec;
 import javax.crypto.spec.SecretKeySpec;
 
-import org.apache.directory.server.kerberos.shared.exceptions.ErrorType;
 import org.apache.directory.server.kerberos.shared.exceptions.KerberosException;
 import org.apache.directory.server.kerberos.shared.messages.value.EncryptedData;
 import org.apache.directory.server.kerberos.shared.messages.value.EncryptionKey;
+import org.apache.directory.server.kerberos.shared.messages.value.types.KerberosErrorType;
 
 
 /**
@@ -92,7 +92,7 @@
     public byte[] getDecryptedData( EncryptionKey key, EncryptedData data, KeyUsage usage ) throws KerberosException
     {
         // decrypt the data
-        byte[] decryptedData = decrypt( data.getCipherText(), key.getKeyValue() );
+        byte[] decryptedData = decrypt( data.getCipher(), key.getKeyValue() );
 
         // extract the old checksum
         byte[] oldChecksum = new byte[getChecksumLength()];
@@ -110,7 +110,7 @@
         // compare checksums
         if ( !Arrays.equals( oldChecksum, newChecksum ) )
         {
-            throw new KerberosException( ErrorType.KRB_AP_ERR_BAD_INTEGRITY );
+            throw new KerberosException( KerberosErrorType.KRB_AP_ERR_BAD_INTEGRITY );
         }
 
         // remove leading confounder and checksum

Modified: directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/DesCbcMd5Encryption.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/DesCbcMd5Encryption.java?rev=578743&r1=578742&r2=578743&view=diff
==============================================================================
--- directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/DesCbcMd5Encryption.java (original)
+++ directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/DesCbcMd5Encryption.java Mon Sep 24 03:18:05 2007
@@ -31,10 +31,10 @@
 import javax.crypto.spec.IvParameterSpec;
 import javax.crypto.spec.SecretKeySpec;
 
-import org.apache.directory.server.kerberos.shared.exceptions.ErrorType;
 import org.apache.directory.server.kerberos.shared.exceptions.KerberosException;
 import org.apache.directory.server.kerberos.shared.messages.value.EncryptedData;
 import org.apache.directory.server.kerberos.shared.messages.value.EncryptionKey;
+import org.apache.directory.server.kerberos.shared.messages.value.types.KerberosErrorType;
 
 
 /**
@@ -83,7 +83,7 @@
     public byte[] getDecryptedData( EncryptionKey key, EncryptedData data, KeyUsage usage ) throws KerberosException
     {
         // decrypt the data
-        byte[] decryptedData = decrypt( data.getCipherText(), key.getKeyValue() );
+        byte[] decryptedData = decrypt( data.getCipher(), key.getKeyValue() );
 
         // extract the old checksum
         byte[] oldChecksum = new byte[getChecksumLength()];
@@ -101,7 +101,7 @@
         // compare checksums
         if ( !Arrays.equals( oldChecksum, newChecksum ) )
         {
-            throw new KerberosException( ErrorType.KRB_AP_ERR_BAD_INTEGRITY );
+            throw new KerberosException( KerberosErrorType.KRB_AP_ERR_BAD_INTEGRITY );
         }
 
         // remove leading confounder and checksum

Modified: directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/EncryptionType.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/EncryptionType.java?rev=578743&r1=578742&r2=578743&view=diff
==============================================================================
--- directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/EncryptionType.java (original)
+++ directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/EncryptionType.java Mon Sep 24 03:18:05 2007
@@ -19,10 +19,8 @@
  */
 package org.apache.directory.server.kerberos.shared.crypto.encryption;
 
-
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
+import java.util.HashMap;
+import java.util.Map;
 
 
 /**
@@ -31,168 +29,177 @@
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  * @version $Rev$, $Date$
  */
-public final class EncryptionType implements Comparable<EncryptionType>
+public enum EncryptionType
 {
     /**
      * The "unknown" encryption type.
      */
-    public static final EncryptionType UNKNOWN = new EncryptionType( -1, "UNKNOWN" );
+    UNKNOWN( -1 ),
 
     /**
      * The "null" encryption type.
      */
-    public static final EncryptionType NULL = new EncryptionType( 0, "NULL" );
+    NULL( 0 ),
 
     /**
      * The des-cbc-crc encryption type.
      */
-    public static final EncryptionType DES_CBC_CRC = new EncryptionType( 1, "des-cbc-crc" );
+    DES_CBC_CRC( 1 ),
 
     /**
      * The des-cbc-md4 encryption type.
      */
-    public static final EncryptionType DES_CBC_MD4 = new EncryptionType( 2, "des-cbc-md4" );
+    DES_CBC_MD4( 2 ),
 
     /**
      * The des-cbc-md5 encryption type.
      */
-    public static final EncryptionType DES_CBC_MD5 = new EncryptionType( 3, "des-cbc-md5" );
+    DES_CBC_MD5( 3 ),
 
     /**
      * The reserved (4) encryption type.
      */
-    public static final EncryptionType RESERVED4 = new EncryptionType( 4, "[reserved]" );
+    RESERVED4( 4 ),
 
     /**
      * The des3-cbc-md5 encryption type.
      */
-    public static final EncryptionType DES3_CBC_MD5 = new EncryptionType( 5, "des3-cbc-md5" );
+    DES3_CBC_MD5( 5 ),
 
     /**
      * The reserved (6) encryption type.
      */
-    public static final EncryptionType RESERVED6 = new EncryptionType( 6, "[reserved]" );
+    RESERVED6( 6 ),
 
     /**
      * The des3-cbc-sha1 encryption type.
      */
-    public static final EncryptionType DES3_CBC_SHA1 = new EncryptionType( 7, "des3-cbc-sha1" );
+    DES3_CBC_SHA1( 7 ),
 
     /**
-     * The id-dsa-with-sha1-CmsOID encryption type.
+     * The dsaWithSHA1-CmsOID encryption type.
      */
-    public static final EncryptionType ID_DSA_WITH_SHA1_CMSOID = new EncryptionType( 9, "id-dsa-with-sha1-CmsOID" );
+    DSAWITHSHA1_CMSOID( 9 ),
 
     /**
      * The md5WithRSAEncryption-CmsOID encryption type.
      */
-    public static final EncryptionType MD5WITHRSAENCRYPTION_CMSOID = new EncryptionType( 10,
-        "md5WithRSAEncryption-CmsOID" );
+    MD5WITHRSAENCRYPTION_CMSOID( 10 ),
 
     /**
-     * The sha-1WithRSAEncryption-CmsOID encryption type.
+     * The sha1WithRSAEncryption-CmsOID encryption type.
      */
-    public static final EncryptionType SHA_1WITHRSAENCRYPTION_CMSOID = new EncryptionType( 11,
-        "sha-1WithRSAEncryption-CmsOID" );
+    SHA1WITHRSAENCRYPTION_CMSOID( 11 ),
 
     /**
-     * The rc2-cbc-EnvOID encryption type.
+     * The rc2CBC-EnvOID encryption type.
      */
-    public static final EncryptionType RC2_CBC_ENVOID = new EncryptionType( 12, "rc2-cbc-EnvOID" );
+    RC2CBC_ENVOID( 12 ),
 
     /**
      * The rsaEncryption-EnvOID encryption type.
      */
-    public static final EncryptionType RSAENCRYPTION_ENVOID = new EncryptionType( 13, "rsaEncryption-EnvOID" );
+    RSAENCRYPTION_ENVOID( 13 ),
 
     /**
-     * The id-RSAES-OAEP-EnvOID encryption type.
+     * The rsaES-OAEP-ENV-OID encryption type.
      */
-    public static final EncryptionType ID_RSAES_OAEP_ENVOID = new EncryptionType( 14, "id-RSAES-OAEP-EnvOID" );
+    RSAES_OAEP_ENV_OID( 14 ),
 
     /**
-     * The des-ede3-cbc-EnvOID encryption type.
+     * The des-ede3-cbc-Env-OID encryption type.
      */
-    public static final EncryptionType DES_EDE3_CBC_ENVOID = new EncryptionType( 15, "des-ede3-cbc-EnvOID" );
+    DES_EDE3_CBC_ENV_OID( 15 ),
 
     /**
      * The des3-cbc-sha1-kd encryption type.
      */
-    public static final EncryptionType DES3_CBC_SHA1_KD = new EncryptionType( 16, "des3-cbc-sha1-kd" );
+    DES3_CBC_SHA1_KD( 16 ),
 
     /**
      * The aes128-cts-hmac-sha1-96 encryption type.
      */
-    public static final EncryptionType AES128_CTS_HMAC_SHA1_96 = new EncryptionType( 17, "aes128-cts-hmac-sha1-96" );
+    AES128_CTS_HMAC_SHA1_96( 17 ),
 
     /**
      * The aes256-cts-hmac-sha1-96 encryption type.
      */
-    public static final EncryptionType AES256_CTS_HMAC_SHA1_96 = new EncryptionType( 18, "aes256-cts-hmac-sha1-96" );
+    AES256_CTS_HMAC_SHA1_96( 18 ),
 
     /**
      * The rc4-hmac encryption type.
      */
-    public static final EncryptionType RC4_HMAC = new EncryptionType( 23, "rc4-hmac" );
+    RC4_HMAC( 23 ),
 
     /**
      * The rc4-hmac-exp encryption type.
      */
-    public static final EncryptionType RC4_HMAC_EXP = new EncryptionType( 24, "rc4-hmac-exp" );
+    RC4_HMAC_EXP( 24 ),
 
     /**
      * The subkey-keymaterial encryption type.
      */
-    public static final EncryptionType SUBKEY_KEYMATERIAL = new EncryptionType( 65, "subkey-keymaterial" );
+    SUBKEY_KEYMATERIAL( 65 ),
 
     /**
      * The rc4-md4 encryption type.
      */
-    public static final EncryptionType RC4_MD4 = new EncryptionType( -128, "rc4-md4" );
+    RC4_MD4( -128 ),
 
     /**
      * The c4-hmac-old encryption type.
      */
-    public static final EncryptionType RC4_HMAC_OLD = new EncryptionType( -133, "rc4-hmac-old" );
+    RC4_HMAC_OLD( -133 ),
 
     /**
      * The rc4-hmac-old-exp encryption type.
      */
-    public static final EncryptionType RC4_HMAC_OLD_EXP = new EncryptionType( -135, "rc4-hmac-old-exp" );
-
-    /**
-     * Array for building a List of VALUES.
-     */
-    private static final EncryptionType[] values =
-        { UNKNOWN, NULL, DES_CBC_CRC, DES_CBC_MD4, DES_CBC_MD5, RESERVED4, DES3_CBC_MD5, RESERVED6, DES3_CBC_SHA1,
-            ID_DSA_WITH_SHA1_CMSOID, MD5WITHRSAENCRYPTION_CMSOID, SHA_1WITHRSAENCRYPTION_CMSOID, RC2_CBC_ENVOID,
-            RSAENCRYPTION_ENVOID, ID_RSAES_OAEP_ENVOID, DES_EDE3_CBC_ENVOID, DES3_CBC_SHA1_KD, AES128_CTS_HMAC_SHA1_96,
-            AES256_CTS_HMAC_SHA1_96, RC4_HMAC, RC4_HMAC_EXP, SUBKEY_KEYMATERIAL, RC4_MD4, RC4_HMAC_OLD,
-            RC4_HMAC_OLD_EXP };
-
-    /**
-     * A List of all the encryption type constants.
-     */
-    public static final List<EncryptionType> VALUES = Collections.unmodifiableList( Arrays.asList( values ) );
-
-    /**
-     * The name of the encryption type.
-     */
-    private final String name;
+    RC4_HMAC_OLD_EXP( -135 );
 
     /**
      * The value/code for the encryption type.
      */
     private final int ordinal;
 
+    /** A map containing all the values */
+	private static Map<String, EncryptionType> encryptionTypes = new HashMap<String, EncryptionType>();
+	
+	/** Initialization of the previous map */
+	static
+	{
+		encryptionTypes.put( "null", NULL );
+		encryptionTypes.put( "des-cbc-crc", DES_CBC_CRC ); 
+		encryptionTypes.put( "des-cbc-md4", DES_CBC_MD4 );	    	
+		encryptionTypes.put( "des-cbc-md5", DES_CBC_MD5 );	    	
+		encryptionTypes.put( "[reserved]", RESERVED4 );	    	
+		encryptionTypes.put( "des3-cbc-md5", DES3_CBC_MD5 );	    	
+		encryptionTypes.put( "[reserved]", RESERVED6 );	    	
+		encryptionTypes.put( "des3-cbc-sha1", DES3_CBC_SHA1 );	    	
+		encryptionTypes.put( "dsaWithSHA1-CmsOID", DSAWITHSHA1_CMSOID );	    	
+		encryptionTypes.put( "md5WithRSAEncryption-CmsOID", MD5WITHRSAENCRYPTION_CMSOID );	    	
+		encryptionTypes.put( "sha1WithRSAEncryption-CmsOID", SHA1WITHRSAENCRYPTION_CMSOID );	    	
+		encryptionTypes.put( "rc2CBC-EnvOID", RC2CBC_ENVOID );	    	
+		encryptionTypes.put( "rsaEncryption-EnvOID", RSAENCRYPTION_ENVOID );	    	
+		encryptionTypes.put( "rsaES-OAEP-ENV-OID", RSAES_OAEP_ENV_OID );    	
+		encryptionTypes.put( "des-ede3-cbc-Env-OID", DES_EDE3_CBC_ENV_OID );	    	
+		encryptionTypes.put( "des3-cbc-sha1-kd", DES3_CBC_SHA1_KD );    	
+		encryptionTypes.put( "aes128-cts-hmac-sha1-96", AES128_CTS_HMAC_SHA1_96 );	    	
+		encryptionTypes.put( "aes256-cts-hmac-sha1-96", AES256_CTS_HMAC_SHA1_96 );	    	
+		encryptionTypes.put( "rc4-hmac", RC4_HMAC );	    	
+		encryptionTypes.put( "rc4-hmac-exp", RC4_HMAC_EXP );	    	
+		encryptionTypes.put( "subkey-keymaterial", SUBKEY_KEYMATERIAL );	    	
+		encryptionTypes.put( "rc4-md4", RC4_MD4 );	    
+		encryptionTypes.put( "rc4-hmac-old", RC4_HMAC_OLD );	    	
+		encryptionTypes.put( "rc4-hmac-old-exp", RC4_HMAC_OLD_EXP );	    	
+		encryptionTypes.put( "UNKNOWN", UNKNOWN );
+	}
 
     /**
      * Private constructor prevents construction outside of this class.
      */
-    private EncryptionType( int ordinal, String name )
+    private EncryptionType( int ordinal )
     {
         this.ordinal = ordinal;
-        this.name = name;
     }
 
 
@@ -204,15 +211,34 @@
      */
     public static EncryptionType getTypeByOrdinal( int type )
     {
-        for ( int ii = 0; ii < values.length; ii++ )
-        {
-            if ( values[ii].ordinal == type )
-            {
-                return values[ii];
-            }
-        }
-
-        return UNKNOWN;
+    	switch ( type )
+    	{
+	    	case 0 : return NULL; 
+	    	case 1 : return DES_CBC_CRC; 
+	    	case 2 : return DES_CBC_MD4; 
+	    	case 3 : return DES_CBC_MD5; 
+	    	case 4 : return RESERVED4; 
+	    	case 5 : return DES3_CBC_MD5; 
+	    	case 6 : return RESERVED6; 
+	    	case 7 : return DES3_CBC_SHA1; 
+	    	case 9 : return DSAWITHSHA1_CMSOID; 
+	    	case 10 : return MD5WITHRSAENCRYPTION_CMSOID; 
+	    	case 11 : return SHA1WITHRSAENCRYPTION_CMSOID; 
+	    	case 12 : return RC2CBC_ENVOID; 
+	    	case 13 : return RSAENCRYPTION_ENVOID; 
+	    	case 14 : return RSAES_OAEP_ENV_OID; 
+	    	case 15 : return DES_EDE3_CBC_ENV_OID; 
+	    	case 16 : return DES3_CBC_SHA1_KD; 
+	    	case 17 : return AES128_CTS_HMAC_SHA1_96; 
+	    	case 18 : return AES256_CTS_HMAC_SHA1_96; 
+	    	case 23 : return RC4_HMAC; 
+	    	case 24 : return RC4_HMAC_EXP; 
+	    	case 65 : return SUBKEY_KEYMATERIAL; 
+	    	case -128 : return RC4_MD4; 
+	    	case -133 : return RC4_HMAC_OLD; 
+	    	case -135 : return RC4_HMAC_OLD_EXP; 
+			default : return UNKNOWN; 
+    	}
     }
 
 
@@ -234,18 +260,70 @@
      */
     public String getName()
     {
-        return name;
+        return this.toString();
     }
 
-
-    public int compareTo( EncryptionType that )
+    /**
+     * Get the EncryptionType given a String.
+     * @param type The encryption string we want to find
+     * @return The found EncryptionType, or UNKNOWN
+     */
+    public static EncryptionType getByName( String type )
     {
-        return ordinal - that.ordinal;
+    	if ( type == null )
+    	{
+    		return UNKNOWN;
+    	}
+    	
+    	String lcType = type.toLowerCase();
+    	
+    	if ( encryptionTypes.containsKey( lcType ) )
+    	{
+    		return encryptionTypes.get( lcType );
+    	}
+    	else
+    	{
+    		return UNKNOWN;
+    	}
     }
 
-
+    /**
+     * @see Object#toString()
+     */
     public String toString()
     {
-        return name + " (" + ordinal + ")";
+    	String name = null;
+    	
+    	switch (this )
+    	{
+	    	case NULL							: name = "NULL"; break; 
+	    	case DES_CBC_CRC					: name = "des-cbc-crc"; break; 
+	    	case DES_CBC_MD4					: name = "des-cbc-md4"; break;	    	
+	    	case DES_CBC_MD5					: name = "des-cbc-md5"; break;	    	
+	    	case RESERVED4						: name = "[reserved]"; break;	    	
+	    	case DES3_CBC_MD5					: name = "des3-cbc-md5"; break;	    	
+	    	case RESERVED6						: name = "[reserved]"; break;	    	
+	    	case DES3_CBC_SHA1					: name = "des3-cbc-sha1"; break;	    	
+	    	case DSAWITHSHA1_CMSOID				: name = "dsaWithSHA1-CmsOID"; break;	    	
+	    	case MD5WITHRSAENCRYPTION_CMSOID	: name = "md5WithRSAEncryption-CmsOID"; break;	    	
+	    	case SHA1WITHRSAENCRYPTION_CMSOID	: name = "sha1WithRSAEncryption-CmsOID"; break;	    	
+	    	case RC2CBC_ENVOID					: name = "rc2CBC-EnvOID"; break;	    	
+	    	case RSAENCRYPTION_ENVOID			: name = "rsaEncryption-EnvOID"; break;	    	
+	    	case RSAES_OAEP_ENV_OID				: name = "rsaES-OAEP-ENV-OID"; break;    	
+	    	case DES_EDE3_CBC_ENV_OID			: name = "des-ede3-cbc-Env-OID"; break;	    	
+	    	case DES3_CBC_SHA1_KD				: name = "des3-cbc-sha1-kd"; break;    	
+	    	case AES128_CTS_HMAC_SHA1_96		: name = "aes128-cts-hmac-sha1-96"; break;	    	
+	    	case AES256_CTS_HMAC_SHA1_96		: name = "aes256-cts-hmac-sha1-96"; break;	    	
+	    	case RC4_HMAC						: name = "rc4-hmac"; break;	    	
+	    	case RC4_HMAC_EXP					: name = "rc4-hmac-exp"; break;	    	
+	    	case SUBKEY_KEYMATERIAL				: name = "subkey-keymaterial"; break;	    	
+	    	case RC4_MD4						: name = "rc4-md4"; break;	    
+	    	case RC4_HMAC_OLD					: name = "rc4-hmac-old"; break;	    	
+	    	case RC4_HMAC_OLD_EXP				: name = "rc4-hmac-old-exp"; break;	    	
+	    	case UNKNOWN						: name = "UNKNOWN"; break;
+	    	default 							: name = "UNKNOWN";
+    	}
+
+    	return name + " (" + ordinal + ")";
     }
 }

Modified: directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/NullEncryption.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/NullEncryption.java?rev=578743&r1=578742&r2=578743&view=diff
==============================================================================
--- directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/NullEncryption.java (original)
+++ directory/apacheds/branches/apacheds-kerberos/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/NullEncryption.java Mon Sep 24 03:18:05 2007
@@ -51,7 +51,7 @@
 
     public byte[] getDecryptedData( EncryptionKey key, EncryptedData data, KeyUsage usage ) throws KerberosException
     {
-        return data.getCipherText();
+        return data.getCipher();
     }