• Encoding: Added Base58 encoding as an additional choice for all places where an encoding (such as “base64”, “hex”, etc.) can be selected.
  • Crypt2: Beware of using the GenEncodedSecretKey method — just after v9.5.0.49 was released, it was discovered that this property ignored the encoding (such as “base64” or “hex”) of the 2nd arg and instead followed the encoding as specified by the Crypt2.EncodingMode property. Applications can work around the problem by setting the EncodingMode property prior to calling this method.
  • Perl v5.20: Fixed the “undefined symbol: PL_stack_sp” error.
  • Email: The From property returned the name part undecoded if Q/B encoding was present.
  • RSA: Fixed the LittleEndian property behavior for encryption/decryption.
  • Http: Fixed the FinalRedirectUrl property.
  • Url: Added the Chilkat.Url class.
  • Global: Added the Chilkat.Global class.
  • TLS: Added the TlsVersion and TlsCipherSuite properties to Socket, HTTP, Ftp2, MailMan, Imap.
  • Email, MHT: UnpackUseRelPaths was ignored for Email.UnpackHtml and Mht.UnpackHtml.
    It was always unpacked to relative paths. (The Email.AspUnpack methods, however, must always have relative paths in the URLs within the HTML.)
  • FTP2: FTP resume/restart percent-done progress monitoring fixed.
  • PrivateKey: Added the Pkcs8EncryptAlg property.
  • FTP2: Fixed GetFile percent-done progress monitoring when restarting a download: did not start at, for example, 20%, and then progress to 100..
  • RSA: Now supports 8192 bits.
  • BandwidthThrottle: Added the BandwidthThrottleUp/Down properties to HTTP, SFTP, Socket, and Upload .
  • Upload: The BeginUpload and AbortUpload methods were missing in the Mono, PureBasic, “C” and other API’s.
  • PercentDone: Added PercentDoneScale property to FTP2, Http, Tar, Zip, SFtp, MailMan, Imap, Upload.
  • MailMan: Added the SmtpPipelining property.
  • Cert: Added the LoadPem method.
  • Socket: Added the ReceiveFailReason and SendFailReason properties.
  • RSA: The XML representation of the keys will now omit leading 0 byte if it exists. (Each part of the private key is a very large unsigned integer. When the most significant bit is 1, Chilkat previously prepended a 0 byte to make it non-negative. In hex representation, this would be obvious to see. However, in Base64 representation, an extra null byte at the beginning changes the Base64 string completely, and therefore looks different than the same key encoded without the leading 0 byte. To clarify: suppose you have the number 15. This could be represented as a single byte 0x0F. It could also be represented by 0x000F. Any number of leading zero bytes does not change the number.)
  • Zip: Fixed problem where backslashes in paths were not automatically getting converted to forward slashes.
  • HTTP: Fixed problem where client cert (set via the SetSslClientCert methodd) was not getting sent.
  • IMAP: The Imap.AuthMethod may now be set to “NONE”. This was needed in one case where the authentication was implicit with the client-side SSL/TLS cert. If set to “NONE”, then the Login method call may be omitted.
  • TLS(internal): SHA384/RSA added to TLS 1.2 signature algorithms extension. One particular server required it (but didn’t actually choose the algorithm in the handshake).
  • FTP2: Now uses MLSD in cases where it previously used LIST (when possible and when supported by the FTP server).
    (MLSD can only be used when ListPattern is empty or “*”, or “*.*” because only the LIST command accepts an argument.)
  • FTP2: The GetFile returned false when it should’ve returned true (in some cases).
  • IMAP: Fixed the AppendMail method: If the email date was in the 1st 10 days of the month, then the InternalDate format was using 1 char for the day (in the IMAP command) instead of 2 chars, which caused some types of servers to respond with an error.
  • EmailBundle: Fixed GetXml/SaveXml methods.
  • MHT: If a cache root is added, MHT will save a part to the file cache.
  • Socket: Added the KeepAlive property.
  • HttpRequest: Fixed RemoveParam method crash bug.
  • FTP2: UploadRate/DownloadRate events stopped at 4GB.
  • CertStore: Added the OpenWindowsStore method.
  • Http Proxy: Non-SSL/TLS HTTP proxy connections were trying to use CONNECT.
  • Http: Added the StreamResponseBodyPath property.
  • HttpRequest: Added the Boundary property. Allows an explicit boundary string to be specified for multipart/form-data requests (uploads).
  • HttpResponse: Fixed the cookie related properties and methods.
  • SFTP: Fixed mode 99 for the SyncDownloadTree method.
  • SFTP: Fixed the SyncDownloadTree method regarding certain decisions about whether to download newer files.
  • EmailBundle: Fixed the GetXml and SaveXml methods.
  • FTP2: Parsing for VxWorks / Wind River directory listings fixed.
  • Email: Fixed the ApUnpack and AspUnpackk2 methods.
  • DNS: Added DnsCaching capabilities in the new Chilkat.Global / CkGlobal class.
  • MailMan: Added the AutoUnwrapSecurity property.
  • Cert: Added the Cert.GetExtensionsAsXml method.
  • Asn: Added the new Asn class to provide an ASN.1 API.
  • Pem: Added the new Pem class.
  • MHT: Fixed: MHT was adding double-quotes to certain Content-Location URLs causing a mismatch between the URL in the HTML and the URL in the MIME sub-header.
  • SMTP: The internal automatic retry from EHLO to HELO did not work. If the SMTP server did not support EHLO, then EHLO was mistakenly tried a 2nd time instead of HELO.
  • MailMan: Added the ClientIpAddress property.