Commit graph

67 commits

Author SHA1 Message Date
wiz
31302fc06f Update to 2.10.4:
* Version 2.10.4 (released 2010-12-06)

** gnutls-serv: Corrected a buffer overflow. Reported and patch by Tomas Mraz.

** libgnutls: Use ASN1_NULL when writing parameters for RSA signatures.
This makes us comply with RFC3279. Reported by Michael Rommel.

** libgnutls: Reverted default behavior for verification and
introduced GNUTLS_VERIFY_DO_NOT_ALLOW_X509_V1_CA_CRT. Thus by default
V1 trusted CAs are allowed, unless the new flag is specified.

** minitasn1: Updated to Libtasn1 2.9.

** API and ABI modifications:
No changes since last version.
2010-12-12 11:58:53 +00:00
drochner
2069879c55 update to 2.10.3
changes: bugfixes
2010-11-26 17:56:14 +00:00
wiz
50e9dd4d98 Update to 2.10.2:
* Version 2.10.2 (released 2010-09-30)

** Use Libtool 2.2.10 to ease MinGW64 builds.

** libgnutls: Add new extended key usage ipsecIKE.

** libgnutls: Is now more liberal in the PEM decoding.
That is spaces and tabs are being skipped.

** libgnutls: Renamed NULL MAC to MAC-NULL to prevent clash with NULL cipher.
This prevented the usage of the TLS ciphersuites with NULL cipher.
See <http://thread.gmane.org/gmane.network.gnutls.general/2093>.

** libgnutls: The %COMPAT flag now allows larger records that violate the
TLS spec.

** libgnutls: Fix asynchronous API handling.
The code was clearing session hash data on EAGAIN.  Problem reported
by Sjoerd Simons <sjoerd.simons@collabora.co.uk> and Vivek
Dasmohapatra <vivek@collabora.co.uk>.  See
<http://thread.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/4531>.

** gnutls-cli: Flush stdout/stderr before removing buffering.
Reported by Knut Anders Hatlen see
<http://savannah.gnu.org/support/?107481>.
2010-10-16 16:43:42 +00:00
drochner
417c0701c1 update to 2.10.1
many fixes and API extensions, but still binary compatible afaict
2010-09-01 16:32:17 +00:00
drochner
ed9b7d21b9 update to 2.8.6
changes:
-interoperability improvements (especially for VeriSign)
-misc fixes
-translation updates
2010-04-13 16:31:27 +00:00
wiz
16513ccf69 Update to 2.8.5:
* Version 2.8.5 (released 2009-11-02)

** libgnutls: In server side when resuming a session do not overwrite the
** initial session data with the resumed session data.

** libgnutls: Fix PKCS#12 encoding.
The error you would get was "The OID is not supported.".  Problem
introduced for the v2.8.x branch in 2.7.6.

** guile: Compatibility with guile 2.x.
By Ludovic Courtes <ludovic.courtes@laas.fr>.

** tests: Fix expired cert in chainverify self-test.

** tests: Fix time bomb in chainverify self-test.
Reported by Andreas Metzler <ametzler@downhill.at.eu.org> in
<http://thread.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3925>.

** API and ABI modifications:
No changes since last version.
2009-11-03 00:15:41 +00:00
wiz
c3b72c8ff7 Update to 2.8.4:
* Version 2.8.4 (released 2009-09-18)

** libgnutls: Enable Camellia ciphers by default.

** libgnutls: Make OpenPGP hostname checking work again.
The patch to resolve the X.509 CN/SAN issue accidentally broken
OpenPGP hostname comparison.

** libgnutls: When printing X.509 certificates, handle XMPP SANs better.
Reported by Howard Chu <hyc@symas.com> in
<https://savannah.gnu.org/support/?106975>.

** API and ABI modifications:
No changes since last version.
2009-10-31 01:16:42 +00:00
snj
00462a6e26 Update to 2.8.3. Changes:
* Version 2.8.3 (released 2009-08-13)

** libgnutls: Fix patch for NUL in CN/SAN in last release.
Code intended to be removed would lead to an read-out-bound error in
some situations.  Reported by Tomas Hoger <thoger@redhat.com>.  A CVE
code have been allocated for the vulnerability: [CVE-2009-2730].

** libgnutls: Fix rare failure in gnutls_x509_crt_import.
The function may fail incorrectly when an earlier certificate was
imported to the same gnutls_x509_crt_t structure.

** libgnutls-extra, libgnutls-openssl: Fix MinGW cross-compiling build
error.

** tests: Made self-test mini-eagain take less time.

** doc: Typo fixes.

** API and ABI modifications:
No changes since last version.

* Version 2.8.2 (released 2009-08-10)

** libgnutls: Fix problem with NUL bytes in X.509 CN and SAN fields.
By using a NUL byte in CN/SAN fields, it was possible to fool GnuTLS
into 1) not printing the entire CN/SAN field value when printing a
certificate and 2) cause incorrect positive matches when matching a
hostname against a certificate.  Some CAs apparently have poor
checking of CN/SAN values and issue these (arguable invalid)
certificates.  Combined, this can be used by attackers to become a
MITM on server-authenticated TLS sessions.  The problem is mitigated
since attackers needs to get one certificate per site they want to
attack, and the attacker reveals his tracks by applying for a
certificate at the CA.  It does not apply to client authenticated TLS
sessions.  Research presented independently by Dan Kaminsky and Moxie
Marlinspike at BlackHat09.  Thanks to Tomas Hoger <thoger@redhat.com>
for providing one part of the patch.  [GNUTLS-SA-2009-4].

** libgnutls: Fix return value of gnutls_certificate_client_get_request_status.
Before it always returned false.  Reported by Peter Hendrickson
<pdh@wiredyne.com> in
<http://thread.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3668>.

** libgnutls: Fix off-by-one size computation error in unknown DN printing.
The error resulted in truncated strings when printing unknown OIDs in
X.509 certificate DNs.  Reported by Tim Kosse
<tim.kosse@filezilla-project.org> in
<http://thread.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3651>.

** libgnutls: Return correct bit lengths of some MPIs.
gnutls_dh_get_prime_bits, gnutls_rsa_export_get_modulus_bits, and
gnutls_dh_get_peers_public_bits.  Before the reported value was
overestimated.  Reported by Peter Hendrickson <pdh@wiredyne.com> in
<http://thread.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3607>.

** libgnutls: Avoid internal error when invoked after GNUTLS_E_AGAIN.
Report and patch by Tim Kosse <tim.kosse@filezilla-project.org> in
<http://permalink.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3671>
and
<http://permalink.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3670>.

** libgnutls: Relax checking of required libtasn1/libgcrypt versions.
Before we required that the runtime library used the same (or more
recent) libgcrypt/libtasn1 as it was compiled with.  Now we just check
that the runtime usage is above the minimum required.  Reported by
Marco d'Itri <md@linux.it> via Andreas Metzler
<ametzler@downhill.at.eu.org> in <http://bugs.debian.org/540449>.

** minitasn1: Internal copy updated to libtasn1 v2.3.

** tests: Fix failure in "chainverify" because a certificate have expired.

** API and ABI modifications:
No changes since last version.
2009-08-13 18:56:32 +00:00
drochner
c2955f31c6 disable the openssl compatibility library -- no pkg I know of needs
it, and it only has a potential to conflict with the real openssl
(bad things will happen if a program links or dlopen()s both)
bump PKGREVISION
(the bug fixed in the added patches is already fixed upstream, will
be in the next release)
2009-07-22 16:50:07 +00:00
wiz
f6abeed402 Update to 2.8.1:
* Version 2.8.1 (released 2009-06-10)

** libgnutls: Fix crash in gnutls_global_init after earlier init/deinit cycle.
Forwarded by Martin von Gagern <Martin.vGagern@gmx.net> from
<http://bugs.gentoo.org/272388>.

** libgnutls: Fix PKCS#12 decryption from password.
The encryption key derived from the password was incorrect for (on
average) 1 in every 128 input for random inputs.  Reported by "Kukosa,
Tomas" <tomas.kukosa@siemens-enterprise.com> in
<http://permalink.gmane.org/gmane.network.gnutls.general/1663>.

** API and ABI modifications:
No changes since last version.
2009-07-18 10:32:32 +00:00
drochner
efbf9d3adc Don't build in the doc/examples subdir, as suggested by Joern Clausen
in PRs pkg/39612 and pkg/41610.
The examples are not installed anyway, and this way build problems
on Solaris are avoided.
2009-06-18 10:19:46 +00:00
drochner
8fb8f27b60 fix build for systems without sys/ioctl.h (as Solaris 10),
addresses the first half of PR pkg/41610 by Joern Clausen
2009-06-17 17:54:46 +00:00
wiz
ec8af824dc Update to 2.8.0:
* Version 2.8.0 (released 2009-05-27)

** doc: Fix gnutls_dh_get_prime_bits.  Fix error codes and algorithm lists.

** Major changes compared to the v2.4 branch:

*** lib: Linker version scripts reduces number of exported symbols.

*** lib: Limit exported symbols on systems without LD linker scripts.

*** libgnutls: Fix namespace issue with version symbols.

*** libgnutls: Add functions to verify a hash against a certificate.
gnutls_x509_crt_verify_hash: ADDED
gnutls_x509_crt_get_verify_algorithm: ADDED

*** gnutls-serv: Listen on all interfaces, including both IPv4 and IPv6.

*** i18n: The GnuTLS gettext domain is now 'libgnutls' instead of 'gnutls'.

*** certtool: Query for multiple dnsName subjectAltName in interactive mode.

*** gnutls-cli: No longer accepts V1 CAs by default during X.509 chain verify.

*** gnutls-serv: No longer disable MAC padding by default.

*** gnutls-cli: Certificate information output format changed.

*** libgnutls: New priority strings %VERIFY_ALLOW_SIGN_RSA_MD5
*** and %VERIFY_ALLOW_X509_V1_CA_CRT.

*** libgnutls: gnutls_x509_crt_print prints signature algorithm in oneline mode.

*** libgnutls: gnutls_openpgp_crt_print supports oneline mode.

*** libgnutls: gnutls_handshake when sending client hello during a
rehandshake, will not offer a version number larger than the current.

*** libgnutls: New interface to get key id for certificate requests.
gnutls_x509_crq_get_key_id: ADDED.

*** libgnutls: gnutls_x509_crq_print will now also print public key id.

*** certtool: --verify-chain now prints results of using library verification.

*** libgnutls: Libgcrypt initialization changed.

*** libgnutls: Small byte reads via gnutls_record_recv() optimized.

