[arch-commits] Commit in libtasn1/trunk (PKGBUILD multi-byte-fix.diff)

2015-09-14 Thread Andreas Radke
Date: Monday, September 14, 2015 @ 18:56:15
  Author: andyrtr
Revision: 246037

upgpkg: libtasn1 4.6-2

fix a regression that introduced errors in gnutls

Added:
  libtasn1/trunk/multi-byte-fix.diff
Modified:
  libtasn1/trunk/PKGBUILD

-+
 PKGBUILD|   14 -
 multi-byte-fix.diff |  132 ++
 2 files changed, 143 insertions(+), 3 deletions(-)

Modified: PKGBUILD
===
--- PKGBUILD2015-09-14 16:34:31 UTC (rev 246036)
+++ PKGBUILD2015-09-14 16:56:15 UTC (rev 246037)
@@ -5,7 +5,7 @@
 
 pkgname=libtasn1
 pkgver=4.6
-pkgrel=1
+pkgrel=2
 pkgdesc="The ASN.1 library used in GNUTLS"
 arch=('i686' 'x86_64')
 license=('GPL3' 'LGPL')
@@ -12,11 +12,19 @@
 url="http://www.gnu.org/software/libtasn1/;
 depends=('glibc' 'texinfo')
 install=libtasn1.install
-source=(http://ftp.gnu.org/gnu/libtasn1/${pkgname}-${pkgver}.tar.gz{,.sig})
+source=(http://ftp.gnu.org/gnu/libtasn1/${pkgname}-${pkgver}.tar.gz{,.sig}
+multi-byte-fix.diff)
 md5sums=('454a7f80362f38bd2335b6e9d95f57a6'
- 'SKIP')
+ 'SKIP'
+ 'd785762c19c4b2685d9034ed8ca1b3bc')
 validpgpkeys=('1F42418905D8206AA754CCDC29EE58B996865171') #Nikos 
Mavrogiannopoulos 
 
