initial commit of file from CVS for ezmlm-web on Thu Oct 9 11:44:01 AEDT 2025
This commit is contained in:
1
.gitattributes
vendored
Normal file
1
.gitattributes
vendored
Normal file
@@ -0,0 +1 @@
|
||||
*.3.1.tar.gz filter=lfs diff=lfs merge=lfs -text
|
3
.gitignore
vendored
Normal file
3
.gitignore
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
*.rpm
|
||||
*.log
|
||||
*spec-20*
|
21
Makefile
Normal file
21
Makefile
Normal file
@@ -0,0 +1,21 @@
|
||||
# Makefile for source rpm: ezmlm-web
|
||||
# $Id: Makefile,v 1.1 2022/03/15 19:09:46 jpp Exp $
|
||||
NAME := ezmlm-web
|
||||
SPECFILE = $(firstword $(wildcard *.spec))
|
||||
|
||||
define find-makefile-common
|
||||
for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
|
||||
endef
|
||||
|
||||
MAKEFILE_COMMON := $(shell $(find-makefile-common))
|
||||
|
||||
ifeq ($(MAKEFILE_COMMON),)
|
||||
# attept a checkout
|
||||
define checkout-makefile-common
|
||||
test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
|
||||
endef
|
||||
|
||||
MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
|
||||
endif
|
||||
|
||||
include $(MAKEFILE_COMMON)
|
@@ -1,3 +1,9 @@
|
||||
# ezmlm-web
|
||||
|
||||
3rd Party (Maintained by Koozali) git repo for ezmlm-web smecontribs
|
||||
|
||||
## Description
|
||||
|
||||
<br />*This description has been generated by an LLM AI system and cannot be relied on to be fully correct.*
|
||||
*Once it has been checked, then this comment will be deleted*
|
||||
<br />
|
||||
|
1
contriborbase
Normal file
1
contriborbase
Normal file
@@ -0,0 +1 @@
|
||||
contribs10
|
19
ezmlm-web-3.3.1-bz11913-deprecateddefined.patch
Normal file
19
ezmlm-web-3.3.1-bz11913-deprecateddefined.patch
Normal file
@@ -0,0 +1,19 @@
|
||||
diff -Nur --no-dereference ezmlm-web-3.3.1.old/ezmlm-web.cgi ezmlm-web-3.3.1/ezmlm-web.cgi
|
||||
--- ezmlm-web-3.3.1.old/ezmlm-web.cgi 2022-03-20 13:49:24.150000000 -0400
|
||||
+++ ezmlm-web-3.3.1/ezmlm-web.cgi 2022-03-20 14:04:48.534000000 -0400
|
||||
@@ -240,13 +240,13 @@
|
||||
$HTML_TITLE = '' unless defined($HTML_TITLE);
|
||||
|
||||
# check HTML_LINKS
|
||||
-@HTML_LINKS = () unless defined(@HTML_LINKS);
|
||||
+@HTML_LINKS = () unless @HTML_LINKS;
|
||||
|
||||
# check DEFAULT_INTERFACE_TYPE
|
||||
$DEFAULT_INTERFACE_TYPE = 'normal' unless defined($DEFAULT_INTERFACE_TYPE);
|
||||
|
||||
# check possible blacklist of interface options (since v3.3)
|
||||
-@INTERFACE_OPTIONS_BLACKLIST = () unless defined(@INTERFACE_OPTIONS_BLACKLIST);
|
||||
+@INTERFACE_OPTIONS_BLACKLIST = () unless @INTERFACE_OPTIONS_BLACKLIST;
|
||||
|
||||
# check the configured detault location of gnupg keyrings
|
||||
$GPG_KEYRING_DEFAULT_LOCATION = ".gnupg"
|
23
ezmlm-web-3.3.1-cgi.patch
Normal file
23
ezmlm-web-3.3.1-cgi.patch
Normal file
@@ -0,0 +1,23 @@
|
||||
--- ezmlm-web-3.3.1/ezmlm-web.cgi.ori 2016-04-18 23:46:09.000000000 -0400
|
||||
+++ ezmlm-web-3.3.1/ezmlm-web.cgi 2016-04-20 05:03:33.000000000 -0400
|
||||
@@ -2064,7 +2064,10 @@
|
||||
if (defined($q->param("setting_state_$i"))) {
|
||||
$options .= " -$i '" . $q->param("setting_value_$i") . "'";
|
||||
} else {
|
||||
- if ($i != 5) {
|
||||
+ if ($i == 3) {
|
||||
+ unlink("$LIST_DIR/$listname/fromheader");
|
||||
+ }
|
||||
+ elsif ($i != 5) {
|
||||
# everything except for the "owner" attribute:
|
||||
# do not set the value to an empty string,
|
||||
# as ezmlm-idx 5.0 does not work correctly for this case
|
||||
@@ -2427,7 +2430,7 @@
|
||||
if (defined($q->param('option_t'))) {
|
||||
# TODO: the trailer _must_ be followed by a newline
|
||||
#$list->set_text_content('trailer', $q->param('trailing_text'));
|
||||
- $list->set_text_content('trailer', $list->get_text_default_content('trailer'))
|
||||
+ $list->set_text_content('trailer', $list->get_text_content('trailer'))
|
||||
unless (-e "$list->{'LIST_NAME'}/text/trailer");
|
||||
} else {
|
||||
# ezmlm-make automatically removes this file
|
226
ezmlm-web-3.3.1-modiffor722.patch
Normal file
226
ezmlm-web-3.3.1-modiffor722.patch
Normal file
@@ -0,0 +1,226 @@
|
||||
--- ezmlm-web-3.3.1/ezmlm-web.cgi.plusmodif 2016-04-20 06:55:41.000000000 -0400
|
||||
+++ ezmlm-web-3.3.1/ezmlm-web.cgi 2016-04-20 15:21:15.000000000 -0400
|
||||
@@ -1169,6 +1169,20 @@
|
||||
$item = '' unless defined($item);
|
||||
$pagedata->setValue("Data.List.CopyLines", "$item");
|
||||
}
|
||||
+ if (Mail::Ezmlm->get_version() >= 7) {
|
||||
+ $item = $list->getpart('digsize');
|
||||
+ $item = '' unless defined($item);
|
||||
+ $pagedata->setValue("Data.List.digsize", "$item");
|
||||
+
|
||||
+ $item = $list->getpart('digcount');
|
||||
+ $item = '' unless defined($item);
|
||||
+ $pagedata->setValue("Data.List.digcount", "$item");
|
||||
+
|
||||
+ $item = $list->getpart('digtime');
|
||||
+ $item = '' unless defined($item);
|
||||
+ $pagedata->setValue("Data.List.digtime", "$item");
|
||||
+ }
|
||||
+
|
||||
|
||||
$item = $list->getpart('mimereject');
|
||||
$item = '' unless defined($item);
|
||||
@@ -2524,6 +2538,46 @@
|
||||
}
|
||||
}
|
||||
|
||||
+ # 'digsize' setting (since ezmlm-idx v7)
|
||||
+ if (defined($q->param('digsize'))) {
|
||||
+ my $digsize;
|
||||
+ $digsize = (defined($q->param('digsize'))) ?
|
||||
+ $q->param('digsize') : 0;
|
||||
+ if (defined($q->param('digsize_state')) && ($digsize)) {
|
||||
+ $list->setpart('digsize', "$digsize");
|
||||
+ } else {
|
||||
+ my $digsize = $list->thislist() . "/digsize";
|
||||
+ unlink ($digsize) if (-e $digsize);
|
||||
+ }
|
||||
+ }
|
||||
+ # 'digsize' setting (since ezmlm-idx v7)
|
||||
+ if (defined($q->param('digcount'))) {
|
||||
+ my $digcount;
|
||||
+ $digcount = (defined($q->param('digcount'))) ?
|
||||
+ $q->param('digcount') : 0;
|
||||
+ if (defined($q->param('digcount_state')) && ($digcount)) {
|
||||
+ $list->setpart('digcount', "$digcount");
|
||||
+ } else {
|
||||
+ my $digcount = $list->thislist() . "/digcount";
|
||||
+ unlink ($digcount) if (-e $digcount);
|
||||
+ }
|
||||
+ }
|
||||
+ # 'digtime' setting (since ezmlm-idx v7)
|
||||
+ if (defined($q->param('digtime'))) {
|
||||
+ my $digtime;
|
||||
+ $digtime = (defined($q->param('digtime'))) ?
|
||||
+ $q->param('digtime') : 0;
|
||||
+ if (defined($q->param('digtime_state')) && ($digtime)) {
|
||||
+ $list->setpart('digtime', "$digtime");
|
||||
+ } else {
|
||||
+ my $digtime = $list->thislist() . "/digtime";
|
||||
+ unlink ($digtime) if (-e $digtime);
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+
|
||||
+
|
||||
+
|
||||
# 'msgsize' setting
|
||||
if (defined($q->param('msgsize_max_value'))
|
||||
&& defined($q->param('msgsize_min_value'))) {
|
||||
--- ezmlm-web/lang/en.hdf.plusmodif 2016-04-20 06:55:41.000000000 -0400
|
||||
+++ ezmlm-web/lang/en.hdf 2016-04-20 15:06:49.000000000 -0400
|
||||
@@ -234,6 +234,12 @@
|
||||
ListAddress = List Address
|
||||
ListOptions = Basic List Options
|
||||
AllowedToEdit = Users allowed to edit this list via web interface
|
||||
+ digsize = Size of message body accumulated since the latest digest
|
||||
+ digsize.unit = kbytes
|
||||
+ digcount = Number of message accumulated since the latest digest
|
||||
+ digcount.unit = messages
|
||||
+ digtime = Time since lastest digest
|
||||
+ digtime.unit = hours
|
||||
HeaderFiltering = Header filtering
|
||||
HeaderRemove = strip these header lines
|
||||
HeaderKeep = keep only these header lines
|
||||
--- ezmlm-web/template/ui/easy.hdf.plusmodif 2016-04-20 06:55:42.000000000 -0400
|
||||
+++ ezmlm-web/template/ui/easy.hdf 2016-04-20 14:54:20.000000000 -0400
|
||||
@@ -40,7 +40,6 @@
|
||||
Listname = create_listname
|
||||
Listaddress = create_listaddress
|
||||
Listlanguage = lang_select
|
||||
- Webuser = webusers
|
||||
}
|
||||
|
||||
|
||||
@@ -60,7 +59,6 @@
|
||||
SubscribeRules = subscribe_selection
|
||||
PostingRules = posting_selection
|
||||
Confirm = confirm_selection
|
||||
- WebUsers = webusers
|
||||
}
|
||||
|
||||
Processing {
|
||||
--- ezmlm-web/template/ui/normal.hdf.plusmodif 2016-04-20 06:55:42.000000000 -0400
|
||||
+++ ezmlm-web/template/ui/normal.hdf 2016-04-20 14:54:58.000000000 -0400
|
||||
@@ -47,7 +47,6 @@
|
||||
Listname = create_listname
|
||||
Listaddress = create_listaddress
|
||||
Listlanguage = lang_select
|
||||
- Webuser = webusers
|
||||
}
|
||||
|
||||
|
||||
@@ -58,7 +57,6 @@
|
||||
}
|
||||
|
||||
Deny {
|
||||
- Enabled = block_deny
|
||||
}
|
||||
|
||||
Moderators {
|
||||
@@ -85,7 +83,6 @@
|
||||
Main {
|
||||
Language = lang_select
|
||||
Owner = owner_address
|
||||
- WebUsers = webusers
|
||||
}
|
||||
|
||||
Archive {
|
||||
@@ -110,7 +107,6 @@
|
||||
|
||||
Posting {
|
||||
Moderate = posting_selection
|
||||
- UseDeny = block_deny
|
||||
Confirm = confirm_post
|
||||
SizeMax = msgsize_max
|
||||
SizeMin = msgsize_min
|
||||
--- ezmlm-web/template/ui/expert.hdf.plusmodif 2016-04-20 06:55:42.000000000 -0400
|
||||
+++ ezmlm-web/template/ui/expert.hdf 2016-04-20 14:53:16.000000000 -0400
|
||||
@@ -49,7 +49,6 @@
|
||||
Listaddress = create_listaddress
|
||||
Listlanguage = lang_select
|
||||
Mysql = mysql
|
||||
- Webuser = webusers
|
||||
}
|
||||
|
||||
|
||||
@@ -61,7 +60,6 @@
|
||||
}
|
||||
|
||||
Deny {
|
||||
- Enabled = block_deny
|
||||
}
|
||||
|
||||
Moderators {
|
||||
@@ -93,10 +91,8 @@
|
||||
Charset = charset_select
|
||||
Owner = owner_address
|
||||
MainList = mainlist
|
||||
- MailmanRequests = mailman_requests
|
||||
RemoveWarn = warn_remove
|
||||
SQL = mysql
|
||||
- WebUsers = webusers
|
||||
}
|
||||
|
||||
Archive {
|
||||
@@ -123,7 +119,6 @@
|
||||
|
||||
Posting {
|
||||
Rules = posting_selection
|
||||
- UseDeny = block_deny
|
||||
Confirm = confirm_post
|
||||
SizeMax = msgsize_max
|
||||
SizeMin = msgsize_min
|
||||
@@ -156,12 +151,10 @@
|
||||
ConfirmSub = confirm_sub
|
||||
ConfirmUnsub = confirm_unsub
|
||||
ModSubEnable = mod_sub
|
||||
- UseDeny = block_deny
|
||||
BlockOthers = block_others_post
|
||||
ConfirmPosting = confirm_post
|
||||
ModPosting = mod_post
|
||||
NonModPosting = block_nonmod_post
|
||||
- MailmanRequests = mailman_requests
|
||||
RemoveWarn = warn_remove
|
||||
DigestEnabled = digest_enabled
|
||||
DigestSettings = digest_settings
|
||||
@@ -190,7 +183,6 @@
|
||||
CopyLines = copylines
|
||||
Language = lang_select
|
||||
Charset = charset_select
|
||||
- WebUsers = webusers
|
||||
|
||||
}
|
||||
}
|
||||
--- ezmlm-web/template/config_options/digest_settings.cs.ori 2016-04-20 13:51:45.000000000 -0400
|
||||
+++ ezmlm-web/template/config_options/digest_settings.cs 2016-04-20 15:13:35.000000000 -0400
|
||||
@@ -1,3 +1,27 @@
|
||||
<!-- REMOVE --><?cs include:TemplateDir + '/macros.cs' ?>
|
||||
<!-- digest settings -->
|
||||
-<?cs call:setting("4") ?>
|
||||
+<input type="checkbox" name="digsize_state"
|
||||
+ value="selected" id="digsize_state" <?cs
|
||||
+ if:Data.List.digsize>0 ?>checked="checked"<?cs /if ?> />
|
||||
+ <label for="digsize"><?cs var:html_escape(Lang.Misc.digsize) ?></label>
|
||||
+ <ul><li><input type="text" name="digsize" size="10"
|
||||
+ style="text-align:right" value="<?cs
|
||||
+ alt:Data.List.digsize ?>64<?cs /alt ?>" /> <?cs
|
||||
+ var:html_escape(Lang.Misc.digsize.unit) ?></li></ul>
|
||||
+<input type="checkbox" name="digcount_state"
|
||||
+ value="selected" id="digcount_state" <?cs
|
||||
+ if:Data.List.digcount>0 ?>checked="checked"<?cs /if ?> />
|
||||
+ <label for="digcount"><?cs var:html_escape(Lang.Misc.digcount) ?></label>
|
||||
+ <ul><li><input type="text" name="digcount" size="10"
|
||||
+ style="text-align:right" value="<?cs
|
||||
+ alt:Data.List.digcount ?>30<?cs /alt ?>" /> <?cs
|
||||
+ var:html_escape(Lang.Misc.digcount.unit) ?></li></ul>
|
||||
+<input type="checkbox" name="digtime_state"
|
||||
+ value="selected" id="digtime_state" <?cs
|
||||
+ if:Data.List.digtime>0 ?>checked="checked"<?cs /if ?> />
|
||||
+ <label for="digtime"><?cs var:html_escape(Lang.Misc.digtime) ?></label>
|
||||
+ <ul><li><input type="text" name="digtime" size="10"
|
||||
+ style="text-align:right" value="<?cs
|
||||
+ alt:Data.List.digtime ?>48<?cs /alt ?>" /> <?cs
|
||||
+ var:html_escape(Lang.Misc.digtime.unit) ?></li></ul>
|
||||
+
|
112
ezmlm-web-3.3.1-smeintegration.patch
Normal file
112
ezmlm-web-3.3.1-smeintegration.patch
Normal file
@@ -0,0 +1,112 @@
|
||||
--- ezmlm-web-3.3.1/ezmlm-web.cgi.smeintegration 2013-10-20 15:32:06.000000000 -0400
|
||||
+++ ezmlm-web-3.3.1/ezmlm-web.cgi 2016-04-18 23:06:22.084000000 -0400
|
||||
@@ -402,39 +402,39 @@
|
||||
$pagename = 'list_select';
|
||||
$error = 'ParameterMissing';
|
||||
}
|
||||
-} elsif ($action eq 'list_delete_ask') {
|
||||
- # Confirm list removal
|
||||
- if ($list) {
|
||||
- $pagename = 'list_delete';
|
||||
- } else {
|
||||
- $pagename = 'list_select';
|
||||
- $error = 'ParameterMissing';
|
||||
- }
|
||||
-} elsif ($action eq 'list_delete_do') {
|
||||
- # User really wants to delete a list ...
|
||||
- if ($list) {
|
||||
- $success = 'DeleteList' if (&delete_list($list));
|
||||
- $list = undef;
|
||||
- } else {
|
||||
- $error = 'ParameterMissing';
|
||||
- }
|
||||
- $pagename = 'list_select';
|
||||
-} elsif ($action eq 'list_create_ask') {
|
||||
- # User wants to create a list ...
|
||||
- $pagename = 'list_create';
|
||||
-} elsif ($action eq 'list_create_do') {
|
||||
- # create the new list
|
||||
- # Message if list creation is unsuccessful ...
|
||||
- if (defined($q->param('new_list'))) {
|
||||
- if ($list = &create_list($q->param('new_list'))) {
|
||||
- $success = 'CreateList';
|
||||
- $pagename = 'subscribers';
|
||||
- } else {
|
||||
- $pagename = 'list_create';
|
||||
- }
|
||||
- } else {
|
||||
- $error = 'ParameterMissing';
|
||||
- }
|
||||
+#} elsif ($action eq 'list_delete_ask') {
|
||||
+# # Confirm list removal
|
||||
+# if ($list) {
|
||||
+# $pagename = 'list_delete';
|
||||
+# } else {
|
||||
+# $pagename = 'list_select';
|
||||
+# $error = 'ParameterMissing';
|
||||
+# }
|
||||
+#} elsif ($action eq 'list_delete_do') {
|
||||
+# # User really wants to delete a list ...
|
||||
+# if ($list) {
|
||||
+# $success = 'DeleteList' if (&delete_list($list));
|
||||
+# $list = undef;
|
||||
+# } else {
|
||||
+# $error = 'ParameterMissing';
|
||||
+# }
|
||||
+# $pagename = 'list_select';
|
||||
+#} elsif ($action eq 'list_create_ask') {
|
||||
+# # User wants to create a list ...
|
||||
+# $pagename = 'list_create';
|
||||
+#} elsif ($action eq 'list_create_do') {
|
||||
+# # create the new list
|
||||
+# # Message if list creation is unsuccessful ...
|
||||
+# if (defined($q->param('new_list'))) {
|
||||
+# if ($list = &create_list($q->param('new_list'))) {
|
||||
+# $success = 'CreateList';
|
||||
+# $pagename = 'subscribers';
|
||||
+# } else {
|
||||
+# $pagename = 'list_create';
|
||||
+# }
|
||||
+# } else {
|
||||
+# $error = 'ParameterMissing';
|
||||
+# }
|
||||
} elsif (($action eq 'config_ask') || ($action eq 'config_do')) {
|
||||
# User wants to see/change the configuration ...
|
||||
my $subset = $q->param('config_subset');
|
||||
@@ -1891,6 +1891,9 @@
|
||||
# ------------------------------------------------------------------------
|
||||
|
||||
sub create_list {
|
||||
+ # SME process
|
||||
+ warn "Please use SME Server panel to create new list";
|
||||
+ return undef;
|
||||
# Create a list according to user selections ...
|
||||
my $listname = shift;
|
||||
my ($qmail, $options, $i);
|
||||
--- ezmlm-web-3.3.1/template/nav.cs.smeintegration 2013-10-20 15:32:06.000000000 -0400
|
||||
+++ ezmlm-web-3.3.1/template/nav.cs 2016-04-18 23:29:05.790000000 -0400
|
||||
@@ -12,13 +12,13 @@
|
||||
<?cs /if ?>
|
||||
<?cs if:(subcount(Data.Lists) > 0) && (UI.Navigation.ListSelect == 1) ?>
|
||||
<li><a <?cs if:(Data.Action == "list_select") ?> class="nav_active"<?cs /if ?>
|
||||
- href="<?cs call:link("action","list_select","","","","") ?>"
|
||||
+ href="/server-manager/cgi-bin/mailinglists"
|
||||
title="<?cs var:html_escape(Lang.Menue.ListSelect) ?>"><?cs var:html_escape(Lang.Menue.ListSelect) ?></a>
|
||||
</li>
|
||||
<?cs /if ?>
|
||||
<?cs if:Data.Permissions.Create && (UI.Navigation.ListCreate == 1) ?>
|
||||
<li><a <?cs if:(Data.Action == "list_create") ?> class="nav_active"<?cs /if ?>
|
||||
- href="<?cs call:link("action","list_create_ask","","","","") ?>"
|
||||
+ href="/server-manager/cgi-bin/mailinglists?state=create"
|
||||
title="<?cs var:html_escape(Lang.Menue.ListCreate) ?>"><?cs var:html_escape(Lang.Menue.ListCreate) ?></a>
|
||||
</li>
|
||||
<?cs /if ?>
|
||||
@@ -181,7 +181,7 @@
|
||||
var:html_escape(Lang.Menue.SubscribeLog) ?></a></li><?cs /if ?>
|
||||
<?cs if:UI.Navigation.ListDelete == 1
|
||||
?><li><a <?cs if:(Data.Action == "list_delete") ?> class="nav_active"<?cs /if ?>
|
||||
- href="<?cs call:link("list",Data.List.Name,"action","list_delete_ask","","") ?>"
|
||||
+ href="/server-manager/cgi-bin/mailinglists?state=delete&list=<?cs var:html_escape(Data.List.Name) ?>"
|
||||
title="<?cs var:html_escape(Lang.Menue.ListDelete) ?>"><?cs
|
||||
var:html_escape(Lang.Menue.ListDelete) ?></a></li><?cs /if ?>
|
||||
|
BIN
ezmlm-web-3.3.1.tar.gz
(Stored with Git LFS)
Normal file
BIN
ezmlm-web-3.3.1.tar.gz
(Stored with Git LFS)
Normal file
Binary file not shown.
174
ezmlm-web.spec
Normal file
174
ezmlm-web.spec
Normal file
@@ -0,0 +1,174 @@
|
||||
# $Id: ezmlm-web.spec,v 1.3 2022/03/20 18:07:07 jpp Exp $
|
||||
# Authority: gordonr
|
||||
# Name: Gordon Rowell
|
||||
|
||||
Summary: Web interface to ezmlm configuration
|
||||
%define name ezmlm-web
|
||||
Name: %{name}
|
||||
%define version 3.3.1
|
||||
%define release 9
|
||||
Version: %{version}
|
||||
Release: %{release}%{?dist}
|
||||
License: BSD-style
|
||||
Group: Networking/Daemons
|
||||
URL: https://systemausfall.org/toolforge/ezmlm-web/
|
||||
Source: https://systemausfall.org/toolforge/ezmlm-web/download/ezmlm-web-3.3.1.tar.gz
|
||||
Patch0: ezmlm-web-3.3.1-smeintegration.patch
|
||||
Patch1: ezmlm-web-3.3.1-cgi.patch
|
||||
Patch2: ezmlm-web-3.3.1-modiffor722.patch
|
||||
Patch3: ezmlm-web-3.3.1-bz11913-deprecateddefined.patch
|
||||
BuildRoot: /var/tmp/%{name}-%{version}-%{release}-buildroot
|
||||
Requires: ezmlm-idx-std
|
||||
Requires: httpd
|
||||
Requires: qmail
|
||||
Requires: perl
|
||||
Requires: perl-Ezmlm
|
||||
Requires: perl-MailTools
|
||||
BuildRequires: gcc
|
||||
BuildRequires: e-smith-devtools
|
||||
BuildRequires: perl-Ezmlm
|
||||
BuildRequires: perl-devel
|
||||
BuildRequires: perl(ExtUtils::Manifest)
|
||||
|
||||
%description
|
||||
The need for ezmlm-web arose from the fact that we host many student
|
||||
societies on our system. These societies usually have a virtual host for web
|
||||
and email, which is administered by a computer rep from the society. These
|
||||
computer reps often have little or no knowledge of Unix and so we needed a
|
||||
user friendly system that would let the create and maintain mailing lists
|
||||
(such as members@foo.soc.ru.ac.za, committee@foo.soc.ru.ac.za, etc).
|
||||
|
||||
Since I am never keen to re-invent the wheel, I had a look at Steve Peterson's
|
||||
script (http://virtation.com/qmail/ml-sub), which allows people to subscribe
|
||||
and unsubscribe from mailing lists using a form->email gateway. This is fine
|
||||
for putting on a web page saying "here come and join our mailing list", but
|
||||
doesn't really allow you to administrate a list.
|
||||
|
||||
Security of mailing lists was a concern, as we really didn't want
|
||||
unauthorised people to be able to alter some users list. Ezmlm-web itself
|
||||
implements no security checks (apart from un-tainting input) and so relies
|
||||
on the web server to do this (re-inventing the wheel again :). We use an
|
||||
Apache webserver, so one can control access to a directory using a .htaccess
|
||||
file or in the access.conf file. ApacheWeek have a good article on doing
|
||||
this at http://www.apacheweek.com/features/userauth. I also give examples
|
||||
later in this document.
|
||||
|
||||
This version of ezmlm-web (2.0) is based to a large extent on previous
|
||||
versions that I have developed. It has however been totally re-written to
|
||||
make use of the Mail::Ezmlm perl module I wrote. At the same time it was
|
||||
updated and extended to include the new features of ezmlm-idx. It includes
|
||||
many new features that have been suggested to me over the last few months,
|
||||
and hopefully is now useful to a much larger group of people.
|
||||
|
||||
%changelog
|
||||
* Thu Oct 09 2025 BogusDateBot
|
||||
- Eliminated rpmbuild "bogus date" warnings due to inconsistent weekday,
|
||||
by assuming the date is correct and changing the weekday.
|
||||
|
||||
* Sun Mar 20 2022 Jean-Philippe Pialasse <tests@pialasse.com> 3.3.1-9.sme
|
||||
- remove deprecated defined array warning [SME: 11913]
|
||||
|
||||
* Wed Mar 16 2022 Jean-Philippe Pialasse <tests@pialasse.com> 3.3.1-8.sme
|
||||
- remove /usr/lib64 from filelist, this conflict with base rpm filesystem
|
||||
|
||||
* Fri Apr 22 2016 Jean-Philippe Pialasse <tests@pialasse.com> 3.3.1-7.sme
|
||||
- fix to build against SME 9 centos 6 [SME: 8439]
|
||||
|
||||
* Thu Apr 21 2016 Jean-Philippe Pialasse <tests@pialasse.com> 3.3.1-5.sme
|
||||
- remove non available options (always on) in ezmlm-idx 7.2.2 [SME: 9470]
|
||||
- remove setting user access to web, as unecessary in SME
|
||||
- patch ezmlm-web-3.3.1-modiffor722.patch
|
||||
|
||||
* Wed Apr 20 2016 Jean-Philippe Pialasse <tests@pialasse.com> 3.3.1-4.sme
|
||||
- small fix to save some config with 7.2.2 idx [SME: 9470]
|
||||
|
||||
* Mon Apr 18 2016 Jean-Philippe Pialasse <tests@pialasse.com> 3.3.1-1.sme
|
||||
- update to 3.3.1 [SME: 7588]
|
||||
|
||||
* Sun Apr 29 2007 Shad L. Lords <slords@mail.com>
|
||||
- Clean up spec so package can be built by koji/plague
|
||||
|
||||
* Thu Dec 07 2006 Shad L. Lords <slords@mail.com>
|
||||
- Update to new release naming. No functional changes.
|
||||
- Make Packager generic
|
||||
|
||||
* Tue Oct 25 2005 Gordon Rowell <gordonr@gormand.com.au> 2.3-01sme02
|
||||
- Retarget previous patches against 2.3
|
||||
- Change ezmlm-cgi location
|
||||
- Access local help icon
|
||||
- Hide delete button if -c provided
|
||||
|
||||
* Tue Oct 25 2005 Gordon Rowell <gordonr@gormand.com.au> 2.3-01sme01
|
||||
- Update to 2.3 - ezmlm-web has moved to a new home
|
||||
|
||||
* Wed Nov 28 2001 Gordon Rowell <gordonr@e-smith.com>
|
||||
- [2.1-04]
|
||||
- Create ezmlm user (uid/gid 80) in %pre if it doesn't already exist
|
||||
|
||||
* Wed Oct 24 2001 Gordon Rowell <gordonr@e-smith.com>
|
||||
- [2.1-03]
|
||||
- Allow the web server to execute the CGI script
|
||||
|
||||
* Wed Oct 24 2001 Gordon Rowell <gordonr@e-smith.com>
|
||||
- [2.1-02]
|
||||
- Remove [Delete] button if $opt_c is set
|
||||
- $opt_c "no list creation" now also means "no list deletion"
|
||||
|
||||
* Wed Oct 24 2001 Gordon Rowell <gordonr@e-smith.com>
|
||||
- [2.1-01]
|
||||
- Initial packaging
|
||||
- Modified ezmlm-web.cgi path to /usr/bin
|
||||
- Modified $HELP_ICON_URL for RedHat Apache patch
|
||||
|
||||
%prep
|
||||
%setup -n %{name}-%{version}
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
%patch3 -p1
|
||||
|
||||
%build
|
||||
mkdir build
|
||||
perl Makefile.PL DESTDIR=build PREFIX=/usr
|
||||
# REALINSTALLBIN=/usr/bin/ezmlm-web
|
||||
make
|
||||
make install
|
||||
|
||||
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
(cd build ; find . -depth -print | cpio -dump $RPM_BUILD_ROOT)
|
||||
/sbin/e-smith/genfilelist $RPM_BUILD_ROOT \
|
||||
| sed -e '/ezmlm-web.cgi.1p/d' \
|
||||
| sed -e '/lib64$/d' \
|
||||
| sed -e '/lib$/d' \
|
||||
> %{name}-%{version}-%{release}-filelist
|
||||
#| sed -e '/ezmlm-web.cgi.1p/d' \
|
||||
#> %{name}-%{version}-%{release}-filelist
|
||||
|
||||
# creating the cgi index to the suid wrapper
|
||||
cp -a $RPM_BUILD_ROOT/usr/bin/ezmlm-web.wrapper $RPM_BUILD_ROOT/usr/local/share/ezmlm-web/www-data/index.cgi
|
||||
|
||||
%clean
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
%pre
|
||||
if [ -d /home/e-smith ]
|
||||
then
|
||||
EZMLMHOME=/home/e-smith/files/ezmlm
|
||||
else
|
||||
EZMLMHOME=/home/ezmlm
|
||||
fi
|
||||
grep '^ezmlm:' /etc/passwd > /dev/null || \
|
||||
/usr/sbin/useradd -c "ezmlm" -u 80 -m -d $EZMLMHOME -s /bin/false ezmlm
|
||||
|
||||
%post
|
||||
%preun
|
||||
%postun
|
||||
|
||||
%files -f %{name}-%{version}-%{release}-filelist
|
||||
%defattr(-,root,root)
|
||||
%attr(104755,ezmlm,ezmlm) /usr/local/share/ezmlm-web/www-data/index.cgi
|
||||
%doc /usr/share/man/man1/ezmlm-web.cgi.1p.gz
|
Reference in New Issue
Block a user