*** gnutls-cli: Return non-zero exit code on error conditions.

*** gnutls-cli: Corrected bug which caused a rehandshake request to be ignored.

*** certtool: allow setting arbitrary key purpose object identifiers.

*** libgnutls: Change detection of when to use a linker version script.
Use --enable-ld-version-script or --disable-ld-version-script to
override auto-detection logic.

*** Fix warnings and build GnuTLS with more warnings enabled.

*** New API to set X.509 credentials from PKCS#12 memory structure.
gnutls_certificate_set_x509_simple_pkcs12_mem: ADDED

*** Old libgnutls.m4 and libgnutls-config scripts removed.
Please use pkg-config instead.

*** libgnutls: Added functions to handle CRL extensions.
gnutls_x509_crl_get_authority_key_id: ADDED
gnutls_x509_crl_get_number: ADDED
gnutls_x509_crl_get_extension_oid: ADDED
gnutls_x509_crl_get_extension_info: ADDED
gnutls_x509_crl_get_extension_data: ADDED
gnutls_x509_crl_set_authority_key_id: ADDED
gnutls_x509_crl_set_number: ADDED

*** libgnutls: Added functions to handle X.509 extensions in Certificate
Requests.
gnutls_x509_crq_get_key_rsa_raw: ADDED
gnutls_x509_crq_get_attribute_info: ADDED
gnutls_x509_crq_get_attribute_data: ADDED
gnutls_x509_crq_get_extension_info: ADDED
gnutls_x509_crq_get_extension_data: ADDED
gnutls_x509_crq_get_key_usage: ADDED
gnutls_x509_crq_get_basic_constraints: ADDED
gnutls_x509_crq_get_subject_alt_name: ADDED
gnutls_x509_crq_get_subject_alt_othername_oid: ADDED
gnutls_x509_crq_get_extension_by_oid: ADDED
gnutls_x509_crq_set_subject_alt_name: ADDED
gnutls_x509_crq_set_basic_constraints: ADDED
gnutls_x509_crq_set_key_usage: ADDED
gnutls_x509_crq_get_key_purpose_oid: ADDED
gnutls_x509_crq_set_key_purpose_oid: ADDED
gnutls_x509_crq_print: ADDED
gnutls_x509_crt_set_crq_extensions: ADDED

*** certtool: Print and set CRL and CRQ extensions.

*** minitasn1: Internal copy updated to libtasn1 v2.1.

*** examples: Now released into the public domain.

*** The Texinfo and GTK-DOC manuals were improved.

*** Several self-tests were added and others improved.

*** API/ABI changes in GnuTLS 2.8 compared to GnuTLS 2.6.x
No offically supported interfaces have been modified or removed.  The
library should be completely backwards compatible on both the source
and binary level.

The shared library no longer exports some symbols that have never been
officially supported, i.e., not mentioned in any of the header files.
The symbols are:

  _gnutls*
  gnutls_asn1_tab

Normally when symbols are removed, the shared library version has to
be incremented.  This leads to a significant cost for everyone using
the library.  Because none of the above symbols have ever been
intended for use by well-behaved applications, we decided that the it
would be better for those applications to pay the price rather than
incurring problems on the majority of applications.

If it turns out that applications have been using unofficial
interfaces, we will need to release a follow-on release on the v2.8
branch to exports additional interfaces.  However, initial testing
suggests that few if any applications have been using any of the
internal symbols.

Although not a new change compared to 2.6.x, we'd like to remind you
interfaces have been modified so that X.509 chain verification now
also checks activation/expiration times on certificates.  The affected
functions are:

gnutls_x509_crt_list_verify: CHANGED, checks activation/expiration times.
gnutls_certificate_verify_peers: Likewise.
gnutls_certificate_verify_peers2: Likewise.
GNUTLS_CERT_NOT_ACTIVATED: ADDED.
GNUTLS_CERT_EXPIRED: ADDED.
GNUTLS_VERIFY_DISABLE_TIME_CHECKS: ADDED.

This change in behaviour was made during the GnuTLS 2.6.x cycle, and
we gave our rationale for it in earlier release notes.

The following symbols have been added to the library:

gnutls_certificate_set_x509_simple_pkcs12_mem: ADDED
gnutls_x509_crl_get_authority_key_id: ADDED
gnutls_x509_crl_get_extension_data: ADDED
gnutls_x509_crl_get_extension_info: ADDED
gnutls_x509_crl_get_extension_oid: ADDED
gnutls_x509_crl_get_number: ADDED
gnutls_x509_crl_set_authority_key_id: ADDED
gnutls_x509_crl_set_number: ADDED
gnutls_x509_crq_get_attribute_data: ADDED
gnutls_x509_crq_get_attribute_info: ADDED
gnutls_x509_crq_get_basic_constraints: ADDED
gnutls_x509_crq_get_extension_by_oid: ADDED
gnutls_x509_crq_get_extension_data: ADDED
gnutls_x509_crq_get_extension_info: ADDED
gnutls_x509_crq_get_key_id: ADDED.
gnutls_x509_crq_get_key_purpose_oid: ADDED
gnutls_x509_crq_get_key_rsa_raw: ADDED
gnutls_x509_crq_get_key_usage: ADDED
gnutls_x509_crq_get_subject_alt_name: ADDED
gnutls_x509_crq_get_subject_alt_othername_oid: ADDED
gnutls_x509_crq_print: ADDED
gnutls_x509_crq_set_basic_constraints: ADDED
gnutls_x509_crq_set_key_purpose_oid: ADDED
gnutls_x509_crq_set_key_usage: ADDED
gnutls_x509_crq_set_subject_alt_name: ADDED
gnutls_x509_crt_get_verify_algorithm: ADDED
gnutls_x509_crt_set_crq_extensions: ADDED
gnutls_x509_crt_verify_hash: ADDED

The following interfaces have been added to the header files:

GNUTLS_VERSION: ADDED, replaces LIBGNUTLS_VERSION.
GNUTLS_VERSION_MAJOR: ADDED, replaces LIBGNUTLS_VERSION_MAJOR.
GNUTLS_VERSION_MINOR: ADDED, replaces LIBGNUTLS_VERSION_MINOR.
GNUTLS_VERSION_PATCH: ADDED, replaces LIBGNUTLS_VERSION_PATCH.
GNUTLS_VERSION_NUMBER: ADDED, replaces LIBGNUTLS_VERSION_NUMBER.
GNUTLS_EXTRA_VERSION: ADDED, replaces LIBGNUTLS_EXTRA_VERSION.

The following interfaces have been deprecated:

LIBGNUTLS_VERSION: DEPRECATED.
LIBGNUTLS_VERSION_MAJOR: DEPRECATED.
LIBGNUTLS_VERSION_MINOR: DEPRECATED.
LIBGNUTLS_VERSION_PATCH: DEPRECATED.
LIBGNUTLS_VERSION_NUMBER: DEPRECATED.
LIBGNUTLS_EXTRA_VERSION: DEPRECATED.

* Version 2.7.14 (released 2009-05-26)

** libgnutls: Fix namespace issue with version symbol for libgnutls-extra.
The symbol LIBGNUTLS_EXTRA_VERSION were renamed to
GNUTLS_EXTRA_VERSION.  The old symbol will continue to work but is
deprecated.

** Doc: Several typo fixes in documentation.
Reported by Peter Hendrickson <pdh@wiredyne.com>.

** API and ABI modifications:
GNUTLS_VERSION: ADDED, replaces LIBGNUTLS_EXTRA_VERSION.
LIBGNUTLS_EXTRA_VERSION: DEPRECATED.

* Version 2.7.13 (released 2009-05-25)

** libgnutls: Fix version of some exported symbols in the shared library.
Reported by Andreas Metzler <ametzler@downhill.at.eu.org> in
<http://thread.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3576>.

** tests: Handle recently expired certificates in chainverify self-test.
Reported by Andreas Metzler <ametzler@downhill.at.eu.org> in
<http://permalink.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3580>.

** API and ABI modifications:
No changes since last version.

* Version 2.7.12 (released 2009-05-20)

** gnutls-serv, gnutls-cli-debug: Make them work on Windows.

** tests/crq_key_id: Don't read entropy from /dev/random in self-test.
Reported by Andreas Metzler <ametzler@downhill.at.eu.org> in
<http://permalink.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3570>.

** Fix build failures.
Missing sa_family_t and vsnprintf on IRIX.  Reported by "Tom
G. Christensen" <tgc@jupiterrise.com> in
<http://permalink.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3571>.

** minitasn1: Internal copy updated to libtasn1 v2.2.
GnuTLS should work fine with libtasn1 v1.x and that is still
supported.

** API and ABI modifications:
No changes since last version.

* Version 2.7.11 (released 2009-05-18)

** minitasn1: Fix build failure when using internal libtasn1.
Reported by "Tom G. Christensen" <tgc@jupiterrise.com> in
<http://permalink.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3548>.

** libgnutls: Fix build failure with --disable-cxx.
Reported by Andreas Metzler <ametzler@downhill.at.eu.org> in
<http://permalink.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3557>.

** gnutls-serv: Fix build failure for unportable NI_MAXHOST/NI_MAXSERV.
Reported by "Tom G. Christensen" <tgc@jupiterrise.com> in
<http://permalink.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3560>

** Building with many warning flags now requires --enable-gcc-warnings.
This avoids crying wolf for normal compiles.

** API and ABI modifications:
No changes since last version.

* Version 2.7.10 (released 2009-05-13)

** examples: Now released into the public domain.
This makes the license of the example code compatible with more
licenses, including the (L)GPL.

** minitasn1: Internal copy updated to libtasn1 v2.1.
GnuTLS should work fine with libtasn1 v1.x and that is still
supported.

** libgnutls: Fix crash in signature verification
The fix for the CVE-2009-1415 problem wasn't merged completely.

** doc: Fixes for GTK-DOC output.

** API and ABI modifications:
No changes since last version.

* Version 2.7.9 (released 2009-05-11)

** doc: Fix strings in man page of gnutls_priority_init.

** doc: Fix tables of error codes and supported algorithms.

** Fix build failure when cross-compiled using MinGW.

** Fix build failure when LZO is enabled.
Reported by Arfrever Frehtes Taifersar Arahesis
<arfrever.fta@gmail.com> in
<http://permalink.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3522>.

** Fix build failure on systems without AF_INET6, e.g., Solaris 2.6.
Reported by "Tom G. Christensen" <tgc@jupiterrise.com> in
<http://thread.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3524>.

** Fix warnings in self-tests.

** API and ABI modifications:
No changes since last version.

* Version 2.7.8 (released 2009-05-03)

