CVSROOT: /cvsroot/classpath Module name: classpath Branch: ssl-nio-branch Changes by: Casey Marshall <rsdio> 06/06/29 00:17:30
Modified files: . : ChangeLog-ssl-nio gnu/javax/net/ssl/provider: AbstractHandshake.java AlertException.java Certificate.java CertificateRequest.java CipherSuite.java CipherSuiteList.java CipheredStruct.java ClientHello.java ClientHelloV2.java ClientKeyExchange.java Constructed.java Finished.java Handshake.java InputSecurityParameters.java Jessie.java MacAlgorithm.java OutputSecurityParameters.java ProtocolVersion.java Random.java SSLEngineImpl.java ServerDHParams.java ServerHandshake.java ServerHello.java ServerKeyExchange.java SessionImpl.java Signature.java X509KeyManagerFactory.java X509TrustManagerFactory.java Added files: gnu/javax/net/ssl/provider: Builder.java CertificateBuilder.java CertificateRequestBuilder.java ServerHelloBuilder.java Log message: 2006-06-28 Casey Marshall <[EMAIL PROTECTED]> * gnu/javax/net/ssl/provider/AbstractHandshake.java: implement numerous "common" methods in server and client handshakes. * gnu/javax/net/ssl/provider/AlertException.java: made public; add cause constructors. * gnu/javax/net/ssl/provider/Builder.java: new file. * gnu/javax/net/ssl/provider/Certificate.java: make subclassable. * gnu/javax/net/ssl/provider/CertificateBuilder.java: new file. * gnu/javax/net/ssl/provider/CertificateRequest.java: make subclassable. * gnu/javax/net/ssl/provider/CertificateRequestBuilder.java: new file. * gnu/javax/net/ssl/provider/CipherSuite.java: remove dependence on protocol version. * gnu/javax/net/ssl/provider/ClientHello.java (hasExtensions): new method. * gnu/javax/net/ssl/provider/ClientHelloV2.java (cipherSpecs): genericize collections. * gnu/javax/net/ssl/provider/ClientKeyExchange.java: make version argument explicit, instead of implied by the cipher suite. * gnu/javax/net/ssl/provider/Constructed.java: expand JavaDocs. * gnu/javax/net/ssl/provider/Finished.java: accept TLS 1.1 version numbers, too. * gnu/javax/net/ssl/provider/Handshake.java: make version explicit, instead of implied by the cipher suite. * gnu/javax/net/ssl/provider/InputSecurityParameters.java: made public. (suite): removed. (session): new field (replaces/encapsulates `suite'). (<init>): made public; take a SessionImpl, not a CipherSuite. (decrypt, decrypt, decrypt): add support for growable buffers AND a fixed-size array of buffers (we use the former internally; the latter is used to implement the scatter/gather model of SSLEngine. * gnu/javax/net/ssl/provider/Jessie.java: update algorithms. * gnu/javax/net/ssl/provider/MacAlgorithm.java: just specify NULL/MD5/SHA, not version-specific algorithms. * gnu/javax/net/ssl/provider/OutputSecurityParameters.java: replace suite with session; support scatter/gather operation. * gnu/javax/net/ssl/provider/ProtocolVersion.java: implement Comparable<ProtocolVersion>. * gnu/javax/net/ssl/provider/Random.java: implement Builder. (buffer): new method. * gnu/javax/net/ssl/provider/SSLContextImpl.java: new file. * gnu/javax/net/ssl/provider/SSLEngineImpl.java: numerous changes; largely implemented now. * gnu/javax/net/ssl/provider/SSLv3HMacMD5Impl.java: new file. * gnu/javax/net/ssl/provider/SSLv3HMacSHAImpl.java: new file. * gnu/javax/net/ssl/provider/ServerDHParams.java: implement Builder. (<init>): new constructor that takes known parameters. (buffer): new method. * gnu/javax/net/ssl/provider/ServerHandshake.java: numerous changes; largely implemented now. * gnu/javax/net/ssl/provider/ServerHello.java: make subclassable. * gnu/javax/net/ssl/provider/ServerHelloBuilder.java: new file. * gnu/javax/net/ssl/provider/ServerKeyExchange.java: make subclassable. * gnu/javax/net/ssl/provider/ServerKeyExchangeBuilder.java: new file. * gnu/javax/net/ssl/provider/SessionImpl.java: expanded. * gnu/javax/net/ssl/provider/Signature.java: implement Builder. (<init>): new method, that takes a pre-computed signature. (buffer): new method. * gnu/javax/net/ssl/provider/SimpleSessionContext.java: new file. * gnu/javax/net/ssl/provider/X509KeyManagerFactory.java: genericize Collections usage. (Manager): extend X509ExtendedKeyManager; genericize fields. (Manager.chooseEngineClientAlias): new method. (Manager.chooseEngineServerAlias): new method. * gnu/javax/net/ssl/provider/X509TrustManagerFactory.java (sep): new constant; use it instead of constantly calling getProperty. (init): genericize lists. (Manager.trusted): removed. (Manager.anchors): new field (replacement for above). (<init>): handle changes to fields. (getAcceptedIssuers): use `anchors.toArray().' (checkTrusted): use a PKIX CertPathVerifier. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/classpath/ChangeLog-ssl-nio?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.2.10&r2=1.1.2.11 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/AbstractHandshake.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.2.1&r2=1.1.2.2 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/AlertException.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.1.2.1&r2=1.1.4.1.2.2 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/Certificate.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.1.2.1&r2=1.1.4.1.2.2 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/CertificateRequest.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.1.2.1&r2=1.1.4.1.2.2 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/CipherSuite.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.1.2.1&r2=1.1.4.1.2.2 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/CipherSuiteList.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.2&r2=1.1.4.3 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/CipheredStruct.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.1&r2=1.1.4.2 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/ClientHello.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.1.2.2&r2=1.1.4.1.2.3 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/ClientHelloV2.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.2.1&r2=1.1.2.2 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/ClientKeyExchange.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.1.2.1&r2=1.1.4.1.2.2 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/Constructed.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.1.2.1&r2=1.1.4.1.2.2 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/Finished.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.1.2.1&r2=1.1.4.1.2.2 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/Handshake.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.1.2.1&r2=1.1.4.1.2.2 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/InputSecurityParameters.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.1&r2=1.1.4.2 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/Jessie.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.1&r2=1.1.4.1.2.1 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/MacAlgorithm.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.1&r2=1.1.4.2 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/OutputSecurityParameters.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.1&r2=1.1.4.2 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/ProtocolVersion.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.1.2.1&r2=1.1.4.1.2.2 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/Random.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.1.2.1&r2=1.1.4.1.2.2 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/SSLEngineImpl.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.2.1&r2=1.1.2.2 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/ServerDHParams.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.1&r2=1.1.4.2 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/ServerHandshake.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.2.2&r2=1.1.2.3 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/ServerHello.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.1.2.2&r2=1.1.4.1.2.3 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/ServerKeyExchange.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.1.2.1&r2=1.1.4.1.2.2 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/SessionImpl.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.2.1&r2=1.1.2.2 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/Signature.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.1.2.1&r2=1.1.4.1.2.2 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/X509KeyManagerFactory.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.1&r2=1.1.4.1.2.1 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/X509TrustManagerFactory.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&r1=1.1.4.1&r2=1.1.4.1.2.1 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/Builder.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&rev=1.1.2.1 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/CertificateBuilder.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&rev=1.1.2.1 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/CertificateRequestBuilder.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&rev=1.1.2.1 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/javax/net/ssl/provider/ServerHelloBuilder.java?cvsroot=classpath&only_with_tag=ssl-nio-branch&rev=1.1.2.1