+prepare() {
+  cd ${pkgname}-${pkgver}
+  # 
http://git.savannah.gnu.org/gitweb/?p=libtasn1.git;a=commit;h=e4478fb4a0186f9d59969bf93ed8fa6074729b43
+  patch -Np1 -i ${srcdir}/multi-byte-fix.diff
+}
+
 build() {
   cd ${pkgname}-${pkgver}
   ./configure --prefix=/usr \

Added: multi-byte-fix.diff
===
--- multi-byte-fix.diff (rev 0)
+++ multi-byte-fix.diff 2015-09-14 16:56:15 UTC (rev 246037)
@@ -0,0 +1,132 @@
+X-Git-Url: 
+http://git.savannah.gnu.org/gitweb/?p=libtasn1.git;a=blobdiff_plain;f=lib%2Fdecoding.c;h=caf1eb47aa55941260a1e03d8b1c079afb546b51;hp=4d2302f5e57ba67d8c753eec8e88038a0197dca5;hb=a6a05643f0a1a9a5ea431bab65998a7c68b25c03;hpb=4e7a89e701d43f73b2b1398ad1eda470f7ddb9ee
+
+diff --git a/lib/decoding.c b/lib/decoding.c
+index 4d2302f..caf1eb4 100644
+--- a/lib/decoding.c
 b/lib/decoding.c
+@@ -480,10 +480,12 @@ asn1_get_bit_der (const unsigned char *der, int der_len,
+   return ASN1_SUCCESS;
+ }
+ 
+-
++/* tag_len: the total tag length (explicit+inner)
++ * inner_tag_len: the inner_tag length
++ */
+ static int
+ _asn1_extract_tag_der (asn1_node node, const unsigned char *der, int der_len,
+- int *ret_len, unsigned flags)
++ int *tag_len, int *inner_tag_len, unsigned flags)
+ {
+   asn1_node p;
+   int counter, len2, len3, is_tag_implicit;
+@@ -594,7 +596,9 @@ _asn1_extract_tag_der (asn1_node node, const unsigned char 
*der, int der_len,
+   unsigned type = type_field (node->type);
+   if (type == ASN1_ETYPE_TAG)
+   {
+-*ret_len = 0;
++*tag_len = 0;
++if (inner_tag_len)
++  *inner_tag_len = 0;
+ return ASN1_SUCCESS;
+   }
+ 
+@@ -654,7 +658,9 @@ _asn1_extract_tag_der (asn1_node node, const unsigned char 
*der, int der_len,
+ }
+ 
+   counter += len2;
+-  *ret_len = counter;
++  *tag_len = counter;
++  if (inner_tag_len)
++*inner_tag_len = len2;
+   return ASN1_SUCCESS;
+ 
+ cleanup:
+@@ -663,7 +669,7 @@ cleanup:
+ 
+ static int
+ extract_tag_der_recursive(asn1_node node, const unsigned char *der, int 
der_len,
+- int *ret_len, unsigned flags)
++ int *ret_len, int *inner_len, unsigned flags)
+ {
+ asn1_node p;
+ int ris = ASN1_DER_ERROR;
+@@ -673,7 +679,7 @@ int ris = ASN1_DER_ERROR;
+   p = node->down;
+   while (p)
+ {
+-  ris = _asn1_extract_tag_der (p, der, der_len, ret_len, flags);
++  ris = _asn1_extract_tag_der (p, der, der_len, ret_len, inner_len, 
flags);
+   if (ris == ASN1_SUCCESS)
+ break;
+   p = p->right;
+@@ -683,7 +689,7 @@ int ris = ASN1_DER_ERROR;
+   return ris;
+ }
+   else
+-return _asn1_extract_tag_der (node, der, der_len, ret_len, flags);
++return _asn1_extract_tag_der (node, der, der_len, ret_len, inner_len, 
flags);
+ }
+ 
+ static int
+@@ -1014,6 +1020,7 @@ asn1_der_decoding2 (asn1_node *element, const void 
*ider, int *max_ider_len,
+   unsigned long tag;
+   int tag_len;
+   int indefinite, result, total_len = *max_ider_len, ider_len = *max_ider_len;
++  int inner_tag_len;
+   const unsigned char *der = ider;
+ 
+   node = *element;
+@@ -1037,6 +1044,7 @@ asn1_der_decoding2 (asn1_node *element, const void 
*ider, int *max_ider_len,
+   while (1)
+ {
+   tag_len = 0;
++  inner_tag_len = 0;
+   ris = ASN1_SUCCESS;
+   if (move != UP)
+   {
+@@ -1074,7 +1082,7 @@ asn1_der_decoding2 (asn1_node *element, const void 
*ider, int *max_ider_len,
+   {
+ ris =
+ extract_tag_der_recursive (p2, der + 

[arch-commits] Commit in libtasn1/trunk (PKGBUILD multi-byte-fix.diff)

2015-09-14 Thread Andreas Radke
Date: Monday, September 14, 2015 @ 20:09:21
  Author: andyrtr
Revision: 246042

upgpkg: libtasn1 4.7-1

upstream update 4.7

Modified:
  libtasn1/trunk/PKGBUILD
Deleted:
  libtasn1/trunk/multi-byte-fix.diff

-+
 PKGBUILD|   18 +-
 multi-byte-fix.diff |  132 --
 2 files changed, 5 insertions(+), 145 deletions(-)

Modified: PKGBUILD
===
--- PKGBUILD2015-09-14 17:29:59 UTC (rev 246041)
+++ PKGBUILD2015-09-14 18:09:21 UTC (rev 246042)
@@ -4,8 +4,8 @@
 # Contributor: judd 
 
 pkgname=libtasn1
-pkgver=4.6
-pkgrel=2
+pkgver=4.7
+pkgrel=1
 pkgdesc="The ASN.1 library used in GNUTLS"
 arch=('i686' 'x86_64')
 license=('GPL3' 'LGPL')
@@ -12,19 +12,11 @@
 url="http://www.gnu.org/software/libtasn1/;
 depends=('glibc' 'texinfo')
 install=libtasn1.install
-source=(http://ftp.gnu.org/gnu/libtasn1/${pkgname}-${pkgver}.tar.gz{,.sig}
-multi-byte-fix.diff)
-md5sums=('454a7f80362f38bd2335b6e9d95f57a6'
- 'SKIP'
- 'd785762c19c4b2685d9034ed8ca1b3bc')
+source=(http://ftp.gnu.org/gnu/libtasn1/${pkgname}-${pkgver}.tar.gz{,.sig})
+md5sums=('12d10ca4ae0a3b95f7aa06a076da39ec'
+ 'SKIP')
 validpgpkeys=('1F42418905D8206AA754CCDC29EE58B996865171') #Nikos 
Mavrogiannopoulos 
 
-prepare() {
-  cd ${pkgname}-${pkgver}
-  # 
http://git.savannah.gnu.org/gitweb/?p=libtasn1.git;a=commit;h=e4478fb4a0186f9d59969bf93ed8fa6074729b43
-  patch -Np1 -i ${srcdir}/multi-byte-fix.diff
-}
-
 build() {
   cd ${pkgname}-${pkgver}
   ./configure --prefix=/usr \

Deleted: multi-byte-fix.diff
===
--- multi-byte-fix.diff 2015-09-14 17:29:59 UTC (rev 246041)
+++ multi-byte-fix.diff 2015-09-14 18:09:21 UTC (rev 246042)
@@ -1,132 +0,0 @@
-X-Git-Url: 
-http://git.savannah.gnu.org/gitweb/?p=libtasn1.git;a=blobdiff_plain;f=lib%2Fdecoding.c;h=caf1eb47aa55941260a1e03d8b1c079afb546b51;hp=4d2302f5e57ba67d8c753eec8e88038a0197dca5;hb=a6a05643f0a1a9a5ea431bab65998a7c68b25c03;hpb=4e7a89e701d43f73b2b1398ad1eda470f7ddb9ee
-
-diff --git a/lib/decoding.c b/lib/decoding.c
-index 4d2302f..caf1eb4 100644
 a/lib/decoding.c
-+++ b/lib/decoding.c
-@@ -480,10 +480,12 @@ asn1_get_bit_der (const unsigned char *der, int der_len,
-   return ASN1_SUCCESS;
- }
- 
--
-+/* tag_len: the total tag length (explicit+inner)
-+ * inner_tag_len: the inner_tag length
-+ */
- static int
- _asn1_extract_tag_der (asn1_node node, const unsigned char *der, int der_len,
-- int *ret_len, unsigned flags)
-+ int *tag_len, int *inner_tag_len, unsigned flags)
- {
-   asn1_node p;
-   int counter, len2, len3, is_tag_implicit;
-@@ -594,7 +596,9 @@ _asn1_extract_tag_der (asn1_node node, const unsigned char 
*der, int der_len,
-   unsigned type = type_field (node->type);
-   if (type == ASN1_ETYPE_TAG)
-   {
--*ret_len = 0;
-+*tag_len = 0;
-+if (inner_tag_len)
-+  *inner_tag_len = 0;
- return ASN1_SUCCESS;
-   }
- 
-@@ -654,7 +658,9 @@ _asn1_extract_tag_der (asn1_node node, const unsigned char 
*der, int der_len,
- }
- 
-   counter += len2;
--  *ret_len = counter;
-+  *tag_len = counter;
-+  if (inner_tag_len)
-+*inner_tag_len = len2;
-   return ASN1_SUCCESS;
- 
- cleanup:
-@@ -663,7 +669,7 @@ cleanup:
- 
- static int
- extract_tag_der_recursive(asn1_node node, const unsigned char *der, int 
der_len,
-- int *ret_len, unsigned flags)
-+ int *ret_len, int *inner_len, unsigned flags)
- {
- asn1_node p;
- int ris = ASN1_DER_ERROR;
-@@ -673,7 +679,7 @@ int ris = ASN1_DER_ERROR;
-   p = node->down;
-   while (p)
- {
--  ris = _asn1_extract_tag_der (p, der, der_len, ret_len, flags);
-+  ris = _asn1_extract_tag_der (p, der, der_len, ret_len, inner_len, 
flags);
-   if (ris == ASN1_SUCCESS)
- break;
-   p = p->right;
-@@ -683,7 +689,7 @@ int ris = ASN1_DER_ERROR;
-   return ris;
- }
-   else
--return _asn1_extract_tag_der (node, der, der_len, ret_len, flags);
-+return _asn1_extract_tag_der (node, der, der_len, ret_len, inner_len, 
flags);
- }
- 
- static int
-@@ -1014,6 +1020,7 @@ asn1_der_decoding2 (asn1_node *element, const void 
*ider, int *max_ider_len,
-   unsigned long tag;
-   int tag_len;
-   int indefinite, result, total_len = *max_ider_len, ider_len = *max_ider_len;
-+  int inner_tag_len;
-   const unsigned char *der = ider;
- 
-   node = *element;
-@@ -1037,6 +1044,7 @@ asn1_der_decoding2 (asn1_node *element, const void 
*ider, int *max_ider_len,
-   while (1)
- {
-   tag_len = 0;
-+  inner_tag_len = 0;
-   ris = ASN1_SUCCESS;
-   if (move != UP)
-   {
-@@ -1074,7 +1082,7 @@ asn1_der_decoding2 (asn1_node *element, const void 
*ider, int *max_ider_len,
-   {
-