** libgnutls: Fix DSA key generation.
Merged from stable branch.  [GNUTLS-SA-2009-2] [CVE-2009-1416]

** libgnutls: Check expiration/activation time on untrusted certificates.
Merged from stable branch.  Reported by Romain Francoise
<romain@orebokech.com>.  This changes the semantics of
gnutls_x509_crt_list_verify, which in turn is used by
gnutls_certificate_verify_peers and gnutls_certificate_verify_peers2.
We add two new gnutls_certificate_status_t codes for reporting the new
error condition, GNUTLS_CERT_NOT_ACTIVATED and GNUTLS_CERT_EXPIRED.
We also add a new gnutls_certificate_verify_flags flag,
GNUTLS_VERIFY_DISABLE_TIME_CHECKS, that can be used to disable the new
behaviour.  [GNUTLS-SA-2009-3] [CVE-2009-1417]

** lib: Linker version scripts reduces number of exported symbols.
The linker version script now lists all exported ABIs explicitly, to
avoid accidentally exporting unintended functions.  Compared to
before, most symbols beginning with _gnutls* are no longer exported.
These functions have never been intended for use by applications, and
there were no prototypes for these function in the public header
files.  Thus we believe it is possible to do this without incrementing
the library ABI version which normally has to be done when removing an
interface.

** lib: Limit exported symbols on systems without LD linker scripts.
Before all symbols were exported.  Now we limit the exported symbols
to (for libgnutls and libgnutls-extra) gnutls* and (for libgnutls)
_gnutls*.  This is a superset of the actual supported ABI, but still
an improvement compared to before.  This is implemented using Libtool
-export-symbols-regex.  It is more portable than linker version
scripts.

** libgnutls: Incremented CURRENT/AGE libtool version to reflect new symbols.
This should have been done in the last release.

** gnutls-serv: Listen on all interfaces, including both IPv4 and IPv6.
Reported by Peter Hendrickson <pdh@wiredyne.com> in
<http://thread.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3476>.

** doc: Improved sections for the info manual.
We now follow the advice given by the texinfo manual on which
directory categories to use.  In particular, libgnutls moved from the
'GNU Libraries' section to the 'Software libraries' and the command
line tools moved from 'Network Applications' to 'System
Administration'.

** API and ABI modifications:
gnutls_x509_crt_list_verify: CHANGED, checks activation/expiration times.
gnutls_certificate_verify_peers: Likewise.
gnutls_certificate_verify_peers2: Likewise.
GNUTLS_CERT_NOT_ACTIVATED: ADDED.
GNUTLS_CERT_EXPIRED: ADDED.
GNUTLS_VERIFY_DISABLE_TIME_CHECKS: ADDED.

* Version 2.7.7 (released 2009-04-20)

** libgnutls: Applied patch by Cedric Bail to add functions
gnutls_x509_crt_verify_hash() and gnutls_x509_crt_get_verify_algorithm().

** gnutls.pc: Add -ltasn1 to 'pkg-config --libs --static gnutls' output.
Reported by Andreas Metzler <ametzler@downhill.at.eu.org> in
<http://article.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3467>.

** minitasn1: Internal copy updated to libtasn1 v1.8.
GnuTLS is also internally ready to be used with libtasn1 v2.0.

** doc: Fix build failure of errcodes/printlist.
Reported by Roman Bogorodskiy <novel@FreeBSD.org> in
<http://permalink.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3435>.

** i18n: The GnuTLS gettext domain is now 'libgnutls' instead of 'gnutls'.
It is currently only used by the core library.  This will enable a new
domain 'gnutls' for translations of the command line tools.

** Corrected possible memory corruption on signature verification failure.
Reported by Miroslav Kratochvil <exa.exa@gmail.com>

** API and ABI modifications:
gnutls_x509_crt_verify_hash: ADDED
gnutls_x509_crt_get_verify_algorithm: ADDED

* Version 2.7.6 (released 2009-02-27)

** certtool: Query for multiple dnsName subjectAltName in interactive mode.
This applies both to generating certificates and certificate requests.

** pkix.asn: Removed unneeded definitions to reduce memory usage.

** gnutls-cli: No longer accepts V1 CAs by default during X.509 chain verify.
Use --priority NORMAL:%VERIFY_ALLOW_X509_V1_CA_CRT to permit V1 CAs to
be used for chain verification.

** gnutls-serv: No longer disable MAC padding by default.
Use --priority NORMAL:%COMPAT to disable MAC padding again.

** gnutls-cli: Certificate information output format changed.
The tool now uses libgnutls' functions to print certificate
information.  This avoids code duplication.

** libgnutls: New priority strings %VERIFY_ALLOW_SIGN_RSA_MD5
** and %VERIFY_ALLOW_X509_V1_CA_CRT.
They can be used to override the default certificate chain validation
behaviour.

** libgnutls: Added %SSL3_RECORD_VERSION priority string that allows to
specify the client hello message record version. Used to overcome buggy
TLS servers. Report by Martin von Gagern.

** libgnutls: gnutls_x509_crt_print prints signature algorithm in oneline mode.

** libgnutls: gnutls_openpgp_crt_print supports oneline mode.

** doc: Update gnutls-cli and gnutls-serv --help output descriptions.

** API and ABI modifications:
No changes since last version.

* Version 2.7.5 (released 2009-02-06)

** libgnutls: Accept chains where intermediary certs are trusted.
Before GnuTLS needed to validate the entire chain back to a
self-signed certificate.  GnuTLS will now stop looking when it has
found an intermediary trusted certificate.  The new behaviour is
useful when chains, for example, contains a top-level CA, an
intermediary CA signed using RSA-MD5, and an end-entity certificate.
To avoid chain validation errors due to the RSA-MD5 cert, you can
explicitly add the intermediary RSA-MD5 cert to your trusted certs.
The signature on trusted certificates are not checked, so the chain
has a chance to validate correctly.  Reported by "Douglas E. Engert"
<deengert@anl.gov> in
<http://thread.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3351>.

** libgnutls: result_size in gnutls_hex_encode now holds
the size of the result. Report by John Brooks <special@dereferenced.net>.

** libgnutls: gnutls_handshake when sending client hello during a
rehandshake, will not offer a version number larger than the current.
Reported by Tristan Hill <stan@saticed.me.uk>.

** libgnutls: Permit V1 Certificate Authorities properly.
Before they were mistakenly rejected even though
GNUTLS_VERIFY_ALLOW_ANY_X509_V1_CA_CRT and/or
GNUTLS_VERIFY_ALLOW_X509_V1_CA_CRT were supplied.  Reported by
"Douglas E. Engert" <deengert@anl.gov> in
<http://thread.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3351>.

** API and ABI modifications:
No changes since last version.

* Version 2.7.4 (released 2009-01-07)

** libgnutls: deprecate X.509 validation chains using MD5 and MD2 signatures.
This is a bugfix -- the previous attempt to do this from internal x509
certificate verification procedures did not return the correct value
for certificates using a weak hash.  Reported by Daniel Kahn Gillmor
<dkg@fifthhorseman.net> in
<http://thread.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3332>,
debugged and patch by Tomas Mraz <tmraz@redhat.com> and Daniel Kahn
Gillmor <dkg@fifthhorseman.net>.

** libgnutls: New interface to get key id for certificate requests.
Patch from David Marín Carreño <davefx@gmail.com> in
<http://thread.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3321>.

** libgnutls: gnutls_x509_crq_print will now also print public key id.

** certtool: --verify-chain now prints results of using library verification.
Earlier, certtool --verify-chain used its own validation algorithm
which wasn't guaranteed to give the same result as the libgnutls
internal validation algorithm.  Now this command print a new final
line with header 'Chain verification output:' that contains the result
from using the internal verification algorithm on the same chain.

** tests: Add crq_key_id self-test of gnutls_x509_crq_get_key_id.

** API and ABI modifications:
gnutls_x509_crq_get_key_id: ADDED.

* Version 2.7.3 (released 2008-12-10)

** libgnutls: Fix chain verification for chains that ends with RSA-MD2 CAs.
Reported by Michael Kiefer <Michael-Kiefer@web.de> in
<http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=507633> forwarded by
Andreas Metzler <ametzler@downhill.at.eu.org> in
<http://thread.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3309>.

** libgnutls: Libgcrypt initialization changed.
If libgcrypt has not already been initialized, GnuTLS will now
initialize libgcrypt with disabled secure memory.  Initialize
libgcrypt explicitly in your application if you want to enable secure
memory.  Before GnuTLS initialized libgcrypt to use GnuTLS's memory
allocation functions, which doesn't use secure memory, so there is no
real change in behaviour.

** libgnutls: Fix memory leak in PSK authentication.
Reported by Michael Weiser <michael@weiser.dinsnail.net> in
<http://permalink.gmane.org/gmane.network.gnutls.general/1465>.

** libgnutls: Small byte reads via gnutls_record_recv() optimized.

** certtool: Move gcry_control(GCRYCTL_ENABLE_QUICK_RANDOM, 0) call earlier.
It needs to be invoked before libgcrypt is initialized.

** gnutls-cli: Return non-zero exit code on error conditions.

** gnutls-cli: Corrected bug which caused a rehandshake request to be ignored.

** tests: Added chainverify self-test that tests X.509 chain verifications.

** API and ABI modifications:
No changes since last version.

* Version 2.7.2 (released 2008-11-18)

** libgnutls: Fix X.509 certificate chain validation error. [GNUTLS-SA-2008-3]
The flaw makes it possible for man in the middle attackers (i.e.,
active attackers) to assume any name and trick GNU TLS clients into
trusting that name.  Thanks for report and analysis from Martin von
Gagern <Martin.vGagern@gmx.net>.  [CVE-2008-4989]

Any updates with more details about this vulnerability will be added
to <http://www.gnu.org/software/gnutls/security.html>

** libgnutls: Fix namespace issue with version symbols.
The symbols LIBGNUTLS_VERSION, LIBGNUTLS_VERSION_MAJOR,
LIBGNUTLS_VERSION_MINOR, LIBGNUTLS_VERSION_PATCH, and
LIBGNUTLS_VERSION_NUMBER were renamed to GNUTLS_VERSION_NUMBER,
GNUTLS_VERSION_MAJOR, GNUTLS_VERSION_MINOR, GNUTLS_VERSION_PATCH, and
GNUTLS_VERSION_NUMBER respectively.  The old symbols will continue to
work but are deprecated.

** certtool: allow setting arbitrary key purpose object identifiers.

** libgnutls: Fix detection of C99 macros, to make debug logging work again.

