diff options
Diffstat (limited to 'mail/vpopmail-devel/files')
-rw-r--r-- | mail/vpopmail-devel/files/patch-Makefile.in | 19 | ||||
-rw-r--r-- | mail/vpopmail-devel/files/patch-config.h.in | 15 | ||||
-rw-r--r-- | mail/vpopmail-devel/files/patch-configure | 107 | ||||
-rw-r--r-- | mail/vpopmail-devel/files/patch-vdelivermail.c | 206 |
4 files changed, 0 insertions, 347 deletions
diff --git a/mail/vpopmail-devel/files/patch-Makefile.in b/mail/vpopmail-devel/files/patch-Makefile.in deleted file mode 100644 index 07dcc81a8990..000000000000 --- a/mail/vpopmail-devel/files/patch-Makefile.in +++ /dev/null @@ -1,19 +0,0 @@ ---- Makefile.in.old Fri Nov 28 09:45:59 2003 -+++ Makefile.in Fri Nov 28 09:46:37 2003 -@@ -723,6 +723,8 @@ - echo "-I@vpopmaildir@/include" > @vpopmaildir@/etc/inc_deps - echo "-L@vpopmaildir@/lib -lvpopmail @auth_libs@ @LIBS@" > @vpopmaildir@/etc/lib_deps - -+ $(INSTALL) -o @vpopuser@ -m 0644 -g @vpopgroup@ \ -+ vlimits.default $(VLIMITS)-dist; \ - if test ! -r $(VLIMITS); then \ - $(INSTALL) -o @vpopuser@ -m 0644 -g @vpopgroup@ \ - vlimits.default $(VLIMITS); \ -@@ -740,7 +742,6 @@ - echo "# settings for each line:" >> $(MYSQLCONF); \ - echo "# host|port|user|password|database" >> $(MYSQLCONF); \ - echo "#" >> $(MYSQLCONF); \ -- echo "localhost|0|root|secret|vpopmail" >> $(MYSQLCONF); \ - echo "#" >> $(MYSQLCONF); \ - echo "# Note:" >> $(MYSQLCONF); \ - echo "# The value of host may be either a hostname or an IP address." >> $(MYSQLCONF); \ diff --git a/mail/vpopmail-devel/files/patch-config.h.in b/mail/vpopmail-devel/files/patch-config.h.in deleted file mode 100644 index be792244bff0..000000000000 --- a/mail/vpopmail-devel/files/patch-config.h.in +++ /dev/null @@ -1,15 +0,0 @@ ---- config.h.in.orig Tue Oct 7 03:25:53 2003 -+++ config.h.in Sat Nov 1 10:59:26 2003 -@@ -89,6 +89,12 @@ - #undef QMAILNEWU - - /* */ -+#undef SPAMC -+ -+/* */ -+#undef SPAM_THRESHOLD -+ -+/* */ - #undef QMAILINJECT - - /* */ diff --git a/mail/vpopmail-devel/files/patch-configure b/mail/vpopmail-devel/files/patch-configure deleted file mode 100644 index 1045f191c5be..000000000000 --- a/mail/vpopmail-devel/files/patch-configure +++ /dev/null @@ -1,107 +0,0 @@ ---- configure.orig Fri Oct 17 01:12:22 2003 -+++ configure Sat Nov 1 14:01:27 2003 -@@ -20,6 +20,10 @@ - ac_help="$ac_help - --enable-qmail-newmrh=path Full path to qmail-newmrh program" - ac_help="$ac_help -+ --enable-spamassassin=path Enable SpamAssassin. Full path to spamc program. default /usr/local/bin/spamc" -+ac_help="$ac_help -+ --enable-spam-threshold=# or n Automatically delete messages that score more than # spam hits" -+ac_help="$ac_help - --enable-vpopuser=vpopmail user vchkpw was installed as." - ac_help="$ac_help - --enable-vpopgroup=vchkpw group vchkpw was installed as." -@@ -1317,7 +1321,7 @@ - ;; - esac - --if test `$idcommand` != "0" -+if false && test `$idcommand` != "0" - then - echo "configure: warning: === vpopmail must be configured as root. ===" 1>&2 - echo "configure: warning: === please switch to the root user and ===" 1>&2 -@@ -1446,6 +1450,49 @@ - EOF - - -+# Check whether --enable-spamassassin or --disable-spamassassin was given. -+if test "${enable_spamassassin+set}" = set; then -+ enableval="$enable_spamassassin" -+ spamc="$enableval" -+ -+ case $spamc in -+ 1*|y*|Y*) -+ spamc="/usr/local/bin/spamc" -+ ;; -+ esac -+ -+ if test ! -f "$spamc" -+ then -+ { echo "configure: error: Unable to find your spamc file, specify --enable-spamassassin=/full/path/to/spamc" 1>&2; exit 1; } -+ fi -+ -+ cat >> confdefs.h <<EOF -+#define SPAMC "$spamc" -+EOF -+ -+# Check whether --enable-spam-threshold or --disable-spam-threshold was given. -+if test "${enable_spam_threshold+set}" = set; then -+ enableval="$enable_spam_threshold" -+ ENABLE_SPAM_THRESHOLD=$enableval -+else -+ -+ ENABLE_SPAM_THRESHOLD=0 -+ -+fi -+ -+ -+case $ENABLE_SPAM_THRESHOLD in -+0*|n*|N*) -+ ;; -+*) -+ cat >> confdefs.h <<EOF -+#define SPAM_THRESHOLD $ENABLE_SPAM_THRESHOLD -+EOF -+ -+ ;; -+esac -+fi -+ - - vpopuser="vpopmail" - # Check whether --enable-vpopuser or --disable-vpopuser was given. -@@ -1601,15 +1648,6 @@ - EOF - - --if test ! -d $vpopmaildir/etc --then -- mkdir $vpopmaildir/etc -- chown $vpopmailuid "$vpopmaildir"/etc -- chgrp $vpopmailgid "$vpopmaildir"/etc -- chmod 755 "$vpopmaildir"/etc -- echo "configure: warning: making a vpopmail etc directory " 1>&2 --fi -- - # Check whether --enable-roaming-users or --disable-roaming-users was given. - if test "${enable_roaming_users+set}" = set; then - enableval="$enable_roaming_users" -@@ -1671,17 +1709,7 @@ - if test "${enable_tcpserver_file+set}" = set; then - enableval="$enable_tcpserver_file" - tcpserver_file="$enableval" --else -- -- if test "$tcpserver_file" = "" -- then -- echo "127.:allow,RELAYCLIENT=\"\"" > "$vpopmaildir"/etc/tcp.smtp -- tcpserver_file="$vpopmaildir"/etc/tcp.smtp -- -- echo "configure: warning: Unable to find your tcpserver relay file." 1>&2 -- echo "configure: warning: Creating tcp.smtp in "$vpopmaildir"/etc/tcp.smtp." 1>&2 -- fi -- -+ echo "127.:allow,RELAYCLIENT=\"\"" > ${VCFGDIR}/tcp.smtp - fi - - cat >> confdefs.h <<EOF diff --git a/mail/vpopmail-devel/files/patch-vdelivermail.c b/mail/vpopmail-devel/files/patch-vdelivermail.c deleted file mode 100644 index fd897a634c51..000000000000 --- a/mail/vpopmail-devel/files/patch-vdelivermail.c +++ /dev/null @@ -1,206 +0,0 @@ ---- vdelivermail.c.orig Mon Oct 20 20:59:57 2003 -+++ vdelivermail.c Sat Nov 1 11:21:15 2003 -@@ -62,6 +62,7 @@ - #define FILE_SIZE 156 - char hostname[FILE_SIZE]; - char loop_buf[FILE_SIZE]; -+char spam_buf[FILE_SIZE]; - - #define MSG_BUF_SIZE 5000 - char msgbuf[MSG_BUF_SIZE]; -@@ -90,6 +91,10 @@ - void usernotfound(void); - int is_loop_match( char *dt, char *address); - int deliver_quota_warning(const char *dir, const char *q); -+#ifdef SPAM_THRESHOLD -+int is_spam(int threshold); -+int is_spam_match(char *xsl, int threshold); -+#endif - - static char local_file[156]; - static char local_file_new[156]; -@@ -257,7 +262,7 @@ - - /* check for wildcard if there's no match */ - if(tmpstr == NULL) { -- for(i=strlen(TheUser);i >= 0 && j != 1;--i) { -+ for(i=strlen(TheUser);i > 0 && j != 1;--i) { - if(TheUser[i-1]=='-') { - tmpuser[0] = '\0'; - strncat(tmpuser,TheUser,i); -@@ -444,6 +449,7 @@ - int inject = 0; - FILE *fs; - char tmp_file[256]; -+ int pim[2]; - - /* check if the email is looping to this user */ - if ( is_looping( address ) == 1 ) { -@@ -631,6 +637,51 @@ - } - } - -+#ifdef SPAMC -+ /* fork the SpamAssassin client - patch by Alex Dupre */ -+ if (!pipe(pim)) { -+ pid = vfork(); -+ switch (pid) { -+ case -1: -+ close(pim[0]); -+ close(pim[1]); -+ break; -+ case 0: -+ close(pim[0]); -+ dup2(pim[1], 1); -+ close(pim[1]); -+ if (execl(SPAMC, SPAMC, "-u", maildir_to_email(address), 0) == -1) { -+ while ((file_count = read(0, msgbuf, MSG_BUF_SIZE)) > 0) -+ write(1, msgbuf, file_count); -+ _exit(0); -+ } -+ } -+ close(pim[1]); -+ dup2(pim[0], 0); -+ close(pim[0]); -+ } -+#ifdef SPAM_THRESHOLD -+ /* silently delete message if spam level > SPAM_THRESHOLD */ -+ if (is_spam(SPAM_THRESHOLD) == 1) { -+ close(write_fd); -+ if (unlink(local_file) != 0) { -+ printf("unlink failed %s errno = %d\n", local_file, errno); -+ return(errno); -+ } -+ return(0); -+ } -+ -+#ifdef MAKE_SEEKABLE -+ if (!Seekable(0)) -+ MakeSeekable(stdin); -+#endif -+ -+ if (lseek(0, 0L, SEEK_SET) < 0) { -+ printf("lseek errno=%d\n", errno); -+ return(errno); -+ } -+#endif -+#endif - - /* read it in chunks and write it to the new file */ - while((file_count=read(0,msgbuf,MSG_BUF_SIZE))>0) { -@@ -881,6 +932,9 @@ - if (strncmp(loop_buf, "Delivered-To: ", 14) == 0 && - is_loop_match(loop_buf, address)==1 ) { - -+ /* seek to the end of stdin */ -+ fseek(stdin, 0L, SEEK_END); -+ - /* return the loop found */ - return(1); - -@@ -919,6 +973,8 @@ - * looping not found value - */ - if ( found == 0 ) { -+ /* seek to the end of stdin */ -+ fseek(stdin, 0L, SEEK_END); - /* return not found looping message value */ - return(0); - } -@@ -1335,3 +1391,96 @@ - return(1); - } - -+#ifdef SPAM_THRESHOLD -+/* Check for a spam message -+ * This is done by checking for a matching line -+ * in the email headers for X-Spam-Level: which -+ * we put in each spam email -+ * -+ * Return 1 if spam -+ * Return 0 if not spam -+ * Return -1 on error -+ */ -+int is_spam(int threshold) -+{ -+ int i; -+ int found; -+ -+#ifdef MAKE_SEEKABLE -+ if (!Seekable(0)) -+ MakeSeekable(stdin); -+#endif -+ -+ if ( lseek(0, 0L, SEEK_SET) < 0 ) { -+ printf("lseek errno=%d\n", errno); -+ return(errno); -+ } -+ -+ while (fgets(spam_buf, sizeof(spam_buf), stdin) != NULL){ -+ -+ /* if we find the line, return error (looping) */ -+ if (strncmp(spam_buf, "X-Spam-Level: ", 14) == 0 && -+ is_spam_match(spam_buf, threshold) ==1) { -+ -+ /* seek to the end of stdin */ -+ fseek(stdin, 0L, SEEK_END); -+ -+ /* return the spam found */ -+ return(1); -+ -+ /* check for the start of the body, we only need -+ * to check the headers. -+ */ -+ } else { -+ -+ /* walk through the charaters in the body */ -+ for (i = 0, found = 0; spam_buf[i] != 0 && found == 0; ++i) { -+ switch(spam_buf[i]) { -+ -+ /* skip blank spaces and new lines */ -+ case ' ': -+ case '\n': -+ case '\t': -+ case '\r': -+ break; -+ -+ /* found a non blank, so we are still -+ * in the headers -+ */ -+ default: -+ -+ /* set the found non blank char flag */ -+ found = 1; -+ break; -+ } -+ } -+ -+ /* if the line only had blanks, then it is the -+ * delimiting line between the headers and the -+ * body. We don't need to check the body for -+ * the X-Spam-Level: line. Hence, we -+ * are done with our search and can return the -+ * spam not found value -+ */ -+ if (found == 0) { -+ /* seek to the end of stdin */ -+ fseek(stdin, 0L, SEEK_END); -+ /* return not found spam message value */ -+ return(0); -+ } -+ } -+ } -+ -+ /* if we get here then the there is either no body -+ * or the logic above failed and we scanned -+ * the whole email, headers and body. -+ */ -+ return(0); -+} -+ -+int is_spam_match(char *xsl, int threshold) -+{ -+ if (strlen(xsl) - strlen("X-Spam-Level: ") > threshold) return(1); -+ else return(0); -+} -+#endif |