Subject: [alpine-devel] new aport sstmp

From: Leonardo Arena <[email-masked]>
Date: Tue, 27 Jan 2009 09:12:41 +0100

Please review attached patch
Leo
From bad9f5fd56a7708b029bda815a38ae774718d84e Mon Sep 17 00:00:00 2001
From: Leonardo Arena <[email-masked]>
Date: Tue, 27 Jan 2009 08:04:38 +0000
Subject: [PATCH] extra/ssmtp: new aport

---
 extra/ssmtp/APKBUILD              |   33 +++++++++++++++++++++++++++++++++
 extra/ssmtp/CVE-2008-3962.patch   |   14 ++++++++++++++
 extra/ssmtp/generate_config.patch |   27 +++++++++++++++++++++++++++
 3 files changed, 74 insertions(+), 0 deletions(-)
 create mode 100644 extra/ssmtp/APKBUILD
 create mode 100644 extra/ssmtp/CVE-2008-3962.patch
 create mode 100644 extra/ssmtp/generate_config.patch

diff --git a/extra/ssmtp/APKBUILD b/extra/ssmtp/APKBUILD
new file mode 100644
index 0000000..be2f4de
--- /dev/null
+++ b/extra/ssmtp/APKBUILD
@@ -0,0 +1,33 @@
+#Contributor: Leonardo Arena <[email-masked]>
+pkgname=ssmtp
+pkgver=2.62
+pkgrel=0
+pkgdesc="Extremely simple MTA to get mail off the system to a mail hub"
+subpackages="$pkgname-doc"
+arch=""
+url="http://packages.debian.org/source/lenny/ssmtp"
+license="GPL-2"
+depends="uclibc"
+makedepends="openssl-dev"
+install=
+source="http://ftp.debian.org/debian/pool/main/s/$pkgname/${pkgname}_${pkgver}.orig.tar.gz
+        generate_config.patch
+        CVE-2008-3962.patch"
+
+build() {
+	cd "$srcdir/$pkgname"
+	sed -i -e 's/hostname --fqdn/hostname -f/g' generate_config
+	patch generate_config ../../generate_config.patch
+	sed -i -e 's:$(CC) -o:$(CC) @LDFLAGS@ -o:' Makefile.in
+	patch -p1 ssmtp.c ../../CVE-2008-3962.patch
+
+	./configure --prefix=/usr \
+	--mandir=/usr/share/man \
+	--sysconfdir=/etc \
+	--enable-ssl
+	make || return 1
+	make prefix="$pkgdir"/usr etcdir="$pkgdir"/etc mandir="$pkgdir"/usr/share/man install
+}
+md5sums="257ac04e62ab7e3616e220333a1140cb  ssmtp_2.62.orig.tar.gz
+d799575f8edefaa279b4cef4df55f874  generate_config.patch
+18f0686f1b8888d187f06dcff3b6212a  CVE-2008-3962.patch"
diff --git a/extra/ssmtp/CVE-2008-3962.patch b/extra/ssmtp/CVE-2008-3962.patch
new file mode 100644
index 0000000..fca144f
--- /dev/null
+++ b/extra/ssmtp/CVE-2008-3962.patch
@@ -0,0 +1,14 @@
+--- ssmtp.orig/ssmtp.c
++++ ssmtp/ssmtp.c
+@@ -485,6 +485,11 @@ char *from_format(char *str, bool_t over
+ 				die("from_format() -- snprintf() failed");
+ 			}
+ 		}
++		else {
++			if(snprintf(buf, BUF_SZ, "%s", str) == -1) {
++				die("from_format() -- snprintf() failed");
++			}
++		}
+ 	}
+ 
+ #if 0
diff --git a/extra/ssmtp/generate_config.patch b/extra/ssmtp/generate_config.patch
new file mode 100644
index 0000000..e154310
--- /dev/null
+++ b/extra/ssmtp/generate_config.patch
@@ -0,0 +1,27 @@
+18,34c18
+< echo "Please enter the mail name of your system."
+< echo "This is the hostname portion of the address to be shown"
+< echo "on outgoing news and mail messages headers."
+< echo "The default is $syshostname, your system's host name."
+< echo
+< echo -n "Mail name [$syshostname]: "
+< read mailname
+< echo
+< 
+< echo -n "Please enter the SMTP port number [25]: "
+< read smtpport
+< if test -z "$smtpport"
+< then
+< 	mailhub=$mailhub
+< else
+< 	mailhub="$mailhub:$smtpport"
+< fi
+---
+> mailhub="$mailhub:25"
+61,66d44
+< 
+< echo
+< echo
+< echo "Please check the configuration file $1 for correctness."
+< echo
+< echo
-- 
1.6.1