Date: Friday, November 18, 2011 @ 19:37:18
  Author: stephane
Revision: 142942

archrelease: copy trunk to staging-i686, staging-x86_64

Added:
  gdbm/repos/staging-i686/
  gdbm/repos/staging-i686/PKGBUILD
    (from rev 142941, gdbm/trunk/PKGBUILD)
  gdbm/repos/staging-i686/gdbm-1.10-zeroheaders.patch
    (from rev 142941, gdbm/trunk/gdbm-1.10-zeroheaders.patch)
  gdbm/repos/staging-i686/gdbm.install
    (from rev 142941, gdbm/trunk/gdbm.install)
  gdbm/repos/staging-x86_64/
  gdbm/repos/staging-x86_64/PKGBUILD
    (from rev 142941, gdbm/trunk/PKGBUILD)
  gdbm/repos/staging-x86_64/gdbm-1.10-zeroheaders.patch
    (from rev 142941, gdbm/trunk/gdbm-1.10-zeroheaders.patch)
  gdbm/repos/staging-x86_64/gdbm.install
    (from rev 142941, gdbm/trunk/gdbm.install)

--------------------------------------------+
 staging-i686/PKGBUILD                      |   57 +++++++++++++++++++++++++++
 staging-i686/gdbm-1.10-zeroheaders.patch   |   33 +++++++++++++++
 staging-i686/gdbm.install                  |   21 +++++++++
 staging-x86_64/PKGBUILD                    |   57 +++++++++++++++++++++++++++
 staging-x86_64/gdbm-1.10-zeroheaders.patch |   33 +++++++++++++++
 staging-x86_64/gdbm.install                |   21 +++++++++
 6 files changed, 222 insertions(+)

Copied: gdbm/repos/staging-i686/PKGBUILD (from rev 142941, gdbm/trunk/PKGBUILD)
===================================================================
--- staging-i686/PKGBUILD                               (rev 0)
+++ staging-i686/PKGBUILD       2011-11-19 00:37:18 UTC (rev 142942)
@@ -0,0 +1,57 @@
+# $Id$
+# Maintainer: Stéphane Gaudreault <steph...@archlinux.org>
+# Contributor: Allan McRae <al...@archlinux.org>
+# Contributor: judd <jvi...@zeroflux.org>
+
+pkgname=gdbm
+pkgver=1.10
+pkgrel=1
+pkgdesc="GNU database library"
+url="http://www.gnu.org/software/gdbm/gdbm.html";
+license=('GPL')
+arch=('i686' 'x86_64')
+depends=('glibc' 'sh')
+source=(ftp://ftp.gnu.org/gnu/gdbm/${pkgname}-${pkgver}.tar.gz
+        gdbm-1.10-zeroheaders.patch)
+options=('!libtool' '!makeflags')
+install=gdbm.install
+md5sums=('88770493c2559dc80b561293e39d3570'
+         'ac255b10452005237836cd2d3a470733')
+build() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+
+  # Prevent gdbm from storing uninitialized memory content
+  # to database files. This patch improves security, as the
+  # uninitialized memory might contain sensitive informations
+  # from other applications.
+  # https://bugzilla.redhat.com/show_bug.cgi?id=4457
+  # http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=208927
+  patch -Np1 -i ../gdbm-1.10-zeroheaders.patch
+
+  ./configure --prefix=/usr \
+              --mandir=/usr/share/man \
+              --infodir=/usr/share/info \
+              --enable-libgdbm-compat
+
+  make prefix=/usr
+}
+
+check() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+  make check
+}
+
+package() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+  make prefix="${pkgdir}"/usr \
+       manprefix="${pkgdir}"/usr/share/man \
+       man3dir="${pkgdir}"/usr/share/man/man3 \
+       infodir="${pkgdir}"/usr/share/info \
+       install
+  
+  # create symlinks for compatibility
+  install -dm755 "${pkgdir}"/usr/include/gdbm
+  ln -sf ../gdbm.h "${pkgdir}"/usr/include/gdbm/gdbm.h
+  ln -sf ../ndbm.h "${pkgdir}"/usr/include/gdbm/ndbm.h
+  ln -sf ../dbm.h  "${pkgdir}"/usr/include/gdbm/dbm.h
+}

