[arch-commits] Commit in serf/trunk (PKGBUILD serf-ssl-allocator-v2.patch)

Ángel Velásquez angvp at nymeria.archlinux.org
Mon Sep 23 03:38:40 UTC 2013


    Date: Monday, September 23, 2013 @ 05:38:39
  Author: angvp
Revision: 194715

upgpkg: serf 1.3.1-2

Applying patch for FS#36070

Added:
  serf/trunk/serf-ssl-allocator-v2.patch
Modified:
  serf/trunk/PKGBUILD

-----------------------------+
 PKGBUILD                    |   13 +++++++--
 serf-ssl-allocator-v2.patch |   57 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 67 insertions(+), 3 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2013-09-23 03:35:04 UTC (rev 194714)
+++ PKGBUILD	2013-09-23 03:38:39 UTC (rev 194715)
@@ -4,7 +4,7 @@
 
 pkgname=serf
 pkgver=1.3.1
-pkgrel=1
+pkgrel=2
 pkgdesc="High-performance asynchronous HTTP client library"
 arch=('i686' 'x86_64')
 url="http://code.google.com/p/serf/"
@@ -12,9 +12,16 @@
 depends=('apr-util')
 makedepends=('scons')
 options=('!libtool' '!staticlibs')
-source=(http://serf.googlecode.com/files/${pkgname}-${pkgver}.tar.bz2)
-md5sums=('da5aca0cad19fd9c19129c3f8f7393dd')
+source=(http://serf.googlecode.com/files/${pkgname}-${pkgver}.tar.bz2 'serf-ssl-allocator-v2.patch')
+md5sums=('da5aca0cad19fd9c19129c3f8f7393dd'
+         'a0ff486ee26f86cb2825decfd1dc8355')
 
+prepare() {
+  mv serf-ssl-allocator-v2.patch ${pkgname}-${pkgver} 
+  cd ${pkgname}-${pkgver}
+  patch -Np0 -i serf-ssl-allocator-v2.patch
+}
+
 build() {
   cd ${pkgname}-${pkgver}
   scons PREFIX=/usr

Added: serf-ssl-allocator-v2.patch
===================================================================
--- serf-ssl-allocator-v2.patch	                        (rev 0)
+++ serf-ssl-allocator-v2.patch	2013-09-23 03:38:39 UTC (rev 194715)
@@ -0,0 +1,57 @@
+Index: buckets/ssl_buckets.c
+===================================================================
+--- buckets/ssl_buckets.c   (revision 2130)
++++ buckets/ssl_buckets.c   (working copy)
+@@ -1192,21 +1192,16 @@
+     context->server_cert_userdata = data;
+ }
+ 
+-static serf_ssl_context_t *ssl_init_context(void)
++static serf_ssl_context_t *ssl_init_context(serf_bucket_alloc_t *allocator)
+ {
+     serf_ssl_context_t *ssl_ctx;
+-    apr_pool_t *pool;
+-    serf_bucket_alloc_t *allocator;
+ 
+     init_ssl_libraries();
+ 
+-    apr_pool_create(&pool, NULL);
+-    allocator = serf_bucket_allocator_create(pool, NULL, NULL);
+-
+     ssl_ctx = serf_bucket_mem_alloc(allocator, sizeof(*ssl_ctx));
+ 
+     ssl_ctx->refcount = 0;
+-    ssl_ctx->pool = pool;
++    ssl_ctx->pool = serf_bucket_allocator_get_pool(allocator);
+     ssl_ctx->allocator = allocator;
+ 
+     ssl_ctx->ctx = SSL_CTX_new(SSLv23_client_method());
+@@ -1263,8 +1258,6 @@
+ static apr_status_t ssl_free_context(
+     serf_ssl_context_t *ssl_ctx)
+ {
+-    apr_pool_t *p;
+-
+     /* If never had the pending buckets, don't try to free them. */
+     if (ssl_ctx->decrypt.pending != NULL) {
+         serf_bucket_destroy(ssl_ctx->decrypt.pending);
+@@ -1277,10 +1270,7 @@
+     SSL_free(ssl_ctx->ssl);
+     SSL_CTX_free(ssl_ctx->ctx);
+ 
+-    p = ssl_ctx->pool;
+-
+     serf_bucket_mem_free(ssl_ctx->allocator, ssl_ctx);
+-    apr_pool_destroy(p);
+ 
+     return APR_SUCCESS;
+ }
+@@ -1294,7 +1284,7 @@
+ 
+     ctx = serf_bucket_mem_alloc(allocator, sizeof(*ctx));
+     if (!ssl_ctx) {
+-        ctx->ssl_ctx = ssl_init_context();
++        ctx->ssl_ctx = ssl_init_context(allocator);
+     }
+     else {
+         ctx->ssl_ctx = ssl_ctx;




More information about the arch-commits mailing list