diff options
Diffstat (limited to 'mail')
-rw-r--r-- | mail/ezmlm-web/Makefile | 42 | ||||
-rw-r--r-- | mail/ezmlm-web/files/patch-aa | 66 | ||||
-rw-r--r-- | mail/ezmlm-web/pkg-message | 19 | ||||
-rw-r--r-- | mail/ezmlm-web/pkg-plist | 21 |
4 files changed, 39 insertions, 109 deletions
diff --git a/mail/ezmlm-web/Makefile b/mail/ezmlm-web/Makefile index fb3aae6b1987..f8895efc72ab 100644 --- a/mail/ezmlm-web/Makefile +++ b/mail/ezmlm-web/Makefile @@ -7,41 +7,53 @@ PORTNAME= ezmlm-web PORTVERSION= 2.1 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= mail www MASTER_SITES= ftp://rucus.ru.ac.za/pub/mail/ezmlm/ MAINTAINER= guy-ezmlm@rucus.ru.ac.za COMMENT= CGI script that lets you manage ezmlm-idx mailing lists through the web -BUILD_DEPENDS= ${LOCALBASE}/${EZMLM_DIR}/bin/ezmlm-idx:${PORTSDIR}/mail/ezmlm-idx \ - ${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/Mail/Ezmlm.pm:${PORTSDIR}/mail/p5-Mail-Ezmlm -RUN_DEPENDS= ${LOCALBASE}/sbin/apachectl:${PORTSDIR}/www/apache13 \ - ${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/Mail/Address.pm:${PORTSDIR}/mail/p5-Mail-Tools +RUN_DEPENDS= ezmlm-idx:${PORTSDIR}/mail/ezmlm-idx \ + ${SITE_PERL}/Mail/Ezmlm.pm:${PORTSDIR}/mail/p5-Mail-Ezmlm \ + ${SITE_PERL}/Mail/Address.pm:${PORTSDIR}/mail/p5-Mail-Tools # Change these to suit your setup. You can do this via the environment # CGI_BIN is the location relative to ${PREFIX} of your webservers' cgi-bin # EZMLM_DIR is the base relative to ${PREFIX} in which ezmlm was installed # CGI_BIN?= www/cgi-bin.default -EZMLM_DIR?= USE_PERL5= YES -PLIST_SUB= CGI_BIN=${CGI_BIN:S/$/\//:S/^\///} EZMLM_DIR=${EZMLM_DIR:S/$/\//:S/^\///} +USE_REINPLACE= YES +PLIST_SUB= CGI_BIN=${CGI_BIN} + +EXAMPLES= htaccess.sample webusers.sample index.c +DOCS= CHANGES README TODO UPGRADING do-build: - @cd ${WRKSRC}; ${MAKE} index; ${MV} index ezmlm-web + cd ${WRKSRC} && ${CC} ${CFLAGS} -o ezmlm-web index.c + +post-patch: + ${REINPLACE_CMD} -e 's|/etc/ezmlm|${PREFIX}/etc/ezmlm|' \ + -e 's|/usr/local|${PREFIX}|g' -e 's|prefex|prefix|g' \ + ${WRKSRC}/ezmlm-web.cgi ${WRKSRC}/ezmlmwebrc ${WRKSRC}/index.c do-install: - ${MKDIR} ${PREFIX}/${CGI_BIN} ${PREFIX}/${EZMLM_DIR} - ${INSTALL_SCRIPT} ${WRKSRC}/ezmlm-web.cgi ${PREFIX}/${EZMLM_DIR}/bin - ${INSTALL_DATA} ${WRKSRC}/ezmlmwebrc ${PREFIX}/${EZMLM_DIR}/etc/ezmlm/ezmlmwebrc.sample + ${MKDIR} ${PREFIX}/${CGI_BIN} ${PREFIX}/etc/ezmlm + ${INSTALL_SCRIPT} ${WRKSRC}/ezmlm-web.cgi ${PREFIX}/bin + ${INSTALL_DATA} ${WRKSRC}/ezmlmwebrc ${PREFIX}/etc/ezmlm/ezmlmwebrc.sample ${INSTALL_PROGRAM} -o alias -g qmail -m 4755 ${WRKSRC}/ezmlm-web ${PREFIX}/${CGI_BIN} - ${MKDIR} ${PREFIX}/share/ezmlm-web -.for file in CHANGES README index.c htaccess.sample webusers.sample - ${INSTALL_MAN} ${WRKSRC}/${file} ${PREFIX}/share/ezmlm-web + ${MKDIR} ${EXAMPLESDIR} +.for file in ${EXAMPLES} + ${INSTALL_MAN} ${WRKSRC}/${file} ${EXAMPLESDIR} .endfor - +.if !defined(NOPORTDOCS) + ${MKDIR} ${DOCSDIR} +.for file in ${DOCS} + ${INSTALL_DATA} ${WRKSRC}/${file} ${DOCSDIR} +.endfor +.endif post-install: @${SED} 's!%%PREFIX%%!${PREFIX}!g; s!%%EZMLM_DIR%%!${PREFIX}${EZMLM_DIR:S/^\///}!g' ${PKGMESSAGE} @${ECHO} diff --git a/mail/ezmlm-web/files/patch-aa b/mail/ezmlm-web/files/patch-aa deleted file mode 100644 index d4feb9e5b64f..000000000000 --- a/mail/ezmlm-web/files/patch-aa +++ /dev/null @@ -1,66 +0,0 @@ ---- ezmlm-web.cgi.orig Mon Sep 25 21:58:08 2000 -+++ ezmlm-web.cgi Wed Sep 19 09:19:05 2001 -@@ -76,6 +76,10 @@ - require "$opt_C"; # Command Line - } elsif(-e "$HOME_DIR/.ezmlmwebrc") { - require "$HOME_DIR/.ezmlmwebrc"; # User -+} elsif(-e "/usr/local/etc/ezmlm/ezmlmwebrc") { -+ require "/usr/local/etc/ezmlm/ezmlmwebrc"; # FreeBSD -+} elsif(-e "/usr/local/etc/ezmlmwebrc") { -+ require "/usr/local/etc/ezmlmwebrc"; # FreeBSD alt - } elsif(-e "/etc/ezmlm/ezmlmwebrc") { - require "/etc/ezmlm/ezmlmwebrc"; # System - } elsif(-e "./ezmlmwebrc") { -@@ -281,13 +285,13 @@ - print $q->startform; - print $q->hidden(-name=>'state', -default=>'select'); - print '<CENTER><TABLE BORDER="0" CELLPADDING="10"><TR><TD ALIGN="center" VALIGN="top" ROWSPAN="2">'; -- print $q->scrolling_list(-name=>'list', -size=>$scrollsize, -values=>\@lists) if defined(@lists); -+ print $q->scrolling_list(-name=>'list', -size=>$scrollsize, -values=>\@lists) if (@lists); - - print '</TD><TD ALIGN="left" VALIGN="top">', $LANGUAGE{'chooselistinfo'}; - -- print $q->submit(-name=>'action', -value=>"[$BUTTON{'create'}]"), ' ' if (!defined($opt_c)); -- print $q->submit(-name=>'action', -value=>"[$BUTTON{'edit'}]"), ' ' if(defined(@lists)); -- print $q->submit(-name=>'action', -value=>"[$BUTTON{'delete'}]") if(defined(@lists)); -+ print $q->submit(-name=>'action', -value=>"[$BUTTON{'create'}]"), ' ' if ($opt_c); -+ print $q->submit(-name=>'action', -value=>"[$BUTTON{'edit'}]"), ' ' if(@lists); -+ print $q->submit(-name=>'action', -value=>"[$BUTTON{'delete'}]") if(@lists); - print '</TD></TR><TR><TD> </TD></TR></TABLE></CENTER>'; - print $q->endform; - } -@@ -332,10 +336,10 @@ - print '<CENTER><TABLE ALIGN="center" CELLPADDING="10"><TR><TD ROWSPAN="2" VALIGN="top" ALIGN="center">'; - print $q->hidden(-name=>'state', -default=>'edit'); - print $q->hidden(-name=>'list', -default=>$Q::list); -- print $q->scrolling_list(-name=>'delsubscriber', -size=>$scrollsize, -values=>\@subscribers, -labels=>&pretty_names, -multiple=>'true') if defined(@subscribers); -+ print $q->scrolling_list(-name=>'delsubscriber', -size=>$scrollsize, -values=>\@subscribers, -labels=>&pretty_names, -multiple=>'true') if (@subscribers); - print '</TD><TD VALIGN="top" ALIGN="left">'; -- print ' ', ($#subscribers + 1), ' ', $LANGUAGE{'subscribers'}, '<BR>' if defined(@subscribers); -- print $q->submit(-name=>'action', -value=>"[$BUTTON{'deleteaddress'}]"), '<P>' if defined(@subscribers); -+ print ' ', ($#subscribers + 1), ' ', $LANGUAGE{'subscribers'}, '<BR>' if (@subscribers); -+ print $q->submit(-name=>'action', -value=>"[$BUTTON{'deleteaddress'}]"), '<P>' if (@subscribers); - print $q->textfield(-name=>'addsubscriber', -size=>'40'), ' <IMG SRC="', $HELP_ICON_URL, '" ALT="', $HELPER{'addaddress'}, '"><BR>'; - print $q->filefield(-name=>'addfile', -size=>20, -maxlength=>100), ' <IMG SRC="', $HELP_ICON_URL, '" ALT="', $HELPER{'addaddressfile'}, '"><br>' if ($FILE_UPLOAD); - print $q->submit(-name=>'action', -value=>"[$BUTTON{'addaddress'}]"), '<P>'; -@@ -447,7 +451,7 @@ - die "File upload must be of type text/*" unless($q->uploadInfo($q->param('addfile'))->{'Content-Type'} =~ m{^text/}); - - # Handle file uploads of addresses -- my($fh) = $q->upload('addfile'); -+ my($fh) = $q->param('addfile'); - return unless (defined($fh)); - while (<$fh>) { - next if (/^\s*$/ or /^#/); # blank, comments -@@ -563,9 +567,9 @@ - print '<CENTER><TABLE ALIGN="center" CELLPADDING="10"><TR><TD ROWSPAN="2" VALIGN="top" ALIGN="center">'; - print $q->hidden(-name=>'state', -default=>$part); - print $q->hidden(-name=>'list', -default=>$Q::list), "\n"; -- print $q->scrolling_list(-name=>'delsubscriber', -size=>$scrollsize, -values=>\@subscribers, -multiple=>'true', -labels=>&pretty_names) if defined(@subscribers); -+ print $q->scrolling_list(-name=>'delsubscriber', -size=>$scrollsize, -values=>\@subscribers, -multiple=>'true', -labels=>&pretty_names) if (@subscribers); - print '</TD></TR><TR><TD VALIGN="top" ALIGN="left">'; -- print $q->submit(-name=>'action', -value=>"[$BUTTON{'deleteaddress'}]"), '<P>' if defined(@subscribers); -+ print $q->submit(-name=>'action', -value=>"[$BUTTON{'deleteaddress'}]"), '<P>' if (@subscribers); - print $q->textfield(-name=>'addsubscriber', -size=>'40'), ' <IMG SRC="', $HELP_ICON_URL, '" ALT="', $HELPER{'addaddress'}, '"><BR>'; - print $q->filefield(-name=>'addfile', -size=>20, -maxlength=>100), ' <IMG SRC="', $HELP_ICON_URL, '" ALT="', $HELPER{'addaddressfile'}, '"><br>' if ($FILE_UPLOAD); - print $q->submit(-name=>'action', -value=>"[$BUTTON{'addaddress'}]"), '<P>'; diff --git a/mail/ezmlm-web/pkg-message b/mail/ezmlm-web/pkg-message index 1d952f1d677d..e69de29bb2d1 100644 --- a/mail/ezmlm-web/pkg-message +++ b/mail/ezmlm-web/pkg-message @@ -1,19 +0,0 @@ - -NB!! By default no security is enabled on ezmlm-web. - -The effectively means that at the moment, anyone can go to - http://<your host>/cgi-bin/ezmlm-web -and alter any of your primary mailing lists. - -If this is not what you want (and it probably isn't :), you need to -either create a <File> directive in you apache configuration, or -use a .htaccess file, or provide some other means of security. - -Have a look at the README file in %%PREFIX%%/share/ezmlm-web for -more information. There are also some sample files there. - -In order to make ezmlm-web work properly, you will have to create -a configuration file for it in %%EZMLM_DIR%%/etc/ezmlm. -A sample ezmlmwebrc (ezmlmwebrc.sample) file is provided in that -directory. This sample will work `as is', but allows you to customise -ezmlm-web to your liking. At a minimum just cp ezmlmwebrc.sample ezmlmwebrc diff --git a/mail/ezmlm-web/pkg-plist b/mail/ezmlm-web/pkg-plist index ece3aa6e9b1f..c649dda6db4c 100644 --- a/mail/ezmlm-web/pkg-plist +++ b/mail/ezmlm-web/pkg-plist @@ -1,9 +1,12 @@ -share/ezmlm-web/CHANGES -share/ezmlm-web/README -share/ezmlm-web/index.c -share/ezmlm-web/htaccess.sample -share/ezmlm-web/webusers.sample -@dirrm share/ezmlm-web -%%EZMLM_DIR%%bin/ezmlm-web.cgi -%%EZMLM_DIR%%etc/ezmlm/ezmlmwebrc.sample -%%CGI_BIN%%ezmlm-web +bin/ezmlm-web.cgi +%%CGI_BIN%%/ezmlm-web +etc/ezmlm/ezmlmwebrc.sample +%%PORTDOCS%%%%DOCSDIR%%/CHANGES +%%PORTDOCS%%%%DOCSDIR%%/README +%%PORTDOCS%%%%DOCSDIR%%/TODO +%%PORTDOCS%%%%DOCSDIR%%/UPGRADING +share/examples/ezmlm-web/htaccess.sample +share/examples/ezmlm-web/index.c +share/examples/ezmlm-web/webusers.sample +%%PORTDOCS%%@dirrm %%DOCSDIR%% +@dirrm share/examples/ezmlm-web |