** libgnutls: Add missing prototype for gnutls_srp_set_prime_bits.
Reported by Kevin Quick <quick@sparq.org> in
<https://savannah.gnu.org/support/index.php?106454>.

** libgnutls-extra: Make building with LZO compression work again.
Build failure reported by Arfrever Frehtes Taifersar Arahesis
<arfrever.fta@gmail.com> in
<http://permalink.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3194>.

** libgnutls: Change detection of when to use a linker version script.
Use --enable-ld-version-script or --disable-ld-version-script to
override auto-detection logic.

** doc: Change license on the manual to GFDLv1.3+.

** doc: GTK-DOC fixes for new splitted configuration system.

** doc: Texinfo stylesheet uses white background.

** tests: Add cve-2008-4989.c self-test.
Tests regressions of the GNUTLS-SA-2008-3 security problem, and the
follow-on problem with crashes on length 1 certificate chains.

** gnulib: Deprecated modules removed.
Modules include memchr and memcmp.

** Fix warnings and build GnuTLS with more warnings enabled.

** minitasn1: Internal copy updated to libtasn1 v1.7.

** API and ABI modifications:
gnutls_certificate_set_x509_simple_pkcs12_mem: ADDED
GNUTLS_VERSION: ADDED, replaces LIBGNUTLS_VERSION.
GNUTLS_VERSION_MAJOR: ADDED, replaces LIBGNUTLS_VERSION_MAJOR.
GNUTLS_VERSION_MINOR: ADDED, replaces LIBGNUTLS_VERSION_MINOR.
GNUTLS_VERSION_PATCH: ADDED, replaces LIBGNUTLS_VERSION_PATCH.
GNUTLS_VERSION_NUMBER: ADDED, replaces LIBGNUTLS_VERSION_NUMBER.
LIBGNUTLS_VERSION: DEPRECATED.
LIBGNUTLS_VERSION_MAJOR: DEPRECATED.
LIBGNUTLS_VERSION_MINOR: DEPRECATED.
LIBGNUTLS_VERSION_PATCH: DEPRECATED.
LIBGNUTLS_VERSION_NUMBER: DEPRECATED.

* Version 2.7.1 (released 2008-10-31)

** certtool: print a PKCS #8 key even if it is not encrypted.

** Old libgnutls.m4 and libgnutls-config scripts removed.
Please use pkg-config instead.

** Configuration system modified.
There is now a configure script in lib/ and libextra/ as well, because
gnulib works better with a config.h per gnulib directory.

** API and ABI modifications:
No changes since last version.

* Version 2.7.0 (released 2008-10-16)

** libgnutls: Added functions to handle CRL extensions.

** libgnutls: Added functions to handle X.509 extensions in Certificate
Requests.

** libgnutls: Improved error string for GNUTLS_E_AGAIN.
Suggested by "Lavrentiev, Anton (NIH/NLM/NCBI) [C]" <lavr@ncbi.nlm.nih.gov>.

** certtool: Print and set CRL and CRQ extensions.

** libgnutls-extra: Protect internal symbols with static.
Fixes problem when linking certtool statically.  Tiny patch from Aaron
Ucko <ucko@ncbi.nlm.nih.gov>.

** libgnutls-openssl: fix out of bounds access.
Problem in X509_get_subject_name and X509_get_issuer_name.  Tiny patch
from Thomas Viehmann <tv@beamnet.de>.

** libgnutlsxx: Define server_session::get_srp_username even if no SRP.

** tests: Make tests compile when using internal libtasn1.
Patch by ludo@gnu.org (Ludovic Courtès).

** Changed detection of libtasn1 and libgcrypt to avoid depending on *-config.
We now require a libgcrypt that has Camellia constants declared in
gcrypt.h, which means v1.3.0 or later.

** API and ABI modifications:
gnutls_x509_crl_get_authority_key_id: ADDED
gnutls_x509_crl_get_number: ADDED
gnutls_x509_crl_get_extension_oid: ADDED
gnutls_x509_crl_get_extension_info: ADDED
gnutls_x509_crl_get_extension_data: ADDED
gnutls_x509_crl_set_authority_key_id: ADDED
gnutls_x509_crl_set_number: ADDED
gnutls_x509_crq_get_key_rsa_raw: ADDED
gnutls_x509_crq_get_attribute_info: ADDED
gnutls_x509_crq_get_attribute_data: ADDED
gnutls_x509_crq_get_extension_info: ADDED
gnutls_x509_crq_get_extension_data: ADDED
gnutls_x509_crq_get_key_usage: ADDED
gnutls_x509_crq_get_basic_constraints: ADDED
gnutls_x509_crq_get_subject_alt_name: ADDED
gnutls_x509_crq_get_subject_alt_othername_oid: ADDED
gnutls_x509_crq_get_extension_by_oid: ADDED
gnutls_x509_crq_set_subject_alt_name: ADDED
gnutls_x509_crq_set_basic_constraints: ADDED
gnutls_x509_crq_set_key_usage: ADDED
gnutls_x509_crq_get_key_purpose_oid: ADDED
gnutls_x509_crq_set_key_purpose_oid: ADDED
gnutls_x509_crq_print: ADDED
gnutls_x509_crt_set_crq_extensions: ADDED
2009-06-09 18:56:37 +00:00
tnn
6ca4d7852f Update to gnutls-2.6.6.
* Version 2.6.6 (released 2009-04-30)

libgnutls: Corrected double free on signature verification failure.
  Reported by Miroslav Kratochvil.  See the advisory
  for more details.  [GNUTLS-SA-2009-1] [CVE-2009-1415]

libgnutls: Fix DSA key generation.
  Noticed when investigating the previous GNUTLS-SA-2009-1 problem.  All
  DSA keys generated using GnuTLS 2.6.x are corrupt.  See the advisory
  for more details.  [GNUTLS-SA-2009-2] [CVE-2009-1416]

libgnutls: Check expiration/activation time on untrusted certificates.
  Reported by Romain Francoise.  Before the
  library did not check activation/expiration times on certificates, and
  was documented as not doing so.  We have realized that many
  applications that use libgnutls, including gnutls-cli, fail to perform
  proper checks.  Implementing similar logic in all applications leads
  to code duplication.  Hence, we decided to check whether the current
  time (as reported by the time function) is within the
  activation/expiration period of certificates when verifying untrusted
  certificates.

This changes the semantics of gnutls_x509_crt_list_verify, which in
turn is used by gnutls_certificate_verify_peers and
gnutls_certificate_verify_peers2.  We add two new
gnutls_certificate_status_t codes for reporting the new error
condition, GNUTLS_CERT_NOT_ACTIVATED and GNUTLS_CERT_EXPIRED.  We also
add a new gnutls_certificate_verify_flags flag,
GNUTLS_VERIFY_DISABLE_TIME_CHECKS, that can be used to disable the new
behaviour.

API and ABI modifications:
  gnutls_x509_crt_list_verify: CHANGED, checks activation/expiration times.
  gnutls_certificate_verify_peers: Likewise.
  gnutls_certificate_verify_peers2: Likewise.
  GNUTLS_CERT_NOT_ACTIVATED: ADDED.
  GNUTLS_CERT_EXPIRED: ADDED.
  GNUTLS_VERIFY_DISABLE_TIME_CHECKS: ADDED.
2009-05-02 20:04:32 +00:00
wiz
19105dd1b7 Update to 2.6.5. Update commented out LICENSE (needs two).
* Version 2.6.5 (released 2009-04-11)

** libgnutls: Added %SSL3_RECORD_VERSION priority string that allows to
specify the client hello message record version. Used to overcome buggy
TLS servers. Report by Martin von Gagern.

** GnuTLS no longer uses the libtasn1-config script to find libtasn1.
Libtasn1 0.3.4 or later is required.  This is to align with the
upcoming libtasn1 v2.0 release that doesn't have a libtasn1-script.

** API and ABI modifications:
No changes since last version.
2009-04-20 13:11:57 +00:00
wiz
212cbcbac7 Update to 2.6.4:
* Version 2.6.4 (released 2009-02-06)

** libgnutls: Accept chains where intermediary certs are trusted.
Before GnuTLS needed to validate the entire chain back to a
self-signed certificate.  GnuTLS will now stop looking when it has
found an intermediary trusted certificate.  The new behaviour is
useful when chains, for example, contains a top-level CA, an
intermediary CA signed using RSA-MD5, and an end-entity certificate.
To avoid chain validation errors due to the RSA-MD5 cert, you can
explicitly add the intermediary RSA-MD5 cert to your trusted certs.
The signature on trusted certificates are not checked, so the chain
has a chance to validate correctly.  Reported by "Douglas E. Engert"
<deengert@anl.gov> in
<http://thread.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3351>.

** libgnutls: result_size in gnutls_hex_encode now holds
the size of the result. Report by John Brooks <special@dereferenced.net>.

** libgnutls: gnutls_handshake when sending client hello during a
rehandshake, will not offer a version number larger than the current.
Reported by Tristan Hill <stan@saticed.me.uk>.

** libgnutls: Permit V1 Certificate Authorities properly.
Before they were mistakenly rejected even though
GNUTLS_VERIFY_ALLOW_ANY_X509_V1_CA_CRT and/or
GNUTLS_VERIFY_ALLOW_X509_V1_CA_CRT were supplied.  Reported by
"Douglas E. Engert" <deengert@anl.gov> in
<http://thread.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3351>.

** libgnutls: deprecate X.509 validation chains using MD5 and MD2 signatures.
This is a bugfix -- the previous attempt to do this from internal x509
certificate verification procedures did not return the correct value
for certificates using a weak hash.  Reported by Daniel Kahn Gillmor
<dkg@fifthhorseman.net> in
<http://thread.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3332>,
debugged and patch by Tomas Mraz <tmraz@redhat.com> and Daniel Kahn
Gillmor <dkg@fifthhorseman.net>.

** libgnutls: Fix compile error with Sun CC.
Reported by Jeff Cai <jeff.cai@sun.com> in
<https://savannah.gnu.org/support/?106549>.
2009-02-21 13:45:31 +00:00
adam
57adf42ff0 Changes 2.6.3
* gnutls: Fix chain verification for chains that ends with RSA-MD2 CAs.
* gnutls: Fix memory leak in PSK authentication.
* certtool: Move gcry_control(GCRYCTL_ENABLE_QUICK_RANDOM, 0) call earlier.
  It needs to be invoked before libgcrypt is initialized.
* gnutls-cli: Return non-zero exit code on error conditions.
* gnutls-cli: Corrected bug which caused a rehandshake request to be ignored.
2008-12-19 15:43:20 +00:00
wiz
c1a52e57ff Update to 2.6.2:
* Version 2.6.2 (released 2008-11-12)

