summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@gnutls.org>2003-10-24 22:04:10 +0000
committerNikos Mavrogiannopoulos <nmav@gnutls.org>2003-10-24 22:04:10 +0000
commit3f5265d5e6da11b907e249fb61ecfa0042fc0a6f (patch)
tree5a24dcccd4f3ad4beb13afb5c3a6b4130e23eca9
parent58ffcfcb721ba083a9a878a2af6972381cab4d0e (diff)
downloadgnutls_0_8_x_patches.tar.gz
- Some fixes in the opencdk code. Patch by Ivo Timmermans <ivo@o2w.nl>gnutls_0_8_12gnutls_0_8_x_patches
- CR is now allowed in the base64 decoder.
-rw-r--r--NEWS4
-rw-r--r--configure.in2
-rw-r--r--lib/x509_b64.c17
-rw-r--r--libextra/gnutls_openpgp.c4
4 files changed, 17 insertions, 10 deletions
diff --git a/NEWS b/NEWS
index 4bf5b1b037..d5bfcb0af5 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,7 @@
+Version 0.8.12 (25/10/2003)
+- Some fixes in the opencdk code. Patch by Ivo Timmermans <ivo@o2w.nl>
+- CR is now allowed in the base64 decoder.
+
Version 0.8.11 (04/10/2003)
- Updated to use opencdk 0.5.1 (patch by Mikhail
Teterin <mi+mx@aldan.algebra.com>)
diff --git a/configure.in b/configure.in
index 71f6cb8ab5..7033b5076b 100644
--- a/configure.in
+++ b/configure.in
@@ -12,7 +12,7 @@ AC_DEFINE_UNQUOTED(T_OS, "$target_os", [OS name])
dnl Gnutls Version
GNUTLS_MAJOR_VERSION=0
GNUTLS_MINOR_VERSION=8
-GNUTLS_MICRO_VERSION=11
+GNUTLS_MICRO_VERSION=12
GNUTLS_VERSION=$GNUTLS_MAJOR_VERSION.$GNUTLS_MINOR_VERSION.$GNUTLS_MICRO_VERSION
AC_DEFINE_UNQUOTED(GNUTLS_VERSION, "$GNUTLS_VERSION", [version of gnutls])
diff --git a/lib/x509_b64.c b/lib/x509_b64.c
index 5f3c5dc766..0444ad4480 100644
--- a/lib/x509_b64.c
+++ b/lib/x509_b64.c
@@ -376,6 +376,7 @@ inline static int cpydata(const uint8 * data, int data_size, uint8 ** result)
* The result_size is the return value
*/
#define ENDSTR "-----\n"
+#define ENDSTR2 "-----\r"
int _gnutls_fbase64_decode( const opaque* header, const opaque * data, size_t data_size,
uint8 ** result)
{
@@ -391,7 +392,7 @@ int _gnutls_fbase64_decode( const opaque* header, const opaque * data, size_t da
if (header != NULL) {
if (strlen(header) > sizeof(pem_header) - sizeof(top) - 1) {
gnutls_assert();
- return GNUTLS_E_BASE64_DECODING_ERROR;
+ return GNUTLS_E_MEMORY_ERROR;
}
strcpy( pem_header, top);
strcpy( pem_header, header);
@@ -402,20 +403,22 @@ int _gnutls_fbase64_decode( const opaque* header, const opaque * data, size_t da
if (rdata==NULL) {
gnutls_assert();
- return GNUTLS_E_BASE64_DECODING_ERROR;
+ return GNUTLS_E_MEMORY_ERROR;
}
data_size -= (unsigned long int)rdata-(unsigned long int)data;
if (data_size < 4 + strlen(bottom)) {
gnutls_assert();
- return GNUTLS_E_BASE64_DECODING_ERROR;
+ return GNUTLS_E_MEMORY_ERROR;
}
kdata = strstr( rdata, ENDSTR);
+ if (kdata==NULL) kdata = strstr( rdata, ENDSTR2);
+
if (kdata==NULL) {
gnutls_assert();
- return GNUTLS_E_BASE64_DECODING_ERROR;
+ return GNUTLS_E_MEMORY_ERROR;
}
data_size -= strlen(ENDSTR);
data_size -= (unsigned long int)kdata-(unsigned long int)rdata;
@@ -427,7 +430,7 @@ int _gnutls_fbase64_decode( const opaque* header, const opaque * data, size_t da
kdata = strstr( rdata, bottom);
if (kdata==NULL) {
gnutls_assert();
- return GNUTLS_E_BASE64_DECODING_ERROR;
+ return GNUTLS_E_MEMORY_ERROR;
}
/* position of kdata is before the ----END--- footer
@@ -436,14 +439,14 @@ int _gnutls_fbase64_decode( const opaque* header, const opaque * data, size_t da
if (rdata_size < 4) {
gnutls_assert();
- return GNUTLS_E_BASE64_DECODING_ERROR;
+ return GNUTLS_E_MEMORY_ERROR;
}
kdata_size = cpydata(rdata, rdata_size, &kdata);
if (kdata_size < 4) {
gnutls_assert();
- return GNUTLS_E_BASE64_DECODING_ERROR;
+ return GNUTLS_E_MEMORY_ERROR;
}
if ((ret = _gnutls_base64_decode( kdata, kdata_size, result)) < 0) {
diff --git a/libextra/gnutls_openpgp.c b/libextra/gnutls_openpgp.c
index 6417b6c2ee..c816cc00e6 100644
--- a/libextra/gnutls_openpgp.c
+++ b/libextra/gnutls_openpgp.c
@@ -510,7 +510,7 @@ gnutls_openpgp_get_key( gnutls_datum *key, const gnutls_datum *keyring,
key_attr_t by, opaque *pattern )
{
keybox_blob *blob = NULL;
- CDK_KEYDB_HD hd = NULL;
+ cdk_keydb_hd_t hd = NULL;
cdk_kbnode_t knode = NULL;
unsigned long keyid[2];
unsigned char *buf;
@@ -1185,7 +1185,7 @@ gnutls_openpgp_verify_key( const char *trustdb,
int cert_list_length )
{
cdk_kbnode_t knode = NULL;
- CDK_KEYDB_HD hd = NULL;
+ cdk_keydb_hd_t hd = NULL;
keybox_blob *blob = NULL;
int rc = 0;
int status = 0;