Verisign EPP SDK Change Log =================== Changes in version 1.10.0.3 (03.24.2017) ----------------------------------- * Made setting of the XML entity resolver, based on the com.verisign.epp.util.EPPSchemaCachingEntityResolver, a configurable setting using the optional EPP.UseEntityResolver config property, with a default value of true. (James F. Gould) Changes in version 1.10.0.2 (01.06.2017) ----------------------------------- * Revised the contact disclose API in the com.verisign.epp.codec.contact.EPPContactDisclose class. All of the disclose attributes were changed from String's to boolean's and the use of Vector's was removed. The existing String attribute methods were deprecated and the EPPContactDiscloseName, EPPContactDiscloseOrg, and EPPContactDiscloseAddress classes were deprecated. (James F. Gould) Changes in version 1.10.0.1 (12.15.2016) ----------------------------------- * Added relaxed contact validation support used to transition a thin registry to thick. Relaxed validation leverages a new contact XSD (contact-1.0-relaxed.xsd) that makes the , , , , , and elements optional. The new optional EPP.Contact.RelaxedValidation epp.config property must be set to true for the client and server stub to use and validate to the relaxed schema. (Suvelee Sarpotdar) Changes in version 1.10.0.0 (11.17.2016) ----------------------------------- * Removed the setting for the EntityResolver in com.verisign.epp.util.EPPSchemaCachingParser and deprecated com.verisign.epp.util.EPPSchemaCachingEntityResolver, since the XML schemas are pre-cached in com.verisign.epp.util.EPPSchemaCachingParser, so there is no need to dynamically load them anymore. (James F. Gould) * Replaced reference of com.sun.org.apache.xerces.internal.dom.DocumentImpl to org.apache.xerces.dom.DocumentImpl in EPPUtil. (James F. Gould) * Added logging to EPPGenHandler.handleEvent(EPPEvent, Object). (James F. Gould) * Added getFirstPostalInfo() : EPPContactPostalDefinition to EPPContactInfoResp and EPPContact. (James F. Gould) * Added EPPDomainInfoResp.getContactByType(String) : EPPDomainContact, EPPDomainInfoResp.getAdminContact() : EPPDomainContact, EPPDomainInfoResp.getTechContact() : EPPDomainContact, and EPPDomainInfoResp.getBillingContact() : EPPDomainContact. (James F. Gould) * Added com.verisign.epp.pool.EPPClientTransIdGenerator interface, concrete com.verisign.epp.pool.ClientTransIdGenerator class, and the optional clientTransIdGenerator pool property to define the concrete EPPClientTransIdGenerator to use for generating client transaction identifiers for the login and logout commands for the pool. (James F. Gould) * Added EPPSession.sendMessage(EPPMessage) to help in testing a negative test case, but also as a potentially useful method for sending any EPPMessage to the session. (James F. Gould) * Added more debug logging to EPPSSLImpl. (James F. Gould) * Added validation of the EPPMessage type in the EPPDispatcher and the EPPByteArrayDispatcher to ensure that receiving an EPPResponse or EPPGreeting in the server will return an appropriate error message. (James F. Gould) Changes in version 1.9.0.1 (04.20.2016) ----------------------------------- * Added support for running the com.verisign.epp.verificationcode.china.ChinaVerificationCodeTst test without the VSP pool and by loading the DNVC from the dnvc.b64 file and the RNVC from the rnvc.b64 file. (James F. Gould) * Added support for draft-brown-epp-fees-07. (James F. Gould) * Added additional SSL Protocol options in the comments of the EPP.SSLProtocol property and set the default protocol to TLSv1 in the epp.config. (James F. Gould) * Changed the com.verisign.epp.codec.verificationcode.EPPSignedCode.decode(byte[] aSignedCodeArray) : void from protected to public. (James F. Gould) Changes in version 1.9.0.0 (03.10.2016) ----------------------------------- * Updated the EPPUtil.decodeBooleanAttr(Element, String) method to properly identify a non-existent attribute and to enhance the format of the EPPDecodeException value to easier support. (James F. Gould) * Made the refundable and grace-period attributes of com.verisign.epp.codec.fee.v09.EPPFeeValue truly optional with no default value, while the applied attribute remained with the "immediate" default value based on the default value in the XSD. Added "has" methods for these attributes, changed the refundable to a Boolean to support a null value, and changed the encode and decode methods to handle non-existent attributes. (James F. Gould) * Added convenient constructor that takes both a EPPFeeValue and a currency (String) parameter for the com.verisign.epp.codec.fee.v09 classes of EPPFeeTransform, EPPFeeCreate, EPPFeeRenew, EPPFeeTransfer, and EPPFeeUpdate. (James F. Gould) * Added methods for passing and returning the Base64 encoded signed code into com.verisign.epp.codec.verificationcode.EPPEncodedSignedCodeValue. The new EPPEncodedSignedCodeValue methods: decodeValue(byte[]), decodeValue(String), encodeValue(boolean) : String, encodeValueByteArray() : byte[], and encodeValueByteArray(boolean) : byte[] where added. (James F. Gould) Changes in version 1.8.0.4 (02.18.2016) ----------------------------------- * Fixed a schema validation error with the change poll message produced by Stub Server. (James F. Gould) Changes in version 1.8.0.3 (02.18.2016) ----------------------------------- * Updated com.verisign.epp.verificationcode.china.ChinaVerificationCodeTst with matching changes in com.verisign.epp.sreverstub.NSDomainHandler to provide a more realistic change poll message. (James F. Gould) Changes in version 1.8.0.2 (02.04.2016) ----------------------------------- * Added the com.verisign.epp.verificationcode.china.ChinaVerificationCodeTst along with associated changes to the build and stub server behavior to support a test of the 7 predefined verification flows that will work against the Stub Server and the OT&E servers. (James F. Gould) * Added com.verisign.epp.pool.EPPSessionPool.hasSystemSessionPool(String) : boolean method to determine if a specific system session pool existed. (James F. Gould) * Fixed com.verisign.epp.codec.verificationcode.EPPVerificationCode.getVspId() : int to return UNDEFINED instead of throwing NumberFormatException when the vspId is not an integer. (James F. Gould) Changes in version 1.8.0.1 (01.28.2016) ----------------------------------- * Added validation of the verification code (vsp-id and code types) using formatted trust anchor alias names in the trust store. (James F. Gould) Changes in version 1.8.0.0 (01.22.2016) ----------------------------------- * Added hasTrustAnchor(): boolean and getTrustAnchor() : TrustAnchor to EPPSignedCode for getting the matching trust anchor from the PKIXParameters upon successful validation. (James F. Gould) * Added support for draft-zhou-eppext-reseller-mapping-02 and draft-zhou-eppext-reseller-02. (James F. Gould) Changes in version 1.7.0.1 (12.07.2015) ----------------------------------- * Added EPPCodecException.SAX_EXCEPTION to support throwing a specific exception when the signed code or signed mark do not pass XML schema validation. (James F. Gould) Changes in version 1.7.0.0 (12.03.2015) ----------------------------------- * Turned on error handling with EPPXMLErrorHandler by default within EPPSchemaCachingParser. It can be disabled by called EPPSchemaCachingParser.setErrorHandler(null). (James F. Gould) * Added support for an XMLSignature Parser Pool to increase performance in parsing and validating the XML Signature for the Verification Code extension and the Launch extension. (James F. Gould) * Added support for draft-gould-eppext-verificationcode-03, which added regular expression pattern for the format of the verification code token value in the XML schema. (James F. Gould) * Added support for draft-brown-epp-fees-05 and draft-brown-epp-fees-06. (James F. Gould) Changes in version 1.6.0.2 (11.09.2015) ----------------------------------- * Added support for draft-gould-eppext-verificationcode-02, which added support for the notApplicable status and profile status value. Changes in version 1.6.0.1 (11.03.2015) ----------------------------------- * Fixed the 'Exception decoding dateTime "": java.lang.IllegalArgumentException' caused by not checking for empty due or date attributes in com.verisign.epp.codec.verificationcode.VerificationCode.decode(). (James F. Gould) * Bumped down the info level logs to debug level logs in com.verisign.epp.util.EPPSchemaCachingParser. (James F. Gould) Changes in version 1.6.0.0 (10.21.2015) ----------------------------------- * Added the Verification Code Extension (verificationcode), that complies with draft-gould-eppext-verificationcode-00, to the Verisign Bundle. (James F. Gould) * Added the China Name Verification Mapping (vsp), that complies with a preview of draft-xie-eppext-nv-mapping-01, to the Verisign Bundle. (James F. Gould) Changes in version 1.5.0.0 (04.10.2015) ----------------------------------- * Added the EPPSession.sendPacket(byte []) method and EPPXMLStream.writePacket(byte[], OutputStream) to enable sending a packet through the session within having to go through the Codec. (James F. Gould) * Added the Change Poll Mapping (changepoll), that complies with draft-gould-change-poll-02, to the Verisign Bundle. (James F. Gould) * Added the Registry Fee Extension (fee), that complies with draft-brown-epp-fees-03 and draft-brown-epp-fees-04, to the Verisign Bundle. (James F. Gould) * Added the Allocation Token Extension (allocationtoken), that complies with draft-gould-allocation-token-02, to the Verisign Bundle. (James F. Gould) * Updated Launch Phase Extension (launch) to comply with draft-ietf-eppext-launchphase-03 and subsequently draft-ietf-eppext-launchphase-05, by adding support for the Trademark Check Form. (James F. Gould) * Added the IDN Map Extension (idnmap), that complies with draft-ietf-eppext-idnmap-01, to the Verisign Bundle. (James F. Gould) * Added the subID attribute in the info element of NameSuggestion. (Vincent Raemy) * Added the IDN Table Mapping (idntable), that complies with draft-gould-idn-table-02, to the Verisign Bundle. (James F. Gould) Changes in version 1.4.0.0 (05.01.2014) ----------------------------------- * Switched to be dependent on Java 6 instead of Java 5. The launch extension already was dependent on Java 6 and with the new dependency on the use of JAXB, the entire SDK is being moved to be dependent on Java 6. (James F. Gould) * Fixed a bug with encoding the XSD dateTime type in EPPUtil by using 4 digit precision for the seconds. The fix was to use a default of 3 digit precision (milliseconds) on the encode and to use JAXB DatatypeConverter.parseDateTime for parsing the dataTime value. Access methods were added (getTimeInstantFormat(): String and setTimeInstantFormat(String)) to enable changing the encoding format if needed. (James F. Gould) Changes in version 1.3.0.0 (12.03.2013) ----------------------------------- * Updated to the 25nov13 test SMD's (SMD's without whitespace) and test SMD Revocation List. The SMD Revocation List was converted from UTF-8 to ASCII. (James F. Gould) * Updated to support draft-tan-epp-launchphase-12 by updating the launch-1.0.xsd, updating the draft-tan-epp-launchphase.txt in the doc directory, and updating the code and tests to support the new validatorID optional attribute. (James F. Gould) Changes in version 1.2.0.0 (09.16.2013) ----------------------------------- * Fixed the XML namespace handling in the com.verisign.epp.codec.registry.EPPRegistryRegEx class and some of the client classes to com.verisign.epp.codec.registry.EPPRegistryRegEx. (James F. Gould) * Changed com.verisign.epp.codec.signedMark.EPPSignedMark to handle XML parsing exception. This is specially required while parsing the XML obtained from the encoded SMD. (Vijay Garothaya) Changes in version 1.1.0.4 (09.11.2013) ----------------------------------- * Changed com.verisign.epp.namestore.interfaces.NSDomain to extend com.verisign.epp.namestore.interfaces.EPPRelatedDomain instead of com.verisign.epp.namestore.interfaces.EPPDomain, since EPPRelatedDomain extends EPPDomain and adds important additional methods needed in NSDomain. (James F. Gould) * Broaden the tld type in NameSuggestion to support unicode values. (Vincent Raemy) * Updated the related domain extension to use generics throughout and added some additional convenience methods to simplify the API. (James F. Gould) * Added new "restricted" status for NameSuggestion. (Vincent Raemy) * Added a new "uTld" attribute in grid for NameSuggestion. (Vincent Raemy) Changes in version 1.1.0.3 (09.04.2013) ----------------------------------- * Added Domain Info Form and the Related Info Form to the info command of the Related Domain Extension, version 1.2. Added support for the two forms to com.verisign.epp.codec.relateddomainext.EPPRelatedDomainExtInfo as well as com.verisign.epp.interfaces.EPPRelatedDomain. (James F. Gould) * Added the EPPSignedMark(EPPEncodedSignedMark) constructor to convert an encodedSignedMark to a signedMark. (James F. Gould) * Addressed issue with using the sample SMD's with the signedMark and the default XML parser setting of normalizing the XML. In the event of using a signedMark, the XML is parsed a second time with the parser normalization disabled for the signedMark to pass validation. This included setting a "PACKET" SessionData attribute in the EPPXMLAssembler for use in the LaunchDomainHandler.doDomainCreate method to re-parse the packet. (James F. Gould). Changes in version 1.1.0.2 (08.16.2013) ----------------------------------- * Added a call to parser.setFeature(EPPSchemaCachingParser.NORMALIZE_DATA, false) in EPPSignedMark.parseAndGetDocElement(byte[]) and changed the default for the NORMALIZE_DATA feature to true in EPPSchemaCachingParser, since changing it to false does not trim the "token" type XML elements. (James F. Gould). Changes in version 1.1.0.1 (08.15.2013) ----------------------------------- * Changed the EPPUtil TIME_INSTANT_FORMAT constant back to use four digit time precision to be consistent with the format used previously. (James F. Gould). Changes in version 1.1.0.0 (08.14.2013) ----------------------------------- * Created constructor to directly decode the SMD InputStream in com.verisign.epp.codec.signedMark.EPPEncodedSignedMark. (James F. Gould) * Split com.verisign.epp.codec.signedMark.EPPSignedMark into com.verisign.epp.codec.signedMark.EPPSignedMark and com.verisign.epp.codec.signedMark.EPPEncodedSignedMark to isolate the base64 encoding and to address issues with retaining any extra whitespace contained in the signed mark to address the validation issue with the ICANN sample SMD's. (Vijay Garothaya) * Updated the com.verisign.epp.codec.launch.EPPLaunchTst tests to include validation of all of the ICANN sample Signed Mark Data (SMD) files. Added the ICANN sample SMD files to the distribution to support the tests. (James F. Gould) * The certs.crl file was split into the eppsdk.crl and the tmch-pilot.crl. The eppsdk.crl includes the CRL for the signed marks signed by the EPP SDK and the tmch-pilot.crl includes the CRL provided by ICANN for testing. (James F. Gould) * Added the test ICANN CA certificate to signedMarkTrust.jks to support validating the ICANN sample Signed Mark Data (SMD). (James F. Gould) * Added SMD revocation list validation to the LaunchDomainHandler class. (James F. Gould) * Added the ICANN test SMD revocation list (smd-test-revocation.csv) to the distribution to support the testing of the ICANN sample Signed Mark Data (SMD). (James F. Gould) * Created the com.verisign.epp.codec.signedMark.SMDRevocationList and com.verisign.epp.codec.signedMark.RevokedSMD classes to decode the SMD revocation list and to include the SMDRevocationList.isRevoked(EPPSignedMark) : boolean method to determine if a signed mark is revoked. (James F. Gould) Changes in version 1.0.0.5 (07.14.2013) ----------------------------------- * Added multiple domain command (create, update, delete, renew, transfer) support to Related Domain Extension. (James F. Gould) Changes in version 1.0.0.4 (07.08.2013) ----------------------------------- * Updated the EPP Registry Mapping to version 1.5 and updated the code to match. (James F. Gould) Changes in version 1.0.0.3 (06.03.2013) ----------------------------------- * Integrated the related domain extension into the bundle. (James F. Gould) Changes in version 1.0.0.2 (05.17.2013) ----------------------------------- * Updated to include draft-tan-epp-launchphase-11 that moved the under the element, which resulted in removing the EPPLaunchCheckResp.java, removing the EPPLaunchMapFactory, and adding EPPLaunchChkData.java. (James F. Gould) * Updated the registry mapping to include additional attributes. (James F. Gould) Changes in version 1.0.0.1 (05.07.2013) ----------------------------------- * Updated to include draft-tan-epp-launchphase-10 and draft-lozano-tmch-smd-02, called 10/02. (James F. Gould) * Updated the dependent jar files. (James F. Gould) * Added support for a Transformer pool based on the Parser pool properties based on the expense of instantiating a Transformer instance. (James F. Gould) Changes in version 1.0.0.0 (04.16.2013) ----------------------------------- * Updated Registry mapping to replace the claims1 and claims2 phases with the claims phase. (James F. Gould) * Updated Registry mapping to support sharePolicy for internal hosts and contacts. (James F. Gould) * Upgraded Launch extension to match draft-tan-epp-launchphase-09. (James F. Gould) * Integrated the Name Store/SRS Bundle 3.15.0.5 EPP SDK, the NAME Bundle 1.5.0.1 EPP SDK, and the Launch 2.0.1.0 EPP SDK into a single EPP SDK distribution. (James F. Gould)