** libgnutls: Fix crash in X.509 validation code for self-signed certificates.
The patch to fix the security problem GNUTLS-SA-2008-3 introduced a
problem for certificate chains that contained just one self-signed
certificate.  Reported by Michael Meskes <meskes@debian.org> in
<http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=505279>.

** API and ABI modifications:
No changes since last version.
2008-11-15 23:02:09 +00:00
wiz
35bfc5a2d4 Update to 2.6.1:
* Version 2.6.1 (released 2008-11-10)

** libgnutls: Fix X.509 certificate chain validation error. [GNUTLS-SA-2008-3]
The flaw makes it possible for man in the middle attackers (i.e.,
active attackers) to assume any name and trick GNU TLS clients into
trusting that name.  Thanks for report and analysis from Martin von
Gagern <Martin.vGagern@gmx.net>.  [CVE-2008-4989]

Any updates with more details about this vulnerability will be added
to <http://www.gnu.org/software/gnutls/security.html>

** libgnutls: Add missing prototype for gnutls_srp_set_prime_bits.
Reported by Kevin Quick <quick@sparq.org> in
<https://savannah.gnu.org/support/index.php?106454>.

** libgnutls-extra: Protect internal symbols with static.
Fixes problem when linking certtool statically.  Tiny patch from Aaron
Ucko <ucko@ncbi.nlm.nih.gov>.

** libgnutls-openssl: Fix patch against X509_get_issuer_name.
It incorrectly returned the subject DN instead of issuer DN in v2.6.0.
Thanks to Thomas Viehmann <tv@beamnet.de> for report.

** certtool: Print a PKCS #8 key even if it is not encrypted.

** tests: Make tests compile when using internal libtasn1.
Patch by ludo@gnu.org (Ludovic Courtès).

** API and ABI modifications:
No changes since last version.
2008-11-10 17:33:20 +00:00
wiz
871bf5d2c7 Add patch-ag, patch-ah, patch-ai (hi, shannonjr!). 2008-10-29 11:45:34 +00:00
adam
978fa43d4e Changes 2.6.0:
* libgnutls: Correct printing and parsing of IPv6 addresses.
* libgnutls-openssl: fix out of bounds access.
* certtool: Use inet_pton for parsing IPv6 addresses.
* Added API to replace and update the crypto backend.
* certtool: can add several subject alternative names via template file.
* opencdk: Parse (but not decrypt) encrypted secret keys.
* more...
2008-10-18 11:55:11 +00:00
tonnerre
3e58fd536d If strverscmp() is not present, gnutls shouldn't export a symbol of the
same name, breaking the builds of libraries trying to both link against
libcurl and use strverscmp(). Bump PKGREVISION.

Fixes PR 39640.
2008-09-27 23:11:36 +00:00
kefren
ad4ad68b38 update to gnutls-2.4.1
Changes:

** libgnutls: Fix local crash in gnutls_handshake. [GNUTLS-SA-2008-2]
** libgnutls: Fix memory leaks when doing a re-handshake.
** Fix compiler warnings.
** Fix ordering of -I's to avoid opencdk.h conflict with system headers.
** srptool: Fix a problem where --verify check does not succeed.
2008-07-30 17:17:21 +00:00
tnn
1a4e5d5cb6 Update to gnutls-2.2.5.
* Version 2.2.5 (released 2008-05-19)
  Fix flaw in fix for GNUTLS-SA-2008-1-3.
* Version 2.2.4 (released 2008-05-19)
  Fix three security vulnerabilities.  [GNUTLS-SA-2008-1]
  [GNUTLS-SA-2008-1-1]
   libgnutls: Fix crash when sending invalid server name.
  [GNUTLS-SA-2008-1-2]
   libgnutls: Fix crash when sending repeated client hellos.
  [GNUTLS-SA-2008-1-3]
   libgnutls: Fix crash in cipher padding decoding for invalid record lengths.
* Version 2.2.3 (released 2008-05-06)
  Increase default handshake packet size limit to 48kb.
  Fix compilation error related to __FUNCTION__ on some systems.
  Documented the --priority option to gnutls-cli and gnutls-serv.
  Fix fopen file descriptor leak in PSK server code.
  Build Guile code with -fgnu89-inline only when supported.
  Make Camellia encryption work.
2008-05-22 13:18:52 +00:00
wiz
0cf6fb1a13 Update to 2.2.2:
* Version 2.2.2 (released 2008-02-21)

** Cipher priority string handling now handle strings that starts with NULL.
Thanks to Laurence Withers <l@lwithers.me.uk>.

** Corrected memory leaks in session resuming and DHE ciphersuites. Reported
by Daniel Stenberg.

** Increased the default certificate verification chain limits and allowed
for checks without limitation.

** Corrected the behaviour of gnutls_x509_crt_get_subject_alt_name()
and gnutls_x509_crt_get_subject_alt_name() to not null terminate binary
strings and return the proper size.

** API and ABI modifications:
No changes since last version.

* Version 2.2.1 (released 2008-01-17)

** Prevent linking libextra against previously installed libgnutls.
Tiny patch from "Alon Bar-Lev" <alon.barlev@gmail.com>, see
<http://bugs.gentoo.org/show_bug.cgi?id=202269>.

** Fixes the post_client_hello_function(). The extensions are now parsed
in a callback friendly way.

** Fix for certificate selection in servers with certificate callbacks.

** API and ABI modifications:
No changes since last version.

* Version 2.2.0 (released 2007-12-14)

Major changes compared to the v2.0 branch:

* SRP support aligned with newly published RFC 5054.

* OpenPGP support aligned with newly published RFC 5081.

* Support for DSA2 keys.

* Support for Camellia cipher.

* Support for Opaque PRF Input extension.

* PKCS#8 parser now handle DSA keys.

* Change from GPLv2 to GPLv3 for command-line tools, libgnutls-extra,
etc.  Notice that liblzo2 2.02 is licensed under GPLv2 only.  Earlier
versions, such as 2.01 which is included with GnuTLS, is available under
GPLv2 or later.  If this incompatibility causes problems, we recommend
you to disable LZO using --without-lzo.  LZO compression is not a
standard TLS compression algorithm, so the impact should be minimal.

* Functions for disabling record protocol padding.
Works around bugs on Nokia/Ericsson phones.

* New functions gnutls_priority_set() for setting cipher priorities easily.
Priorities like "COMPAT" also enables other work arounds, such as
disabling padding.

* Other minor improvements and bug fixes.

Minor changes compared to the latest v2.1.8 release candidate:

* Update internal copy of libtasn1 to version 1.2.

* Certtool --verify-chain now handle inputs larger than 64kb.
This fixes the self-test "rsa-md5-collision" under MinGW+Wine with
recent versions of libgcrypt.  The problem was that Wine with the
libgcrypt RNG generates huge amounts of debugging output.

* Translation updates.
Added Dutch translation.  Updated Polish and Swedish translation.

Backwards incompatible API/ABI changes in GnuTLS 2.2
====================================================

To adapt to changes in the TLS extension specifications for OpenPGP
and SRP, the GnuTLS API had to be modified.  This means breaking the
API and ABI backwards compatibility.  That is something we try to
avoid unless it is necessary.  We decided to also remove the already
deprecated stub functions for X.509 to XML conversion and TLS
authorization (see below) when we had the opportunity.

Generally, most applications does not need to be modified.  Just
re-compile them against the latest GnuTLS release, and it should work
fine.

Applications that use the OpenPGP or SRP features needs to be
modified.  Below is a list of the modified APIs and discussion of what
the minimal things you need to modify in your application to make it
work with GnuTLS 2.2.

Note that GnuTLS 2.2 also introduces new APIs -- such as
gnutls_set_priority() that is superior to
gnutls_set_default_priority() -- that you may want to start using.
However, using those new APIs is not required to use GnuTLS 2.2 since
the old functions continue are still supported.  This text only
discuss what you minimally have to modify.

XML related changes
-------------------

The function `gnutls_x509_crt_to_xml' has been removed.  It has been
deprecated and only returned an error code since GnuTLS version
1.2.11.  Nobody has complained, so users doesn't seem to miss the
functionality.  We don't know of any other library to convert X.509
certificates into XML format, but we decided (long ago) that GnuTLS
isn't the right place for this kind of functionality.  If you want
help to find some other library to use here, please explain and
discuss your use case on help-gnutls <at> gnu.org.

TLS Authorization related changes
---------------------------------

Everything related to TLS authorizations have been removed, they were
only stub functions that returned an error code:

 GNUTLS_SUPPLEMENTAL_AUTHZ_DATA
 gnutls_authz_data_format_type_t
 gnutls_authz_recv_callback_func
 gnutls_authz_send_callback_func
 gnutls_authz_enable
 gnutls_authz_send_x509_attr_cert
 gnutls_authz_send_saml_assertion
 gnutls_authz_send_x509_attr_cert_url
 gnutls_authz_send_saml_assertion_url

SRP related changes
-------------------

The callback gnutls_srp_client_credentials_function has a new
prototype, and its semantic has changed.  You need to rewrite the
callback, see the updated function documentation and SRP example code
(doc/examples/ex-client-srp.c and doc/examples/ex-serv-srp.c) for more
information.

The alert codes GNUTLS_A_MISSING_SRP_USERNAME and
GNUTLS_A_UNKNOWN_SRP_USERNAME are no longer used by the SRP
specification, instead the GNUTLS_A_UNKNOWN_PSK_IDENTITY alert is
used.  There are #define's to map the old names to the new.  You may
run into problems if you have a switch-case with cases for both SRP
alerts, since they are now mapped to the same value.  The solution is
to drop the SRP alerts from such switch cases, as they are now
deprecated in favor of GNUTLS_A_UNKNOWN_PSK_IDENTITY.

OpenPGP related changes
-----------------------

The function `gnutls_certificate_set_openpgp_keyserver' have been
removed.  There is no replacement functionality inside GnuTLS.  If you
need keyserver functionality, consider using the GnuPG tools.

All functions, types, and error codes related to OpenPGP trustdb
format have been removed.  The trustdb format is a non-standard
GnuPG-specific format, and we recommend you to use key rings instead.
The following have been removed:
 gnutls_certificate_set_openpgp_trustdb
 gnutls_openpgp_trustdb_init
 gnutls_openpgp_trustdb_deinit
 gnutls_openpgp_trustdb_import
 gnutls_openpgp_key_verify_trustdb
 gnutls_openpgp_trustdb_t
 GNUTLS_E_OPENPGP_TRUSTDB_VERSION_UNSUPPORTED

