aboutsummaryrefslogtreecommitdiffstats
path: root/community/mini-sendmail/sh.c
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/sh.c
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/sh.c')
-rw-r--r--community/mini-sendmail/sh.c30
1 files changed, 30 insertions, 0 deletions
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 );
+}
+