Copied: gdbm/repos/staging-i686/gdbm-1.10-zeroheaders.patch (from rev 142941, 
gdbm/trunk/gdbm-1.10-zeroheaders.patch)
===================================================================
--- staging-i686/gdbm-1.10-zeroheaders.patch                            (rev 0)
+++ staging-i686/gdbm-1.10-zeroheaders.patch    2011-11-19 00:37:18 UTC (rev 
142942)
@@ -0,0 +1,33 @@
+diff -up gdbm-1.10/src/falloc.c.zeroheaders gdbm-1.10/src/falloc.c
+--- gdbm-1.10/src/falloc.c.zeroheaders 2011-11-11 11:59:11.000000000 +0100
++++ gdbm-1.10/src/falloc.c     2011-11-14 17:34:32.487604027 +0100
+@@ -255,7 +255,7 @@ push_avail_block (GDBM_FILE dbf)
+ 
+ 
+   /* Split the header block. */
+-  temp = (avail_block *) malloc (av_size);
++  temp = (avail_block *) calloc (1, av_size);
+   if (temp == NULL) _gdbm_fatal (dbf, _("malloc error"));
+   /* Set the size to be correct AFTER the pop_avail_block. */
+   temp->size = dbf->header->avail.size;
+diff -up gdbm-1.10/src/gdbmopen.c.zeroheaders gdbm-1.10/src/gdbmopen.c
+--- gdbm-1.10/src/gdbmopen.c.zeroheaders       2011-11-11 19:39:42.000000000 
+0100
++++ gdbm-1.10/src/gdbmopen.c   2011-11-14 17:33:24.867608650 +0100
+@@ -264,7 +264,7 @@ gdbm_open (const char *file, int block_s
+       (dbf->header->block_size - sizeof (hash_bucket))
+       / sizeof (bucket_element) + 1;
+       dbf->header->bucket_size  = dbf->header->block_size;
+-      dbf->bucket = (hash_bucket *) malloc (dbf->header->bucket_size);
++      dbf->bucket = (hash_bucket *) calloc (1, dbf->header->bucket_size);
+       if (dbf->bucket == NULL)
+       {
+         gdbm_close (dbf);
+@@ -456,7 +456,7 @@ _gdbm_init_cache(GDBM_FILE dbf, size_t s
+       for(index = 0; index < size; index++)
+         {
+           (dbf->bucket_cache[index]).ca_bucket
+-            = (hash_bucket *) malloc (dbf->header->bucket_size);
++            = (hash_bucket *) calloc (1, dbf->header->bucket_size);
+           if ((dbf->bucket_cache[index]).ca_bucket == NULL)
+           {
+               gdbm_errno = GDBM_MALLOC_ERROR;

Copied: gdbm/repos/staging-i686/gdbm.install (from rev 142941, 
gdbm/trunk/gdbm.install)
===================================================================
--- staging-i686/gdbm.install                           (rev 0)
+++ staging-i686/gdbm.install   2011-11-19 00:37:18 UTC (rev 142942)
@@ -0,0 +1,21 @@
+infodir=/usr/share/info
+filelist=(gdbm.info)
+
+post_install() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+    usr/bin/install-info $infodir/$file $infodir/dir 2> /dev/null
+ done
+}
+
+post_upgrade() {
+  post_install $1
+}
+
+pre_remove() {
+ [ -x usr/bin/install-info ] || return 0
+  for file in ${filelist[@]}; do
+    usr/bin/install-info --delete $infodir/$file $infodir/dir 2> /dev/null
+  done
+}
+

Copied: gdbm/repos/staging-x86_64/PKGBUILD (from rev 142941, 
gdbm/trunk/PKGBUILD)
===================================================================
--- staging-x86_64/PKGBUILD                             (rev 0)
+++ staging-x86_64/PKGBUILD     2011-11-19 00:37:18 UTC (rev 142942)
@@ -0,0 +1,57 @@
+# $Id$
+# Maintainer: Stéphane Gaudreault <steph...@archlinux.org>
+# Contributor: Allan McRae <al...@archlinux.org>
+# Contributor: judd <jvi...@zeroflux.org>
+
+pkgname=gdbm
+pkgver=1.10
+pkgrel=1
+pkgdesc="GNU database library"
+url="http://www.gnu.org/software/gdbm/gdbm.html";
+license=('GPL')
+arch=('i686' 'x86_64')
+depends=('glibc' 'sh')
+source=(ftp://ftp.gnu.org/gnu/gdbm/${pkgname}-${pkgver}.tar.gz
+        gdbm-1.10-zeroheaders.patch)
+options=('!libtool' '!makeflags')
+install=gdbm.install
+md5sums=('88770493c2559dc80b561293e39d3570'
+         'ac255b10452005237836cd2d3a470733')
+build() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+
+  # Prevent gdbm from storing uninitialized memory content
+  # to database files. This patch improves security, as the
+  # uninitialized memory might contain sensitive informations
+  # from other applications.
+  # https://bugzilla.redhat.com/show_bug.cgi?id=4457
+  # http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=208927
+  patch -Np1 -i ../gdbm-1.10-zeroheaders.patch
+
+  ./configure --prefix=/usr \
+              --mandir=/usr/share/man \
+              --infodir=/usr/share/info \
+              --enable-libgdbm-compat
+
+  make prefix=/usr
+}
+
+check() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+  make check
+}
+
+package() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+  make prefix="${pkgdir}"/usr \
+       manprefix="${pkgdir}"/usr/share/man \
+       man3dir="${pkgdir}"/usr/share/man/man3 \
+       infodir="${pkgdir}"/usr/share/info \
+       install
+  
+  # create symlinks for compatibility
+  install -dm755 "${pkgdir}"/usr/include/gdbm
+  ln -sf ../gdbm.h "${pkgdir}"/usr/include/gdbm/gdbm.h
+  ln -sf ../ndbm.h "${pkgdir}"/usr/include/gdbm/ndbm.h
+  ln -sf ../dbm.h  "${pkgdir}"/usr/include/gdbm/dbm.h
+}

Copied: gdbm/repos/staging-x86_64/gdbm-1.10-zeroheaders.patch (from rev 142941, 
gdbm/trunk/gdbm-1.10-zeroheaders.patch)
===================================================================
--- staging-x86_64/gdbm-1.10-zeroheaders.patch                          (rev 0)
+++ staging-x86_64/gdbm-1.10-zeroheaders.patch  2011-11-19 00:37:18 UTC (rev 
142942)
@@ -0,0 +1,33 @@
+diff -up gdbm-1.10/src/falloc.c.zeroheaders gdbm-1.10/src/falloc.c
+--- gdbm-1.10/src/falloc.c.zeroheaders 2011-11-11 11:59:11.000000000 +0100
++++ gdbm-1.10/src/falloc.c     2011-11-14 17:34:32.487604027 +0100
+@@ -255,7 +255,7 @@ push_avail_block (GDBM_FILE dbf)
+ 
+ 
+   /* Split the header block. */
+-  temp = (avail_block *) malloc (av_size);
++  temp = (avail_block *) calloc (1, av_size);
+   if (temp == NULL) _gdbm_fatal (dbf, _("malloc error"));
+   /* Set the size to be correct AFTER the pop_avail_block. */
+   temp->size = dbf->header->avail.size;
+diff -up gdbm-1.10/src/gdbmopen.c.zeroheaders gdbm-1.10/src/gdbmopen.c
+--- gdbm-1.10/src/gdbmopen.c.zeroheaders       2011-11-11 19:39:42.000000000 
+0100
++++ gdbm-1.10/src/gdbmopen.c   2011-11-14 17:33:24.867608650 +0100
+@@ -264,7 +264,7 @@ gdbm_open (const char *file, int block_s
+       (dbf->header->block_size - sizeof (hash_bucket))
+       / sizeof (bucket_element) + 1;
+       dbf->header->bucket_size  = dbf->header->block_size;
+-      dbf->bucket = (hash_bucket *) malloc (dbf->header->bucket_size);
++      dbf->bucket = (hash_bucket *) calloc (1, dbf->header->bucket_size);
+       if (dbf->bucket == NULL)
+       {
+         gdbm_close (dbf);
+@@ -456,7 +456,7 @@ _gdbm_init_cache(GDBM_FILE dbf, size_t s
+       for(index = 0; index < size; index++)
+         {
+           (dbf->bucket_cache[index]).ca_bucket
+-            = (hash_bucket *) malloc (dbf->header->bucket_size);
++            = (hash_bucket *) calloc (1, dbf->header->bucket_size);
+           if ((dbf->bucket_cache[index]).ca_bucket == NULL)
+           {
+               gdbm_errno = GDBM_MALLOC_ERROR;

Copied: gdbm/repos/staging-x86_64/gdbm.install (from rev 142941, 
gdbm/trunk/gdbm.install)
===================================================================
--- staging-x86_64/gdbm.install                         (rev 0)
+++ staging-x86_64/gdbm.install 2011-11-19 00:37:18 UTC (rev 142942)
@@ -0,0 +1,21 @@
+infodir=/usr/share/info
+filelist=(gdbm.info)
+
+post_install() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+    usr/bin/install-info $infodir/$file $infodir/dir 2> /dev/null
+ done
+}
+
+post_upgrade() {
+  post_install $1
+}
+
+pre_remove() {
+ [ -x usr/bin/install-info ] || return 0
+  for file in ${filelist[@]}; do
+    usr/bin/install-info --delete $infodir/$file $infodir/dir 2> /dev/null
+  done
+}
+

Reply via email to