The following functions has an added parameter of the (new) type
`gnutls_openpgp_crt_fmt_t'.  The type specify the format of the data
(binary or base64).  The functions are:
 gnutls_certificate_set_openpgp_key_file
 gnutls_certificate_set_openpgp_key_mem
 gnutls_certificate_set_openpgp_keyring_mem
 gnutls_certificate_set_openpgp_keyring_file

To improve terminology and align with the X.509 interface, some
functions have been renamed.  Compatibility mappings exists.  The old
and new names of the affected functions and types are:

        Old name                                New name
 gnutls_openpgp_key_t                    gnutls_openpgp_crt_t
 gnutls_openpgp_key_fmt_t                gnutls_openpgp_crt_fmt_t
 gnutls_openpgp_key_status_t             gnutls_openpgp_crt_status_t
 GNUTLS_OPENPGP_KEY                      GNUTLS_OPENPGP_CERT
 GNUTLS_OPENPGP_KEY_FINGERPRINT          GNUTLS_OPENPGP_CERT_FINGERPRINT
 gnutls_openpgp_key_init                 gnutls_openpgp_crt_init
 gnutls_openpgp_key_deinit               gnutls_openpgp_crt_deinit
 gnutls_openpgp_key_import               gnutls_openpgp_crt_import
 gnutls_openpgp_key_export               gnutls_openpgp_crt_export
 gnutls_openpgp_key_get_key_usage        gnutls_openpgp_crt_get_key_usage
 gnutls_openpgp_key_get_fingerprint      gnutls_openpgp_crt_get_fingerprint
 gnutls_openpgp_key_get_pk_algorithm     gnutls_openpgp_crt_get_pk_algorithm
 gnutls_openpgp_key_get_name             gnutls_openpgp_crt_get_name
 gnutls_openpgp_key_get_version          gnutls_openpgp_crt_get_version
 gnutls_openpgp_key_get_creation_time    gnutls_openpgp_crt_get_creation_time
 gnutls_openpgp_key_get_expiration_time  gnutls_openpgp_crt_get_expiration_time
 gnutls_openpgp_key_get_id               gnutls_openpgp_crt_get_id
 gnutls_openpgp_key_check_hostname       gnutls_openpgp_crt_check_hostname
 gnutls_openpgp_send_key                 gnutls_openpgp_send_cert


* Version 2.0.0 (released 2007-09-04)

The following changes have been made since GnuTLS 1.6:

* Support for external RSA/DSA signing for TLS client authentication.
  This allows you to secure the private key better, for example by using
  privilege-separation techniques between the private key and the
  network client/server.

* Support for signing X.509 certificates using RSA with SHA-256/384/512.

* Experimental support for TLS 1.2 (disabled by default).  The TLS 1.2
  specification is not finalized yet, but we implement a draft version
  for testing.

* Support for X.509 Proxy Certificates (RFC 3820)

* Support for Supplemental handshakes messages (RFC 4680).

* Support for TLS authorization extension (draft-housley-tls-authz-extns-07).

* Support for the X.509 'otherName' Subject Altnerative Names (for XMPP).

* Guile bindings for GnuTLS have been added, thanks to Ludovic Courtes.

* Improve logic of gnutls_set_default_priority() which can now be more
  recommended.

* New APIs to enumerate supported algorithms in the library.

* New APIs to access X.509 Certificate extension sequentially.

* New APIs to print X.509 Certificates and CRLs in human readable formats.

* New APIs to extract X.509 Distinguished Names from certificates.

* New APIs to handle pathLenConstraint in X.509 Basic Constraints.

* Certtool can export more than one certificate to PKCS#12.

* Several message translation improvements.

* Instructions and improvements to easily set up a HTTPS test server.

* Included copies updated to Libtasn1 1.1 and OpenCDK 0.6.4.

* Build improvements for Windows, Mac OS X, uClinux, etc.

* GnuTLS is now developed in GIT.

* Improved manual

* Many bugfixes and minor improvements.
2008-03-06 14:52:12 +00:00
wiz
4f0bb18778 Update to 2.0.4:
* Version 2.0.4 (released 2007-11-16)

** Corrected bug in decompression of expanded compression data.

** API and ABI modifications:
No changes since last version.
2007-11-25 23:45:15 +00:00
wiz
37b88d319f Update to 2.0.3:
* Version 2.0.3 (released 2007-11-10)

** This version backports several fixes from the 2.1.x branch.

** Fixed PKCS #3 parameter export.

** Added gnutls_record_disable_padding() to allow servers talking to
buggy clients that complain if the TLS 1.0 record protocol padding is
used.

** Introduced gnutls_session_enable_compatibility_mode() to allow enabling
all supported compatibility options (like disabling padding).

** Corrected bug which did not allow a server to run without supporting
certificates.

** API and ABI modifications:
gnutls_session_enable_compatibility_mode: ADDED
gnutls_record_disable_padding: ADDED

Add LICENSE, commented out; it contains both LGPL-2.1 and GPL2 code.
2007-11-11 19:28:27 +00:00
rillig
5282781bd9 Fixed building the package with sunpro. 2007-11-03 23:45:56 +00:00
wiz
fdc7ca16d9 Update to 2.0.2:
* Version 2.0.2 (released 2007-10-17)

** TLS authorization support removed.
This technique may be patented in the future, and it is not of crucial
importance for the Internet community.  After deliberation we have
concluded that the best thing we can do in this situation is to
encourage society not to adopt this technique.  We have decided to
lead the way with our own actions.

** certtool: Fixed data corruption when using --outder.

** Fix configure-time Guile detection.

** API and ABI modifications:
GNUTLS_SUPPLEMENTAL_USER_MAPPING_DATA: ADDED.  To avoid that the
    gnutls_supplemental_data_format_type_t enum type becomes empty.

* Version 2.0.1 (released 2007-09-20)

** New directory doc/credentials/ with test credentials.
This collects the test credentials from the web page and from src/.
The script gnutls-http-serv has also been moved to that directory.

** Update SRP extension type and cipher suite with official IANA values.
This breaks backwards compatibility with SRP in older versions of
GnuTLS, but this is intentional to speed up the adoption of the
official values.  The old values we used were incorrect.

** Guile: Fix `x509-certificate-dn-oid'

** API and ABI modifications:
No changes since last version.
2007-10-23 11:43:56 +00:00
joerg
fad8ac6a38 Hack around stupid GNUlib mess to allow building on DragonFly. 2007-09-14 12:03:37 +00:00
drochner
57b1c21bd1 update to 2.0.0
While an update to a .0 version is somehow risky, it finishes the
unfortunate state that the pkgsrc gnutls didn't work with the pkgsrc
opencdk, which I wouldn't like to go into the next stable branch.
Release candidates have worked for me, and there is some time left
before the Q3 branch, so I'm confident.
changes:
* Support for external RSA/DSA signing for TLS client authentication
-many X.509 enhancements
 Support for Supplemental handshakes messages (RFC 4680)
* Support for TLS authorization extension (draft-housley-tls-authz-extns-07)
* Improve logic of gnutls_set_default_priority()
* New APIs to enumerate supported algorithms in the library
* Certtool can export more than one certificate to PKCS#12
* Several message translation improvements
* Improved manual
* Many bugfixes and minor improvements
2007-09-05 21:51:21 +00:00
wiz
d9680b8931 Update to 1.6.3:
* Version 1.6.3 (released 2007-05-26)

** New API functions to extract DER encoded X.509 Subject/Issuer DN.
Suggested by Nate Nielsen <nielsen-list@memberwebs.com>.  Backported
from the 1.7.x branch, see
<http://lists.gnu.org/archive/html/help-gnutls/2007-05/msg00029.html>.

** Have PKCS8 parser return better error codes.
Reported by Nate Nielsen <nielsen-list@memberwebs.com>, see
<http://lists.gnupg.org/pipermail/gnutls-dev/2007-May/001653.html> and
<http://lists.gnupg.org/pipermail/gnutls-dev/2007-May/001654.html>.

** Fix mem leak for sessions with client authentication via certificates.
Reported by Andrew W. Nosenko <andrew.w.nosenko@gmail.com>, see
<http://lists.gnupg.org/pipermail/gnutls-dev/2007-April/001539.html>.

** Fix building of 'tlsia' self test.
Earlier some gcc are known to build tlsia linking to
$prefix/lib/libgnutls-extra.so rather than the libgnutls-extra.so in
the build directory, even though command line parameters look OK.
Changing order of some parameters fixes it.

** API and ABI modifications:
gnutls_x509_crt_get_raw_issuer_dn: ADD.
gnutls_x509_crt_get_raw_dn: ADD.
2007-06-01 20:12:44 +00:00
wiz
be84695db3 Update to 1.6.2:
* Version 1.6.2 (released 2007-04-18)

