diff options
author | Norikatsu Shigemura <nork@FreeBSD.org> | 2003-04-26 21:51:56 +0000 |
---|---|---|
committer | Norikatsu Shigemura <nork@FreeBSD.org> | 2003-04-26 21:51:56 +0000 |
commit | 67a9e0c5bab8a1d91512baf7571d2821a683b83d (patch) | |
tree | 61794c87ebaa9522cac29b80866397479eae35a0 /mail | |
parent | Add websieve 0.61, web based Cyrus IMAP user admin client. (diff) |
Add p5-IMAP-Sieve 0.4.9, perl module to edit Sieve scripts
on an Cyrus IMAP server.
PR: ports/51425
Submitted by: Oliver Eikemeier <eikemeier@fillmore-labs.com>
Diffstat (limited to 'mail')
-rw-r--r-- | mail/Makefile | 1 | ||||
-rw-r--r-- | mail/p5-IMAP-Sieve/Makefile | 35 | ||||
-rw-r--r-- | mail/p5-IMAP-Sieve/distinfo | 1 | ||||
-rw-r--r-- | mail/p5-IMAP-Sieve/files/patch-MANIFEST | 10 | ||||
-rw-r--r-- | mail/p5-IMAP-Sieve/files/patch-Sieve.pm | 101 | ||||
-rw-r--r-- | mail/p5-IMAP-Sieve/pkg-descr | 7 | ||||
-rw-r--r-- | mail/p5-IMAP-Sieve/pkg-plist | 5 |
7 files changed, 160 insertions, 0 deletions
diff --git a/mail/Makefile b/mail/Makefile index c27139ec3f47..2692d7a62cb1 100644 --- a/mail/Makefile +++ b/mail/Makefile @@ -164,6 +164,7 @@ SUBDIR += p5-Email-Find SUBDIR += p5-Email-Valid SUBDIR += p5-IMAP-Admin + SUBDIR += p5-IMAP-Sieve SUBDIR += p5-MIME-Lite SUBDIR += p5-MIME-Tools SUBDIR += p5-MIME-Types diff --git a/mail/p5-IMAP-Sieve/Makefile b/mail/p5-IMAP-Sieve/Makefile new file mode 100644 index 000000000000..627e2c8665fa --- /dev/null +++ b/mail/p5-IMAP-Sieve/Makefile @@ -0,0 +1,35 @@ +# New ports collection makefile for: p5-IMAP-Sieve +# Date created: 25 Apr 2003 +# Whom: Oliver Eikemeier <eikemeier@fillmore-labs.com> +# +# $FreeBSD$ +# + +PORTNAME= IMAP-Sieve +PORTVERSION= 0.4.9 +CATEGORIES= mail perl5 +MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} +MASTER_SITE_SUBDIR= websieve +PKGNAMEPREFIX= p5- +DISTNAME= websieve-0.61 + +MAINTAINER= eikemeier@fillmore-labs.com +COMMENT= Perl module to edit Sieve scripts on an Cyrus IMAP server + +RUN_DEPENDS= ${SITE_PERL}/IO/Socket/SSL.pm:${PORTSDIR}/security/p5-IO-Socket-SSL \ + ${SITE_PERL}/${PERL_ARCH}/IO.pm:${PORTSDIR}/devel/p5-IO + +WRKSRC= ${WRKDIR}/${PERLSIEVENAME} + +PERL_CONFIGURE= yes + +PERLSIEVENAME= perlsieve-${PORTVERSION} +PERLSIEVESUFX= b + +post-extract: + @${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} \ + ${WRKDIR}/websieve/${PERLSIEVENAME}${PERLSIEVESUFX}${EXTRACT_SUFX} \ + ${EXTRACT_AFTER_ARGS} -C ${WRKDIR} + @${RM} ${WRKSRC}/testssl.pl + +.include <bsd.port.mk> diff --git a/mail/p5-IMAP-Sieve/distinfo b/mail/p5-IMAP-Sieve/distinfo new file mode 100644 index 000000000000..6e94d0e47405 --- /dev/null +++ b/mail/p5-IMAP-Sieve/distinfo @@ -0,0 +1 @@ +MD5 (websieve-0.61.tar.gz) = 5f2d01a2479f8cdd8e2ea4fd1a09163e diff --git a/mail/p5-IMAP-Sieve/files/patch-MANIFEST b/mail/p5-IMAP-Sieve/files/patch-MANIFEST new file mode 100644 index 000000000000..30a558b60fbf --- /dev/null +++ b/mail/p5-IMAP-Sieve/files/patch-MANIFEST @@ -0,0 +1,10 @@ +--- MANIFEST.orig Fri Apr 25 18:47:03 2003 ++++ MANIFEST Fri Apr 25 18:47:12 2003 +@@ -2,7 +2,6 @@ + GPL2.txt + LGPL2.txt + test.pl +-testssl.pl + Sieve.pm + Changes + MANIFEST diff --git a/mail/p5-IMAP-Sieve/files/patch-Sieve.pm b/mail/p5-IMAP-Sieve/files/patch-Sieve.pm new file mode 100644 index 000000000000..af847be5573d --- /dev/null +++ b/mail/p5-IMAP-Sieve/files/patch-Sieve.pm @@ -0,0 +1,101 @@ +--- Sieve.pm.orig Sat Jun 23 22:42:48 2001 ++++ Sieve.pm Thu Apr 24 18:10:29 2003 +@@ -93,7 +93,7 @@ + Proto => 'tcp', + Reuse => 1); }) + { +- $self->_error("initialize", "could'nt establish a Sieve connection to",$self->{'Server'}); ++ $self->_error("initialize", "couldn't establish a Sieve connection to",$self->{'Server'}); + return; + } + } # if SSL +@@ -110,6 +110,7 @@ + if (/\r$/) { + chop; + } ++ my $starttls = 0; + if (/IMPLEMENTATION/) { + $self->{'Implementation'}=$1 if /^"IMPLEMENTATION" +"(.*)"/; + #version 2 of cyrus imap/timsieved +@@ -119,6 +120,7 @@ + while (!/^OK/) { + $self->{'Capability'}=$1 if /^"SASL" +"(.*)"/; + $self->{'Sieve'}=$1 if /^"SIEVE" +"(.*)"/; ++ $starttls=1 if /"STARTTLS"/; + $_ = $self->_read; + ## $_=$self->_read; + } +@@ -126,6 +128,55 @@ + else { + $self->{'Capability'}=$_; + } ++ if (!defined($self->{'SSL'}) && $starttls) { ++ my $cwd= cwd; ++ my %ssl_defaults = ( ++ 'SSL_use_cert' => 0, ++ 'SSL_verify_mode' => 0x00, ++ 'SSL_key_file' => $cwd."/certs/client-key.pem", ++ 'SSL_cert_file' => $cwd."/certs/client-cert.pem", ++ 'SSL_ca_path' => $cwd."/certs", ++ 'SSL_ca_file' => $cwd."/certs/ca-cert.pem", ++ 'SSL_version' => 'tlsv1' ++ ); ++ my @ssl_options; ++ my $ssl_key; ++ my $key; ++ foreach $ssl_key (keys(%ssl_defaults)) { ++ if (!defined($self->{$ssl_key})) { ++ $self->{$ssl_key} = $ssl_defaults{$ssl_key}; ++ } ++ } ++ foreach $ssl_key (keys(%{$self})) { ++ if ($ssl_key =~ /^SSL_/) { ++ push @ssl_options, $ssl_key,$self->{$ssl_key}; ++ } ++ } ++ my $SSL_try="use IO::Socket::SSL"; ++ eval $SSL_try; ++# $IO::Socket::SSL::DEBUG = 4; ++ if ($self->{'Socket'}->isa('IO::Socket::SSL')) { ++ $self->_error("starttls", "TLS already started"); ++ $self->close; ++ return; ++ } ++ print $fh "STARTTLS\r\n"; ++ $_ = $self->_read; ++ if (/OK/) { ++ ++ #IO::Socket::SSL::context_init({@ssl_options}); ++ if (!IO::Socket::SSL::socket_to_SSL($self->{'Socket'}, {@ssl_options})) ++ { ++ $self->_error("starttls", "couldn't secure connection to",$self->{'Server'}); ++ $self->close; ++ return; ++ } ++ } else { ++ $self->close; ++ $self->_error("starttls", "Unknown error",$_); ++ return; ++ } ++ } + $userpass = "$self->{'Proxy'}\x00".$self->{'Login'}."\x00".$self->{'Password'}; + $encode=encode_base64($userpass); + $len=length($encode); +@@ -196,7 +247,7 @@ + } + } + else { +- if (($char eq "\n") or ($char eq "\r")) { ++ if ($char eq "\n") { + if (length($buffer) ==0) { + # remove any cr or nl leftover + } +@@ -204,7 +255,7 @@ + return $buffer; + } + } +- else { ++ elsif ($char ne "\r") { + $buffer.=$char; + } + } diff --git a/mail/p5-IMAP-Sieve/pkg-descr b/mail/p5-IMAP-Sieve/pkg-descr new file mode 100644 index 000000000000..56238ff43252 --- /dev/null +++ b/mail/p5-IMAP-Sieve/pkg-descr @@ -0,0 +1,7 @@ +A Perl module used by websieve for creating Sieve scripts on an Cyrus +IMAP mail server. Sometimes also referenced as 'perlsieve'. + +Author: Alain Turbide <aturbide@toshiba.ca> + + +WWW: http://sourceforge.net/projects/websieve diff --git a/mail/p5-IMAP-Sieve/pkg-plist b/mail/p5-IMAP-Sieve/pkg-plist new file mode 100644 index 000000000000..7b8797d23603 --- /dev/null +++ b/mail/p5-IMAP-Sieve/pkg-plist @@ -0,0 +1,5 @@ +%%SITE_PERL%%/IMAP/Sieve.pm +%%SITE_PERL%%/%%PERL_ARCH%%/auto/IMAP/Sieve/.packlist +@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/IMAP/Sieve +@unexec rmdir %D%%SITE_PERL%%/%%PERL_ARCH%%/auto/IMAP 2>/dev/null || true +@unexec rmdir %D%%SITE_PERL%%/IMAP 2>/dev/null || true |