diff options
-rw-r--r-- | .SRCINFO | 9 | ||||
-rw-r--r-- | 0001-Fix-configure.ac-since-libesmtp-config-was-removed.patch | 31 | ||||
-rw-r--r-- | PKGBUILD | 18 | ||||
-rw-r--r-- | fix-segfault-on-empty-to-in-headers.patch | 24 |
4 files changed, 75 insertions, 7 deletions
@@ -1,7 +1,7 @@ pkgbase = esmtp pkgdesc = An easy SMTP forwarder. pkgver = 1.2 - pkgrel = 7 + pkgrel = 8 url = http://esmtp.sourceforge.net arch = x86_64 license = GPL @@ -12,7 +12,10 @@ pkgbase = esmtp provides = smtp-forwarder conflicts = smtp-forwarder source = https://downloads.sourceforge.net/esmtp/esmtp-1.2.tar.bz2 - md5sums = 79a9c1f9023d53f35bb82bf446150a72 + source = 0001-Fix-configure.ac-since-libesmtp-config-was-removed.patch + source = fix-segfault-on-empty-to-in-headers.patch + sha256sums = a0d26931bf731f97514da266d079d8bc7d73c65b3499ed080576ab606b21c0ce + sha256sums = 28ea9cfc2c17810be5fbf3847d041ec2112ed6b4f8ba66854d48529443d36009 + sha256sums = 656e5223dc832f0f1fa02616f0d18e2df8a27838e593fc5c916f7e7606e632d7 pkgname = esmtp - diff --git a/0001-Fix-configure.ac-since-libesmtp-config-was-removed.patch b/0001-Fix-configure.ac-since-libesmtp-config-was-removed.patch new file mode 100644 index 000000000000..48551e62f2d3 --- /dev/null +++ b/0001-Fix-configure.ac-since-libesmtp-config-was-removed.patch @@ -0,0 +1,31 @@ +From 32bf86868c32ddbb94d3c337005d3ac7fb41ecdf Mon Sep 17 00:00:00 2001 +From: a821 <a821@mail.de> +Date: Mon, 16 Aug 2021 12:02:14 +0200 +Subject: [PATCH] Fix configure.ac since libesmtp-config was removed + +--- + configure.ac | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 64b19b4..696d861 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -30,11 +30,11 @@ then + AC_CHECK_HEADER(libesmtp.h, ,[AC_MSG_ERROR([libesmtp.h not found in $with_libesmtp])]) + fi + AC_MSG_CHECKING(for libESMTP) +-if libesmtp-config --version > /dev/null 2>&1 ++if pkg-config libesmtp-1.0 > /dev/null 2>&1 + then + AC_MSG_RESULT(yes) +- CFLAGS="$CFLAGS `libesmtp-config --cflags`" +- LIBS="$LIBS `libesmtp-config --libs`" ++ CFLAGS="$CFLAGS `pkg-config libesmtp-1.0 --cflags`" ++ LIBS="$LIBS `pkg-config libesmtp-1.0 --libs`" + else + AC_MSG_RESULT(no) + AC_MSG_ERROR(libESMTP library not found) +-- +2.32.0 + @@ -5,7 +5,7 @@ pkgname=esmtp pkgver=1.2 -pkgrel=7 +pkgrel=8 pkgdesc="An easy SMTP forwarder." arch=('x86_64') url='http://esmtp.sourceforge.net' @@ -15,12 +15,22 @@ optdepends=('liblockfile: for esmtp-wrapper script' 'procmail: for local mail delivery') provides=('smtp-forwarder') conflicts=('smtp-forwarder') -source=("https://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.bz2") -md5sums=('79a9c1f9023d53f35bb82bf446150a72') +source=("https://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.bz2" + 0001-Fix-configure.ac-since-libesmtp-config-was-removed.patch + fix-segfault-on-empty-to-in-headers.patch) +sha256sums=('a0d26931bf731f97514da266d079d8bc7d73c65b3499ed080576ab606b21c0ce' + '28ea9cfc2c17810be5fbf3847d041ec2112ed6b4f8ba66854d48529443d36009' + '656e5223dc832f0f1fa02616f0d18e2df8a27838e593fc5c916f7e7606e632d7') -build() { +prepare() { cd "${srcdir}/${pkgname}-${pkgver}" + patch -p1 < ../0001-Fix-configure.ac-since-libesmtp-config-was-removed.patch + patch -p1 < ../fix-segfault-on-empty-to-in-headers.patch +} +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + autoconf ./configure --prefix=/usr --sysconfdir=/etc --sbindir=/usr/bin make } diff --git a/fix-segfault-on-empty-to-in-headers.patch b/fix-segfault-on-empty-to-in-headers.patch new file mode 100644 index 000000000000..99a9b1bd4c25 --- /dev/null +++ b/fix-segfault-on-empty-to-in-headers.patch @@ -0,0 +1,24 @@ +Description: Don't segfault if recipient header is empty +Origin: vendor +Bug-Debian: https://bugs.debian.org/636346 +Forwarded: no +Author: Salvatore Bonaccorso <carnil@debian.org> +Last-Update: 2011-08-02 + +--- a/local.c ++++ b/local.c +@@ -106,7 +106,13 @@ + } + p += written; + } +- names[--nameslen] = '\0'; /* chop trailing space */ ++ if(nameslen > 0) ++ { ++ names[--nameslen] = '\0'; /* chop trailing space */ ++ } else { ++ fprintf(stderr, "Failed to parse recipient header\n"); ++ exit(EX_DATAERR); ++ } + } else { + nameslen = (strlen(force_mda) + 3); // 'force_mda' + names = (char *)xmalloc(nameslen + 1); // 'force_mda'\0 |