** Fix X.509 signing with RSA-PKCS#1 to set a NULL parameters fields.
Before, we remove the parameters field, which resulted in a slightly
different DER encoding which in turn caused signature verification
failures of GnuTLS-generated RSA certificates in some other
implementations (e.g., GnuPG 2.x's gpgsm).  Depending on which RFCs
you read, this may or may not be correct, but our new behaviour appear
to be consistent with other widely used implementations.

** Regenerate the PKIX ASN.1 syntax tree.
For some reason, after changing the ASN.1 type of ldap-UID in the last
release, the generated C file built from the ASN.1 schema was not
refreshed.  This can cause problems when reading/writing UID
components inside X.500 Distinguished Names.  Reported by devel
<dev001@pas-world.com>.

** Updated translations.

** API and ABI modifications:
No changes since last version.
2007-04-20 06:07:15 +00:00
tron
8070b8de09 Renable and fix build of C++ library under Mac OS X.
Bump package revision because of this fix.
2007-01-24 15:58:04 +00:00
wiz
a45b42f314 Update to 1.6.1:
* Version 1.6.1 (released 2006-12-28)

** Fix the list of trusted CAs that server's send to clients.
Before, the list contained issuer DN's instead of subject DN's of the
trusted CAs.  Reported by Max Kellermann

** Fix gnutls_certificate_set_x509_crl to initialize the CRL before using it.
Reported by Max Kellermann

** Encode UID fields in DN's as DirectoryString.
Before GnuTLS encoded and parsed UID fields as IA5String.  This was
incorrect, it should have used DirectoryString.  Now it will use
DirectoryString for the UID field, but for backwards compatibility it
will also accept IA5String UID's.  Reported by Max Kellermann

** Fix ./configure failure with non-GCC compilers.
This fixes the following error message:
configure: error: conditional "HAVE_LD_OUTPUT_DEF" was never defined.
Reported by "Michael C. Vergallen"

* Version 1.6.0 (released 2006-11-17)

** No changes since 1.5.5.
The major changes compared to the 1.4.x branch are:

*** A GnuTLS C++ library is part of the official distribution.
Currently there are no examples or documentation, but hopefully this
will change.  See gnutlsxx.h for the API.

*** Windows is a supported platform.
There are, however, two know bugs.  One is related to select() in
command line tools (not, nota bene, in the library), the other is a
problem with libgcrypt that causes delays.  Help is needed to resolve
those issues, so we feel we can't delay the release because of this.

*** New APIs for custom push/pull function error reporting.
The new APIs are gnutls_transport_set_errno and
gnutls_transport_set_global_errno.  See the release notes for version
1.5.4 for more information.

*** Self tests are run under valgrind, if available.  See --disable-valgrind.
2007-01-20 17:38:06 +00:00
drochner
98cb7c213a update to 1.4.5
changes: minor bugfixes
2006-11-13 18:15:14 +00:00
wiz
770746f32b Update to 1.4.4:
* Version 1.4.4 (released 2006-09-12)

** Relax the test that caught signatures that exploit the variant of
** Bleichenbacher's Crypto 06 rump session attack on our
** verification logic flaw.
In particular, we now permit the digestAlgorithm.parameters field to
be present but empty, whereas in 1.4.3 we actually checked that the
field was absent.

** Revert the removal of debug information for the GNUTLS-SA-2006-3 problem.
The messages are only printed in debug mode, which is not recommended
for normal use, and thus logging this situation cannot be abused as an
oracle in typical recommended situations.

** API and ABI modifications:
No changes since last version.
2006-09-16 06:21:22 +00:00
wiz
9b945c6d8f Update to 1.4.3:
* Version 1.4.3 (released 2006-09-08)

** Fix PKCS#1 verification to avoid a variant of Bleichenbacher's
** Crypto 06 rump session attack.
In particular, we check that the digestAlgorithm.parameters field is
empty, to avoid that it can contain "garbage" that may be used to
alter the numeric properties of the signature.  See
<http://www.imc.org/ietf-openpgp/mail-archive/msg14307.html> (which is
not exactly the same as the problem we fix here).  Reported by Yutaka
OIWA <y.oiwa@aist.go.jp>.

See GNUTLS-SA-2006-4 on http://www.gnutls.org/security.html for more
up to date information.

** Fix PKCS#1 decryption to avoid Bleichenbacher's Crypto 98 attack.
See <http://www.bell-labs.com/user/bleichen/papers/pkcs.ps.gz>.
Reported by Werner Koch <wk@gnupg.org>.

See GNUTLS-SA-2006-3 on http://www.gnutls.org/security.html for more
up to date information.

** Fix crash in gnutls_x509_crt_sign2 if passed a NULL issuer_key.

** API and ABI modifications:
No changes since last version.

* Version 1.4.2 (released 2006-08-12)

** Fix a crash (strcmp() on a NULL value) in the certificate verification logic.
This can happen if you call gnutls_certificate_verify_peers2 and have
a certain mix of local CA certificates and the peer send special
certificates, that together trigger certain behaviour.  It is not
known at this point whether the crash can be triggered without the
special local CA certificate, and thus turn this into a remote crash
of clients that verify server certificates when they talk to a server
with the special server certificate.  See GNUTLS-SA-2006-2 on
http://www.gnu.org/software/gnutls/security.html for more up to date
information.  Reported by satyakumar <satyam_kkd@hyd.hellosoft.com>.

** Change SRP and Cert-Type extensions to match IANA registry.

** OpenCDK updated to 0.5.9 to fix some problems with OpenPGP support.

** Make --without-included-libtasn1 work.
Reported by Daniel Black <dragonheart@gentoo.org>.

** API and ABI modifications:
No changes since last version.
2006-09-10 21:12:21 +00:00
wiz
6a6d26166e Update to 1.4.1:
* Version 1.4.1 (released 2006-06-14)

** Replaced inactive ifdefs to enable openpgp support in test programs.

** Fixed bug in OpenPGP authentication handshake.

** Fixed typographical in man pages.

** Build fixes of the manual.

** Added Swedish translation.

** API and ABI modifications:
No changes since last version.
2006-07-17 17:02:02 +00:00
wiz
402ad5a531 Update to 1.4.0:
* Version 1.4.0 (released 2006-05-15)

** Remove GnuTLS 0.8.x compatibility functions.

** The libgcrypt RNG is initialized in gnutls_global_init().

** TLS/IA API changes from Emile van Bergen.
A dummy credential structure is not needed now, if you wish to use the
low-level TLS/IA API, simply call gnutls_ia_enable to enable TLS/IA on
a session.

** The self-tests are now run under valgrind, if it is installed.

** Libtasn1 is updated to 0.3.4, and that version is now required.

** The command line tools now use getaddrinfo and support IPv6.

** API and ABI modifications:
_gnutls_x509_get_raw_crt_activation_time,
_gnutls_x509_get_raw_crt_expiration_time: Removed.
gnutls_ia_require_inner_phase: Removed, replaced by gnutls_ia_enable.
gnutls_ia_enable: Added.
2006-05-17 21:50:22 +00:00
cube
b98c17bb79 Update to version 1.3.5. Fixes build failures related to libtasn1.
- Error messages are now translated using GNU Gettext.

- The function gnutls_x509_crt_to_xml now return an internal error.
This means that the code to convert X.509 certificates to XML format
does not work any more.  The reason is that the function called
libtasn1 internal functions.  It seems unclean for libtasn1 to export
the APIs needed here.  Instead it would be better to implement XML
support inside libtasn1 properly.  If you need this functionality
strongly, please consider looking into implementing this suggested
approach instead.  As a workaround, you may also modify lib/x509/xml.c
(change '#if 1' to '#if 0') and build using --with-included-libtasn1.

- Doc fixes to explain that gnutls_record_send can block.

- gnutls-cli can now recognize services and port numbers with the -p option.
2006-03-09 17:25:54 +00:00
wiz
498c5fa0fc Fix build with libtasn1-0.3.0, and depend on it. 2006-03-04 23:45:07 +00:00
drochner
6ef154571c update libtasn1 to 0.2.18 and gnutls to 1.3.4,
fixes possible DOS (crash by invalid DER input) "GNUTLS-SA-2006-1"
2006-02-10 12:39:25 +00:00
adam
138d487004 Changes 1.3.3:
** New API to access the TLS master secret.
When possible, you should use the TLS PRF functions instead.

** Improved handling when multiple libraries use GnuTLS at the same time.
Now gnutls_global_init() can be called multiple times, and
gnutls_global_deinit() will only deallocate the structure when it has
been called as many times as gnutls_global_init() was called.

** Added a self test of TLS resume functionality.

** Fix crash in TLS resume code, caused by TLS/IA changes.

** Add 'const' keywords in various places, from Frediano ZIGLIO.

** The code was indented again, including the external header files.

** API and ABI modifications:
New functions to retrieve the master secret value:
  gnutls_session_get_master_secret

Add a 'const' keyword to existing API:
  gnutls_x509_crq_get_challenge_password
2006-01-20 21:14:04 +00:00
wiz
29458ff754 Update to 1.3.2:
* Version 1.3.2 (released 2005-12-15)

** GnuTLS now support TLS Inner application (TLS/IA).
This is per draft-funk-tls-inner-application-extension-01.  This
functionality is added to libgnutls-extra, so it is licensed under the
GNU General Public License.

** New APIs to access the TLS Pseudo-Random-Function (PRF).
The PRF is used by some protocols building on TLS, such as EAP-PEAP
and EAP-TTLS.  One function to access the raw PRF and one to access
the PRF seeded with the client/server random fields are provided.
Suggested by Jouni Malinen <jkmaline@cc.hut.fi>.

** New APIs to acceess the client and server random fields in a session.
These fields can be useful by protocols using TLS.  Note that these
fields are typically used as input to the TLS PRF, and if this is your
intended use, you should use the TLS PRF API that use the
client/server random field directly.  Suggested by Jouni Malinen
<jkmaline@cc.hut.fi>.

** Internal type cleanups.
The uint8, uint16, uint32 types have been replaced by uint8_t,
uint16_t, uint32_t.  Gnulib is used to guarantee the presence of
correct types on platforms that lack them.  The uint type have been
replaced by unsigned.

** API and ABI modifications:
New functions to invoke the TLS Pseudo-Random-Function (PRF):
  gnutls_prf
  gnutls_prf_raw

New functions to retrieve the session's client and server random values:
  gnutls_session_get_server_random
  gnutls_session_get_client_random

New function, to perform TLS/IA handshake:
  gnutls_ia_handshake

New function to decide whether to do a TLS/IA handshake:
  gnutls_ia_handshake_p

New functions to allocate a TLS/IA credential:
  gnutls_ia_allocate_client_credentials
  gnutls_ia_free_client_credentials
  gnutls_ia_allocate_server_credentials
  gnutls_ia_free_server_credentials

New functions to handle the AVP callback:
  gnutls_ia_set_client_avp_function
  gnutls_ia_set_client_avp_ptr
  gnutls_ia_get_client_avp_ptr
  gnutls_ia_set_server_avp_function
  gnutls_ia_set_server_avp_ptr
  gnutls_ia_get_server_avp_ptr

New functions, to toggle TLS/IA application phases:
  gnutls_ia_require_inner_phase

New function to mix session keys with inner secret:
  gnutls_ia_permute_inner_secret

Low-level API (used internally by gnutls_ia_handshake):
  gnutls_ia_endphase_send
  gnutls_ia_send
  gnutls_ia_recv

New functions that can be used after successful TLS/IA negotiation:
  gnutls_ia_generate_challenge
  gnutls_ia_extract_inner_secret

Enum type with TLS/IA modes:
  gnutls_ia_mode_t

Enum type with TLS/IA packet types:
  gnutls_ia_apptype_t

Enum values for TLS/IA alerts:
  GNUTLS_A_INNER_APPLICATION_FAILURE
  GNUTLS_A_INNER_APPLICATION_VERIFICATION

New error codes, to signal when an application phase has finished:
  GNUTLS_E_WARNING_IA_IPHF_RECEIVED
  GNUTLS_E_WARNING_IA_FPHF_RECEIVED

New error code to signal TLS/IA verify failure:
  GNUTLS_E_IA_VERIFY_FAILED

* Version 1.3.1 (released 2005-12-08)

** Support for DHE-PSK cipher suites has been added.
This method offers perfect forward secrecy.

