packages: mailman/mailman.spec, mailman/mailman.conf, mailman/mailman-httpa...
glen
glen at pld-linux.org
Mon Jun 8 18:13:47 CEST 2009
Author: glen Date: Mon Jun 8 16:13:47 2009 GMT
Module: packages Tag: HEAD
---- Log message:
- add possibility to authorize to admin via http auth
---- Files affected:
packages/mailman:
mailman.spec (1.153 -> 1.154) , mailman.conf (1.7 -> 1.8) , mailman-httpauth.patch (NONE -> 1.1) (NEW)
---- Diffs:
================================================================
Index: packages/mailman/mailman.spec
diff -u packages/mailman/mailman.spec:1.153 packages/mailman/mailman.spec:1.154
--- packages/mailman/mailman.spec:1.153 Fri Mar 6 14:15:33 2009
+++ packages/mailman/mailman.spec Mon Jun 8 18:13:41 2009
@@ -35,6 +35,7 @@
Patch10: %{name}-python2.6.patch
Patch11: %{name}-python2.6-exceptions-quickfix.patch
Patch12: %{name}-daemonize-fds.patch
+Patch13: %{name}-httpauth.patch
URL: http://www.list.org/
BuildRequires: autoconf
BuildRequires: automake
@@ -177,6 +178,7 @@
%patch10 -p1
%patch11 -p1
%patch12 -p1
+%patch13 -p1
# Conflicts with python built-in email package
sed -i -e 's,EMAILPKG=,#EMAILPKG=,g' misc/Makefile.in
@@ -231,13 +233,9 @@
install cron/crontab.in $RPM_BUILD_ROOT/etc/cron.d/%{name}
-mv $RPM_BUILD_ROOT%{_libdir}/%{name}/Mailman/mm_cfg.py $RPM_BUILD_ROOT%{_sysconfdir}
-ln -s %{_sysconfdir}/mm_cfg.py $RPM_BUILD_ROOT%{_libdir}/%{name}/Mailman/mm_cfg.py
-
ln -s %{_sysconfdir}/sitelist.cfg $RPM_BUILD_ROOT%{_var}/lib/mailman/data/sitelist.cfg
cat >> $RPM_BUILD_ROOT%{_sysconfdir}/mm_cfg.py << 'EOF'
-#MTA = 'Postfix'
DEFAULT_EMAIL_HOST = 'YOUR.HOST.NAME.HERE'
DEFAULT_URL_HOST = 'YOUR.HOST.NAME.HERE'
DEFAULT_HOST_NAME = 'YOUR.HOST.NAME.HERE'
@@ -246,7 +244,15 @@
MAILMAN_GROUP = '%{name}'
MAILMAN_USER = '%{name}'
VIRTUAL_HOST_OVERVIEW = Off
-#DEFAULT_SERVER_LANGUAGE = 'pl'
+
+#MTA = 'Postfix'
+#POSTFIX_STYLE_VIRTUAL_DOMAINS = []
+
+#DEFAULT_SERVER_LANGUAGE = 'pl'
+
+# If value is True, site administrator is trusted from REMOTE_USER CGI variable
+# Use this to if you want to use password authentication for site admin.
+USE_HTTP_AUTH = False
# For available options and their descriptions see:
# %{_libdir}/%{name}/Mailman/Defaults.py
@@ -262,12 +268,18 @@
# regenerate pyc files with proper paths
find $RPM_BUILD_ROOT -name '*.pyc' | xargs rm -f
%py_comp $RPM_BUILD_ROOT
+# save mm_cfg.py from py_postclean
+mv $RPM_BUILD_ROOT%{_libdir}/%{name}/Mailman/mm_cfg.{py,pyX}
%py_postclean %{_libdir}/mailman
-rm -f $RPM_BUILD_ROOT%{_sysconfdir}/mm_cfg.pyc
+# must do this after py_postclean
+# should we also symlink .pyc? in case commands are ran as root python would create .pyc file
+mv $RPM_BUILD_ROOT%{_libdir}/%{name}/Mailman/mm_cfg.pyX $RPM_BUILD_ROOT%{_sysconfdir}/mm_cfg.py
+ln -s %{_sysconfdir}/mm_cfg.py $RPM_BUILD_ROOT%{_libdir}/%{name}/Mailman/mm_cfg.py
+rm $RPM_BUILD_ROOT%{_libdir}/%{name}/Mailman/mm_cfg.py.dist
+
rm -f $RPM_BUILD_ROOT%{_mandir}/README-mailman-man-pages
rm -f $RPM_BUILD_ROOT%{_mandir}/diff.arch.8
-
rm -f $RPM_BUILD_ROOT%{_libdir}/mailman/messages/*/LC_MESSAGES/*.po
%clean
@@ -408,11 +420,13 @@
%files
%defattr(644,root,root,755)
%doc BUGS FAQ NEWS README README.CONTRIB README.NETSCAPE README.USERAGENT TODO UPGRADING INSTALL
+%doc Mailman/mm_cfg.py.dist
%{_mandir}/man?/*
%attr(2775,root,mailman) %dir %{_sysconfdir}
%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf
%attr(644,root,mailman) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mm_cfg.py
+%attr(664,root,mailman) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mm_cfg.pyc
%attr(644,root,mailman) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sitelist.cfg
%ghost %attr(660,root,mailman) %{_sysconfdir}/aliases
%ghost %attr(660,root,mailman) %{_sysconfdir}/aliases.db
@@ -435,7 +449,22 @@
%dir %{_libdir}/%{name}/pythonlib
%dir %{_libdir}/%{name}/messages
%dir %{_libdir}/%{name}/tests
-%{_libdir}/%{name}/Mailman
+%dir %{_libdir}/%{name}/Mailman
+
+# move to %{py_sitedir}?
+%{_libdir}/%{name}/Mailman/[A-Z_hiv]*.py[co]
+%{_libdir}/%{name}/Mailman/mm_cfg.py
+%ghost %{_libdir}/%{name}/Mailman/mm_cfg.pyc
+%{_libdir}/%{name}/Mailman/Archiver
+%{_libdir}/%{name}/Mailman/Bouncers
+%{_libdir}/%{name}/Mailman/Cgi
+%{_libdir}/%{name}/Mailman/Commands
+%{_libdir}/%{name}/Mailman/Gui
+%{_libdir}/%{name}/Mailman/Handlers
+%{_libdir}/%{name}/Mailman/Logging
+%{_libdir}/%{name}/Mailman/MTA
+%{_libdir}/%{name}/Mailman/Queue
+
%{_libdir}/%{name}/bin/p*
%attr(2755,root,mailman) %{_libdir}/%{name}/bin/[!p]*
%attr(2755,root,mailman) %{_libdir}/%{name}/cgi-bin/*
@@ -482,6 +511,9 @@
All persons listed below can be reached at <cvs_login>@pld-linux.org
$Log$
+Revision 1.154 2009/06/08 16:13:41 glen
+- add possibility to authorize to admin via http auth
+
Revision 1.153 2009/03/06 13:15:33 glen
- release 5
================================================================
Index: packages/mailman/mailman.conf
diff -u packages/mailman/mailman.conf:1.7 packages/mailman/mailman.conf:1.8
--- packages/mailman/mailman.conf:1.7 Thu Sep 20 15:39:20 2007
+++ packages/mailman/mailman.conf Mon Jun 8 18:13:42 2009
@@ -1,27 +1,48 @@
-Alias /mailman/pipermail/ /var/lib/mailman/archives/public/
+Alias /mailman/pipermail/ /var/lib/mailman/archives/public/
<Directory /var/lib/mailman/archives/public>
Options Indexes MultiViews FollowSymLinks
AllowOverride None
- Order allow,deny
Allow from all
</Directory>
-Alias /mailman/icons/ /usr/lib/mailman/icons/
+Alias /mailman/icons/ /usr/lib/mailman/icons/
<Directory /usr/lib/mailman/icons/>
AllowOverride None
- Order allow,deny
Allow from all
</Directory>
-ScriptAlias /mailman/ /usr/lib/mailman/cgi-bin/
+ScriptAlias /mailman/ /usr/lib/mailman/cgi-bin/
<Directory /usr/lib/mailman/cgi-bin/>
Options ExecCGI
AllowOverride None
AddHandler cgi-script .cgi
- Order allow,deny
Allow from all
+
+# Enable this section to use HTTP auth instead of adm.pw
+# # Authorize as admin via HTTP auth
+# <Files admin>
+# # File based Authz
+# AuthUserFile /etc/webapps/mailman/htpasswd
+#
+# # LDAP based Authz. Apache 1.3
+# <IfModule mod_auth_ldap.c>
+# AuthLDAPEnabled on
+# AuthLDAPURL ldap://localhost/ou=People,dc=example,dc=org?uid?sub?(objectClass=*)
+# </IfModule>
+#
+# # LDAP based Authz. Apache 2.x
+# <IfModule authnz_ldap_module>
+# AuthLDAPURL ldap://localhost/ou=People,dc=example,dc=org?uid?one
+# AuthzLDAPAuthoritative off
+# AuthBasicProvider ldap
+# </IfModule>
+#
+# AuthType Basic
+# AuthName "MailMan"
+# Require valid-user
+# </Files>
</Directory>
# Uncomment the following line, replacing www.example.com with your server's
================================================================
Index: packages/mailman/mailman-httpauth.patch
diff -u /dev/null packages/mailman/mailman-httpauth.patch:1.1
--- /dev/null Mon Jun 8 18:13:47 2009
+++ packages/mailman/mailman-httpauth.patch Mon Jun 8 18:13:42 2009
@@ -0,0 +1,29 @@
+Maybe for security have USE_HTTP_AUTH = ['user1', 'user2']
+
+--- mailman-2.1.11/Mailman/Defaults.py.in~ 2009-06-08 16:45:29.000000000 +0300
++++ mailman-2.1.11/Mailman/Defaults.py.in 2009-06-08 16:45:31.967055253 +0300
+@@ -1319,6 +1319,10 @@
+ AuthListModerator = 4 # List Moderator (can only handle held requests)
+ AuthSiteAdmin = 5 # Site Administrator (total control over everything)
+
++# If value is True, site administrator is trusted from REMOTE_USER CGI variable
++# Use this to if you want to use password authentication for site admin.
++USE_HTTP_AUTH = False
++
+ # Useful directories
+ LIST_DATA_DIR = os.path.join(VAR_PREFIX, 'lists')
+ LOG_DIR = '@LOG_DIR@'
+--- mailman-2.1.11/Mailman/Utils.py~ 2009-06-08 16:45:22.000000000 +0300
++++ mailman-2.1.11/Mailman/Utils.py 2009-06-08 16:45:25.094129761 +0300
+@@ -411,6 +411,11 @@
+
+
+ def check_global_password(response, siteadmin=True):
++ if mm_cfg.USE_HTTP_AUTH:
++ if os.getenv('AUTH_TYPE') != None and os.getenv('REMOTE_USER') != None:
++ return True
++ # Fallback to global password auth
++
+ challenge = get_global_password(siteadmin)
+ if challenge is None:
+ return None
================================================================
---- CVS-web:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mailman/mailman.spec?r1=1.153&r2=1.154&f=u
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mailman/mailman.conf?r1=1.7&r2=1.8&f=u
More information about the pld-cvs-commit
mailing list