aboutsummaryrefslogtreecommitdiffstats
path: root/community/mini-sendmail
diff options
context:
space:
mode:
authorStuart Cardall <developer@it-offshore.co.uk>2016-08-18 20:46:53 +0000
committerCarlo Landmeter <clandmeter@gmail.com>2016-08-21 22:24:04 +0200
commit5c9f3ca3e307be53b45beeed2ce1626f38008625 (patch)
tree919836fe454e953f46685adf8228b0401280d4b6 /community/mini-sendmail
parent6a00a953ba02bab6440a2c784e7db37c6eaeace1 (diff)
downloadaports-5c9f3ca3e307be53b45beeed2ce1626f38008625.tar.bz2
aports-5c9f3ca3e307be53b45beeed2ce1626f38008625.tar.xz
testing/[various]: move to community
albatross-themes apk-post-messages autossh bitcoin btrbk entr ffmpegthumbnailer firejail firetools fwsnort gnome-colors imapsync inetutils-syslogd inotify-tools-inc isync junit ktsuss letsencrypt-nosudo libmbim libndp libqmi libteam mini-sendmail modemmanager namecoin networkmanager nginx-naxsi numix-themes nxapi opencl-headers opencl-icd-loader opus-tools perl-authen-ntlm perl-bit-vector perl-data-uniqid perl-file-copy-recursive perl-getopt-argvfile perl-io-tee perl-iptables-chainmgr perl-iptables-parse perl-module-scandeps perl-par-dist perl-par-packer perl-par perl-uri-escape psad py-crcmod py-graphviz py-lz4 py-opencl py-opengl-accelerate runit secpwgen secure-delete socklog spacefm tinyssh udevil virt-viewer virtualbricks whois wrk xpra zram-init
Diffstat (limited to 'community/mini-sendmail')
-rw-r--r--community/mini-sendmail/APKBUILD64
-rw-r--r--community/mini-sendmail/LICENSE25
-rw-r--r--community/mini-sendmail/README.alpine5
-rw-r--r--community/mini-sendmail/sh.c30
4 files changed, 124 insertions, 0 deletions
diff --git a/community/mini-sendmail/APKBUILD b/community/mini-sendmail/APKBUILD
new file mode 100644
index 0000000000..4d05ad3860
--- /dev/null
+++ b/community/mini-sendmail/APKBUILD
@@ -0,0 +1,64 @@
+# Contributor: Stuart Cardall <developer@it-offshore.co.uk>
+# Maintainer: Stuart Cardall <developer@it-offshore.co.uk>
+pkgname=mini-sendmail
+_realname=mini_sendmail
+pkgver=1.3.9
+pkgrel=0
+pkgdesc="Accept mail inside a chroot + wrapper for /bin/sh"
+url="http://acme.com/software/mini_sendmail/"
+arch="all"
+license="custom"
+depends=""
+depends_dev=""
+makedepends="$depends_dev"
+subpackages="$pkgname-doc"
+source="http://www.acme.com/software/$_realname/$_realname-$pkgver.tar.gz
+ README.alpine
+ LICENSE
+ sh.c
+ "
+
+_builddir="$srcdir"/$_realname-$pkgver
+prepare() {
+ local i
+ cd "$_builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+}
+
+build() {
+ cd "$_builddir"
+ sed -i "s|^BINDIR.*|BINDIR = $pkgdir/var/lib/mini-sendmail|" Makefile
+ sed -i "s|^MANDIR.*|MANDIR = $pkgdir/usr/share/man|" Makefile
+ sed -i 's|cp mini_sendmail.8.*|cp mini_sendmail.8 $(MANDIR)/man8/|' Makefile
+ make || return 1
+ cp "$srcdir"/sh.c ./
+ gcc sh.c -o sh -static || return 1
+}
+
+package() {
+ cd "$_builddir"
+ mkdir -p "$pkgdir"/var/lib/mini-sendmail
+ mkdir -p "$pkgdir"/usr/share/man/man8
+ mkdir -p "$pkgdir"/usr/share/doc/mini-sendmail
+ make DESTDIR="$pkgdir" install || return 1
+ install -Dm755 sh "$pkgdir"/var/lib/mini-sendmail/
+ install -Dm644 "$srcdir"/README.alpine "$pkgdir"/usr/share/doc/mini-sendmail/
+ install -Dm644 "$srcdir"/LICENSE "$pkgdir"/usr/share/doc/mini-sendmail/
+}
+
+md5sums="0769b6d3ba64fa77a52a90c8866fc4ed mini_sendmail-1.3.9.tar.gz
+de62b0348231c4f3863876f4611f82f8 README.alpine
+a51bbd8a9bcc7391e4db256b6bfb581b LICENSE
+4d751980f33365c5a6520725ab67686e sh.c"
+sha256sums="2e2741ade434808b2b95c7df7b2016a4a7e629c3d6c87468a7f58fb183a1967b mini_sendmail-1.3.9.tar.gz
+be609714548a5b5e33bef3d6e231eec978050f17b0c4f57793025f505b3ff7c9 README.alpine
+65c82388e07b7fc2427c870d52db6e2f6dc81aba58cd2bee005544db6b151376 LICENSE
+d24df6d8ee3b335e6be3a0e78b3110e35ffd3e523e50e0272603ec44c08176b0 sh.c"
+sha512sums="b28c39d94b77acc27a8c9e99583904b43815936b2bf7e27b996685784ff1bc9882bdfc57822ddf62d3198f38ec3df0b766289115cb4e6c23abee93884d2d6bb9 mini_sendmail-1.3.9.tar.gz
+bc6a389f20834956e86edbf033cd6b7a3b7df4a9c1a101a751179c4af444ca08a4cb0bb07dc3a01a3d72908f45059921db336814d9ac9f8eee61d61ce1b2e62f README.alpine
+315b63e597561d911541975160ef5b6158fa5421a638efb06bf5e7af72069484a057c332d590b9e8e72383b67e25f7393a81666f8b914d0c649f1572cf330077 LICENSE
+7356bfb52c46ac79797fea620f7e39c4141c066006e1b72fbf247ea36268a8c89a04120c508c431e0ad152eec9891b2766e2782046e8ea370a1f8ea6699fa0ff sh.c"
diff --git a/community/mini-sendmail/LICENSE b/community/mini-sendmail/LICENSE
new file mode 100644
index 0000000000..47bb71d8d7
--- /dev/null
+++ b/community/mini-sendmail/LICENSE
@@ -0,0 +1,25 @@
+mini_sendmail - accept email on behalf of real sendmail
+
+Copyright © 1999,2015 by Jef Poskanzer <jef@mail.acme.com>.
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+1. Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+SUCH DAMAGE.
diff --git a/community/mini-sendmail/README.alpine b/community/mini-sendmail/README.alpine
new file mode 100644
index 0000000000..ce44325167
--- /dev/null
+++ b/community/mini-sendmail/README.alpine
@@ -0,0 +1,5 @@
+PHP launches sendmail via system(), which in turn uses “/bin/sh -c” internally.
+/var/lib/mini-sendmail/sh is a wrapper that supports being called with “-c command”
+to launch sendmail.
+
+https://knzl.de/setting-up-a-chroot-for-php/
diff --git a/community/mini-sendmail/sh.c b/community/mini-sendmail/sh.c
new file mode 100644
index 0000000000..7feea6d7d1
--- /dev/null
+++ b/community/mini-sendmail/sh.c
@@ -0,0 +1,30 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+
+#define MAXARG 64
+
+int main( int argc, char* const argv[] ) {
+ char* args[ MAXARG ] = {};
+
+ if( argc < 3 || strcmp( argv[1], "-c" ) != 0 ) {
+ fprintf( stderr, "Usage: %s -c <cmd>\n", argv[0] );
+ return 1;
+ }
+
+ {
+ char* token;
+ int i = 0;
+ char* argStr = strdup( argv[2] );
+ while( ( token = strsep( &argStr, " " ) ) != NULL ) {
+ if( token && strlen( token ) )
+ args[ i++ ] = token;
+ if( i >= MAXARG )
+ return 2;
+ }
+ }
+
+ return execvp( args[0], args );
+}
+