** Fix gnutls-cli STARTTLS hang when SIGINT is sent too quickly, thanks to
Otto Maddox <ottomaddox@fastmail.fm> and Nozomu Ando <nand@mac.com>.

** Corrected a bug in certtool for 64 bit machines. Reported
by Max Kellermann <max@duempel.org>.

** New function to set a X.509 private key and certificate pairs, and/or
CRLs, from an PKCS#12 file, suggested by Emile van Bergen
<emile@e-advies.nl>.

The integrity of the PKCS#12 file is protected through a password
based MAC; public-key based signatures for integrity protection are
not supported.  PKCS#12 bags may be encrypted using password derived
symmetric keys, public-key based encryption is not supported.  The
PKCS#8 keys may be encrypted using passwords.  The API use the same
password for all operations.  We believe that any more flexibility
create too much complexity that would hurt overall security, but may
add more PKCS#12 related APIs if real-world experience indicate
otherwise.

** gnutls_x509_privkey_import_pkcs8 now accept unencrypted PEM PKCS#8 keys,
reported by Emile van Bergen <emile@e-advies.nl>.
This will enable "certtool -k -8" to parse those keys.

** Certtool now generate keys in unencrypted PKCS#8 format for empty passwords.
Use "certtool -p -8" and press press enter at the prompt.  Earlier,
certtool would have encrypted the key using an empty password.

** Certtool now accept --password for --key-info and encrypted PKCS#8 keys.
Earlier it would have prompted the user for it, even if --password was
supplied.

** Added self test of PKCS#8 parsing.
Unencrypted and encrypted (pbeWithSHAAnd3-KeyTripleDES-CBC and
pbeWithSHAAnd40BitRC2-CBC) formats are tested.  The test is in
tests/pkcs8.

** API and ABI modifications:
New function to set X.509 credentials from a PKCS#12 file:
  gnutls_certificate_set_x509_simple_pkcs12_file

New gnutls_kx_algorithm_t enum type:
  GNUTLS_KX_DHE_PSK

New API to return session data (better data types than
gnutls_session_get_data):
  gnutls_session_get_data2

New API to set PSK Diffie-Hellman parameters:
  gnutls_psk_set_server_dh_params

* Version 1.3.0 (2005-11-15)

** Support for TLS Pre-Shared Key (TLS-PSK) ciphersuites have been added.
This add several new APIs, see below.  Read the updated manual for
more information.  A new self test "pskself" has been added, that will
test this functionality.

** The session resumption data are now system independent.

** The code has been re-indented to conform to the GNU coding style.

** Removed the RIPEMD ciphersuites.

** Added a discussion of the internals of gnutls in manual.

** Fixes for Tru64 UNIX 4.0D that lack MAP_FAILED, from Albert Chin.

** Remove trailing comma in enums, for IBM C v6, from Albert Chin.

** Make sure config.h is included first in a few files, from Albert Chin.

** Don't use C++ comments ("//") as they are invalid, from Albert Chin.

** Don't install SRP programs and man pages if --disable-srp-authentication,
from Albert Chin.

** API and ABI modifications:
New gnutls_kx_algorithm_t key exchange type: GNUTLS_KX_PSK

New gnutls_credentials_type_t credential type:
  GNUTLS_CRD_PSK

New credential types:
  gnutls_psk_server_credentials_t
  gnutls_psk_client_credentials_t

New functions to allocate PSK credentials:
  gnutls_psk_allocate_client_credentials
  gnutls_psk_free_client_credentials
  gnutls_psk_free_server_credentials
  gnutls_psk_allocate_server_credentials

New enum type for PSK key flags:
  gnutls_psk_key_flags

New function prototypes for credential callback:
  gnutls_psk_client_credentials_function
  gnutls_psk_server_credentials_function

New function to set PSK username and key:
  gnutls_psk_set_client_credentials

New function to set PSK passwd file:
  gnutls_psk_set_server_credentials_file

New function to extract PSK user in server:
  gnutls_psk_server_get_username

New functions to set PSK callback:
  gnutls_psk_set_server_credentials_function
  gnutls_psk_set_client_credentials_function

Use size_t instead of int for output size parameter:
  gnutls_srp_base64_encode
  gnutls_srp_base64_decode
2005-12-31 00:02:58 +00:00
wiz
3b21cdb13b Update to 1.2.9:
* Version 1.2.9 (2005-11-07)
- Documentation was updated and improved.
- RSA-MD2 is now supported for verifying digital signatures.
- Due to cryptographic advances, verifying untrusted X.509
  certificates signed with RSA-MD2 or RSA-MD5 will now fail with a
  GNUTLS_CERT_INSECURE_ALGORITHM verification output.  For
  applications that must remain interoperable, you can use the
  GNUTLS_VERIFY_ALLOW_SIGN_RSA_MD2 or GNUTLS_VERIFY_ALLOW_SIGN_RSA_MD5
  flags when verifying certificates.  Naturally, this is not
  recommended default behaviour for applications.  To enable the
  broken algorithms, call gnutls_certificate_set_verify_flags with the
  proper flag, to change the verification mode used by
  gnutls_certificate_verify_peers2.
- Make it possible to send empty data through gnutls_record_send,
  to align with the send(2) API.
- Some changes in the certificate receiving part of handshake to prevent
  some possible errors with non-blocking servers.
- Added numeric version symbols to permit simple CPP-based feature
  tests, suggested by Daniel Stenberg <daniel@haxx.se>.
- The (experimental) low-level crypto alternative to libgcrypt used
  earlier (Nettle) has been replaced with crypto code from gnulib.
  This leads to easier re-use of these components in other projects,
  leading to more review and simpler maintenance.  The new configure
  parameter --with-builtin-crypto replace the old --with-nettle, and
  must be used if you wish to enable this functionality.  See README
  under "Experimental" for more information.  Internally, GnuTLS has
  been updated to use the new "Generic Crypto" API in gl/gc.h.  The
  API is similar to the old crypto/gc.h, because the gnulib code were
  based on GnuTLS's gc.h.
- Fix compiler warning in the "anonself" self test.
- API and ABI modifications:
gnutls_x509_crt_list_verify: Added 'const' to prototype in <gnutls/x509.h>.
                             This doesn't reflect a change in behaviour,
                             so we don't break backwards compatibility.
GNUTLS_MAC_MD2: New gnutls_mac_algorithm_t value.
GNUTLS_DIG_MD2: New gnutls_digest_algorithm_t value.
GNUTLS_VERIFY_ALLOW_SIGN_RSA_MD2,
GNUTLS_VERIFY_ALLOW_SIGN_RSA_MD5: New gnutls_certificate_verify_flags values.
                                  Use when calling
                                  gnutls_x509_crt_list_verify,
                                  gnutls_x509_crt_verify, or
                                  gnutls_certificate_set_verify_flags.
GNUTLS_CERT_INSECURE_ALGORITHM: New gnutls_certificate_status_t value,
                                used when broken signature algorithms
                                is used (currently RSA-MD2/MD5).
LIBGNUTLS_VERSION_MAJOR,
LIBGNUTLS_VERSION_MINOR,
LIBGNUTLS_VERSION_PATCH,
LIBGNUTLS_VERSION_NUMBER: New CPP symbols, indicating the GnuTLS
			  version number, can be used for feature existence
			  tests.
2005-11-14 18:17:49 +00:00
wiz
7317db7a85 Update to 1.2.8:
* Version 1.2.8 (2005-10-07)
- Libgcrypt 1.2.2 is required to fix a bug for forking GnuTLS servers.
- Don't install the auxilliary libexamples library used by the
  examples in doc/examples/ on "make install", report and tiny patch
  from Thomas Klausner
- If you pass a X.509 CA or PGP trust database to the command line
  tool, it will now abort the connection if the server certificate
  validation fails.  Use the parameter --insecure to continue even
  after certificate validation failures.  Inspired from discussion
  with Alexander Kotelnikov
- The test for socklen_t has been moved to gnulib.
- Link failures for duplicate or missing "program_name" symbol has been fixed,
  patch from Martin Lambers
- The command line tool and the examples no longer uses mmap or bzero,
  to make them more portable, patch from Martin Lambers
- Made the PKCS #12 API handle null passwords. Based on patch by
  Anton Altaparmakov
- The GTK-DOC manual should build with current released tools.
  (But a copy of the output is included, so the tools are not required.)
- API and ABI modifications:
  No changes since last version.
2005-10-20 00:43:32 +00:00
wiz
f5a1a243e0 Update to 1.2.7:
* Version 1.2.7 (2005-09-09)
- The GNUTLS and GNUTLS-EXTRA libraries are now built with versioned symbols.
- Certtool now complains when reading out-of-range X.509 serial
  numbers, suggested by Fran
- Certtool now uses the readline library (when available) when reading
  X.509 serial numbers.
- Fixed build problems in getpass on uClibc and Mingw32 platforms.
- Fixed compile warning regarding socklen_t on Mingw32, reported by
  Martin Lambers
- Fixed examples in doc/examples/, suggested by Fran
- Gnulib is now used for the core library, enabling future code cleanups.
- The gnutls-cli tool now use gnutls_certificate_verify_peers2,
  suggested by Daniel Stenberg
- Doc fixes for gnutls_transport_set_push and gnutls_transport_set_pull.
- Minilibtasn1 is now 0.2.17 (removed optional use of C99 macros).
- Disable zlib support if zlib.h is not present.
- A number of internal cleanups.
- API and ABI modifications:
  No changes since last version.

pkgsrc change: do not install libexamples (looks like a bug)
2005-09-30 13:11:34 +00:00
adam
a1df2c6335 Changes 1.2.6:
- MiniLZO updated to version 2.01 and moved to separate directory.
- Collision between system LZO header files and MiniLZO header file fixed.
- Will now test for liblzo functionality in liblzo2 too.
- Minilibtasn1 is now 0.2.14 (no code changes).
- Some code changes to avoid GTK-DOC warnings.
- API and ABI modifications:
  No changes since last version.
2005-08-30 14:29:00 +00:00
wiz
8a95a1b46b Update to 1.2.5:
* Version 1.2.5 (2005-07-03)
- More builddir != srcdir fixes, reported by Mike Castle
- Fixed off-by-one bug in the size parameter of gnutls_x509_crt_get*_dn,
  reported by Adam Langley
- Corrected some stuff in minilzo detection. Pointed out by
  Sergey Lipnevich.
- MiniLZO updated to version 2.00.
- gnutls_x509_crt_list_import now accept a DER formatted CRL.
- API and ABI modifications:
  No changes since last version.
2005-07-14 19:19:43 +00:00