/tags/1.3.2-dfsg1-2/debian/patches/template_sdk.patch |
---|
0,0 → 1,158 |
--- a/templates/src/Makefile |
+++ b/templates/src/Makefile |
@@ -11,7 +11,7 @@ LDFLAGS = $(BASELDFLAGS) |
LIB= ../../lib/lib_nossl.a $(BASE_LIBS) |
-all: template_expand template_compile |
+all: template_expand template_compile template-set.make |
template_expand: template_expand_main.o log.o empty.o $(LIB) |
$(CC) $(LDFLAGS) -o template_expand log.o empty.o template_expand_main.o $(LIB) |
@@ -19,10 +19,28 @@ template_expand: template_expand_main.o |
template_compile: template_compile_main.o log.o empty.o $(LIB) |
$(CC) $(LDFLAGS) -o template_compile log.o empty.o template_compile_main.o $(LIB) |
+template-set.make: template-set.make.in |
+ find_templates () { sed -rn 's/.*template_expand\("([^"]*)".*/\1/p' "$$@" | sort -u; };\ |
+ format_variable () { (echo $$1 '='; shift; echo -n ' '$$@) | fmt -c | sed '$$!s/$$/ \\/'; };\ |
+ (echo include $(PREFIX)/config.make; echo;\ |
+ format_variable TEMPLATES `find_templates ../../cmd/cmd_*`; echo;\ |
+ format_variable TEMPLATES_FRONTEND login `find_templates ../../servers/prayer*`; echo;\ |
+ cat template-set.make.in) > template-set.make |
+ |
%.o: %.c Makefile |
$(CC) $(CFLAGS) -I../../lib -c $< |
install: |
+ $(INSTALL) -o $(RO_USER) -g $(RO_GROUP) -m $(PUBLIC_DIR) \ |
+ -d $(BROOT)$(LIB_PREFIX) $(BROOT)$(PREFIX) $(BROOT)/usr/include/prayer |
+ $(INSTALL) -o $(RO_USER) -g $(RO_GROUP) -m $(PUBLIC_EXEC) \ |
+ template_compile template_expand build_index.pl makedeps.pl ${BROOT}${LIB_PREFIX} |
+ $(INSTALL) -o $(RO_USER) -g $(RO_GROUP) -m $(PUBLIC_FILE) \ |
+ ../../lib/*.h ${BROOT}/usr/include/prayer |
+ $(INSTALL) -o $(RO_USER) -g $(RO_GROUP) -m $(PUBLIC_FILE) \ |
+ template-set.make ${BROOT}$(PREFIX) |
+ $(INSTALL) -o $(RO_USER) -g $(RO_GROUP) -m $(PUBLIC_FILE) \ |
+ ../../Config ${BROOT}$(PREFIX)/config.make |
clean: |
rm -f template_expand template_compile *.o *~ \#*\# |
--- /dev/null |
+++ b/templates/src/makedeps.pl |
@@ -0,0 +1,45 @@ |
+#!/usr/bin/perl |
+# |
+# Generate proper list of dependancies between templates |
+ |
+my %index = (); |
+my %uses = (); |
+ |
+sub scan { |
+ my ($file) = @_; |
+ |
+ if (!exists $uses{$file}) { |
+ grep { |
+ $_ ne '' and open(FILE, '<', "$_/${file}.t") |
+ } '.', split(/ :/, $ENV{'VPATH'} || '') |
+ or die "failed to open ${file}: $!\n"; |
+ while (<FILE>) { |
+ $uses{$file}{$1} = 1 if /^%\s+CALL ([\w-_]+)/; |
+ } |
+ close(FILE); |
+ |
+ foreach (keys %{$uses{$file}}) { |
+ $uses{$file}{$_} = 1 foreach keys %{scan($_)}; |
+ } |
+ $uses{$file}{$file} = 1; |
+ $index{$file} = 1; |
+ } |
+ return $uses{$file} |
+} |
+ |
+my $suffix = ''; |
+if ($ARGV[0] eq '--frontend') { |
+ shift; |
+ $suffix = '_frontend'; |
+} |
+my $name = shift; |
+ |
+$, = ' '; $\ = "\n"; |
+foreach my $i (@ARGV) { |
+ $i =~ s/([\w-_]+)\.t/$1/; |
+ print "$i.html:", map {"$_.t"} sort keys %{scan($i)}; |
+} |
+ |
+my @all = sort keys %index; |
+print "_template_index$suffix.c:", map {"$_.t"} @all; |
+print "$name$suffix.so:", "_template_index$suffix.o", map {"$_.o"} @all; |
--- /dev/null |
+++ b/templates/src/template-set.make.in |
@@ -0,0 +1,67 @@ |
+ifndef NAME |
+NAME := $(notdir $(CURDIR)) |
+endif |
+ |
+CPPFLAGS = -I/usr/include/prayer |
+CFLAGS += -fPIC |
+LDFLAGS_TEMPLATELIB = -shared -fPIC \ |
+ -Wl,--defsym=template_map=template_map_$(NAME) \ |
+ -Wl,--defsym=template_map_count=template_map_$(NAME)_count |
+ |
+EXPAND = $(LIB_PREFIX)/template_expand |
+COMPILE = $(LIB_PREFIX)/template_compile |
+MKINDEX = $(LIB_PREFIX)/build_index.pl |
+MKDEPS = $(LIB_PREFIX)/makedeps.pl |
+ |
+SESSION_LIB = $(NAME)$(SHLIBEXT) |
+FRONTEND_LIB = $(NAME)_frontend$(SHLIBEXT) |
+TEMPLATE_LIBS ?= $(SESSION_LIB) $(FRONTEND_LIB) |
+TARGETS ?= $(TEMPLATE_LIBS) |
+ |
+VARS=$(filter-out common.vars,$(wildcard *.vars)) |
+HTML=$(VARS:.vars=.html) |
+ |
+all: $(TARGETS) |
+ |
+$(TEMPLATE_LIBS): |
+ $(CC) $(LDFLAGS) $(LDFLAGS_TEMPLATELIB) -o $@ $^ |
+ |
+_template_index.c _template_index_frontend.c: |
+ $(MKINDEX) $(NAME) $(^F) > $@ |
+ |
+%.c: %.t |
+ $(COMPILE) $(NAME) $@ $(basename $<) |
+ |
+install-sources: |
+ $(INSTALL) -o $(RO_USER) -g $(RO_GROUP) -m $(PUBLIC_DIR) \ |
+ -d $(DESTDIR)$(PREFIX)/templates/$(NAME) |
+ $(INSTALL) -o $(RO_USER) -g $(RO_GROUP) -m $(PUBLIC_FILE) \ |
+ *.t *.vars $(DESTDIR)$(PREFIX)/templates/$(NAME) |
+ |
+install-libs: $(TEMPLATE_LIBS) |
+ $(INSTALL) -o $(RO_USER) -g $(RO_GROUP) -m $(PUBLIC_DIR) \ |
+ -d $(DESTDIR)$(LIB_PREFIX)/templates |
+ $(INSTALL) -o $(RO_USER) -g $(RO_GROUP) -m $(PUBLIC_FILE) \ |
+ $(TEMPLATE_LIBS) $(DESTDIR)$(LIB_PREFIX)/templates/ |
+ |
+clean: |
+ rm -f $(TARGETS) *.html *.o *.c |
+distclean: clean |
+ rm -f *.d |
+ |
+test: $(HTML) |
+ |
+%.html: %.t %.vars common.vars |
+ $(EXPAND) $@ $* common.vars $*.vars |
+ |
+%_frontend.d: FRONTEND_FLAG = --frontend |
+%_frontend.d: TEMPLATES = $(TEMPLATES_FRONTEND) |
+export VPATH |
+$(TEMPLATE_LIBS:$(SHLIBEXT)=.d): |
+ $(MKDEPS) $(FRONTEND_FLAG) $(NAME) $(TEMPLATES) > $@ |
+ sed -ri 's/^(_template_index[^:]*)/\1 $@/' $@ |
+ |
+include $(TEMPLATE_LIBS:$(SHLIBEXT)=.d) |
+ |
+.PHONY: all install-sources install-libs clean distclean test |
+.DELETE_ON_ERROR: |
/tags/1.3.2-dfsg1-2/debian/patches/dlopen_templates.patch |
---|
0,0 → 1,226 |
Experimental support for dynamically loading templates. Low-level template handling is unchanged; |
main programs call dlopen_templates() at appropriate times. If template set has changed, the old |
one is unloaded first. |
--- /dev/null |
+++ b/shared/dlopen_templates.c |
@@ -0,0 +1,34 @@ |
+#include <dlfcn.h> |
+#include "shared.h" |
+ |
+struct template_map_index template_map_index[] = { |
+ {NIL, NIL, NIL}, |
+ {NIL, NIL, NIL} |
+}; |
+ |
+struct template_map_index * |
+dlopen_templates(const char *set, const char *suffix) |
+{ |
+ struct template_map_index *tmi = &template_map_index[0]; |
+ static void *handle = 0; |
+ |
+ if (!handle || strcmp(tmi->name, set)) { |
+ char *filename = pool_printf(NIL, "/usr/lib/prayer/templates/%s%s.so", |
+ set, suffix); |
+ |
+ if (handle) { |
+ dlclose(handle); |
+ free(tmi->name); |
+ } |
+ tmi->name = pool_strdup(NIL, set); |
+ if (!(handle = dlopen(filename, RTLD_NOW)) |
+ || !(tmi->template_map = dlsym(handle, "template_map")) |
+ || !(tmi->count = dlsym(handle, "template_map_count"))) { |
+ log_fatal("Failed to load template library: %s", |
+ dlerror()); |
+ } |
+ log_debug("Loaded library %s with %d templates", filename, *tmi->count); |
+ free(filename); |
+ } |
+ return tmi; |
+} |
--- /dev/null |
+++ b/shared/dlopen_templates.h |
@@ -0,0 +1 @@ |
+struct template_map_index *dlopen_templates(const char *set, const char *suffix); |
--- a/templates/cam/Makefile |
+++ b/templates/cam/Makefile |
@@ -6,12 +6,16 @@ else |
include ../../Config |
endif |
-CFLAGS = $(BASECFLAGS) |
-LDFLAGS = $(BASELDFLAGS) |
+CFLAGS = $(BASECFLAGS) -fPIC |
+LDFLAGS = $(BASELDFLAGS) -fPIC |
+LDFLAGS_TEMPLATELIB = \ |
+ -Wl,--defsym=template_map=template_map_$(TYPE) \ |
+ -Wl,--defsym=template_map_count=template_map_$(TYPE)_count |
+LDFLAGS += $(LDFLAGS_TEMPLATELIB) |
TYPE=cam |
-TARGETS=templates.a templates_frontend.a |
+TARGETS=templates.a templates_frontend.a $(TYPE).so $(TYPE)_frontend.so |
T_FILES_FRONTEND=login.t login_hermes.t \ |
frontend_login_error.t frontend_security.t frontend_session.t \ |
@@ -111,6 +115,12 @@ templates.a: $(O_FILES) |
rm -f templates.a |
ar q templates.a $(O_FILES) |
+$(TYPE)_frontend.so: $(O_FILES_FRONTEND) |
+ $(CC) $(LDFLAGS) -shared -o $@ $(O_FILES_FRONTEND) |
+ |
+$(TYPE).so: $(O_FILES) |
+ $(CC) $(LDFLAGS) -shared -o $@ $(O_FILES) |
+ |
%.o: %.c Makefile |
$(CC) $(CFLAGS) -I../../lib -c $< |
@@ -129,6 +139,10 @@ install: |
cp *.t $(BROOT)$(PREFIX)/templates/$(TYPE) |
cp *.vars $(BROOT)$(PREFIX)/templates/$(TYPE) |
+ $(INSTALL) -o $(RO_USER) -g $(RO_GROUP) -m $(PUBLIC_DIR) -d \ |
+ $(BROOT)$(LIB_PREFIX)/templates |
+ cp *.so $(BROOT)$(LIB_PREFIX)/templates/ |
+ |
clean: |
rm -f $(TARGETS) *.html *.o *.c \#*\# *~ |
--- a/templates/old/Makefile |
+++ b/templates/old/Makefile |
@@ -6,12 +6,16 @@ else |
include ../../Config |
endif |
-CFLAGS = $(BASECFLAGS) |
-LDFLAGS = $(BASELDFLAGS) |
+CFLAGS = $(BASECFLAGS) -fPIC |
+LDFLAGS = $(BASELDFLAGS) -fPIC |
+LDFLAGS_TEMPLATELIB = \ |
+ -Wl,--defsym=template_map=template_map_$(TYPE) \ |
+ -Wl,--defsym=template_map_count=template_map_$(TYPE)_count |
+LDFLAGS += $(LDFLAGS_TEMPLATELIB) |
TYPE=old |
-TARGETS=templates.a templates_frontend.a |
+TARGETS=templates.a templates_frontend.a $(TYPE).so $(TYPE)_frontend.so |
T_FILES_FRONTEND=login.t \ |
frontend_login_error.t frontend_security.t frontend_session.t \ |
@@ -110,6 +114,12 @@ templates.a: $(O_FILES) |
rm -f templates.a |
ar q templates.a $(O_FILES) |
+$(TYPE)_frontend.so: $(O_FILES_FRONTEND) |
+ $(CC) $(LDFLAGS) -shared -o $@ $(O_FILES_FRONTEND) |
+ |
+$(TYPE).so: $(O_FILES) |
+ $(CC) $(LDFLAGS) -shared -o $@ $(O_FILES) |
+ |
%.o: %.c Makefile |
$(CC) $(CFLAGS) -I../../lib -c $< |
@@ -128,6 +138,10 @@ install: |
cp *.t $(BROOT)$(PREFIX)/templates/$(TYPE) |
cp *.vars $(BROOT)$(PREFIX)/templates/$(TYPE) |
+ $(INSTALL) -o $(RO_USER) -g $(RO_GROUP) -m $(PUBLIC_DIR) -d \ |
+ $(BROOT)$(LIB_PREFIX)/templates |
+ cp *.so $(BROOT)$(LIB_PREFIX)/templates/ |
+ |
clean: |
rm -f $(TARGETS) *.html *.o *.c \#*\# *~ |
--- a/servers/prayer_chroot.c |
+++ b/servers/prayer_chroot.c |
@@ -255,6 +255,8 @@ int main(int argc, char *argv[]) |
if (list_length(prayer->http_port_list) == 0L) |
prayer_fatal(prayer, "No HTTP or HTTPS ports active"); |
+ dlopen_templates(config->template_set, "_frontend"); |
+ |
if (config->prayer_background && !want_foreground) { |
pid_t pid = fork(); |
--- a/shared/Makefile |
+++ b/shared/Makefile |
@@ -33,7 +33,7 @@ MYCFLAGS = $(BASECFLAGS) |
SHARED_OBJS = \ |
config.o gzip.o html_common.o log.o \ |
- request.o response.o user_agent.o |
+ request.o response.o user_agent.o dlopen_templates.o |
all: $(SHARED_OBJS) |
--- a/servers/prayer_main.c |
+++ b/servers/prayer_main.c |
@@ -290,6 +290,8 @@ int main(int argc, char *argv[]) |
prayer_log_open(prayer); |
+ dlopen_templates(config->template_set, "_frontend"); |
+ |
if (config->limit_vm) |
os_limit_vm(config->limit_vm); |
--- a/shared/shared.h |
+++ b/shared/shared.h |
@@ -40,3 +40,4 @@ extern int errno; /* just |
#include "setproctitle.h" |
#include "mymutex.h" |
#include "log.h" |
+#include "dlopen_templates.h" |
--- a/servers/Makefile |
+++ b/servers/Makefile |
@@ -73,7 +73,7 @@ ifeq ($(strip $(CCLIENT_KERB_ENABLE)), t |
endif |
MYCFLAGS = $(BASECFLAGS) $(SERVER_SSL_INCLUDE) $(CCLIENT_INCLUDE) |
-MYLDFLAGS = $(BASELDFLAGS) |
+MYLDFLAGS = $(BASELDFLAGS) -ldl |
TEMPLATES= ../templates/index.o \ |
../templates/old/templates.a \ |
@@ -84,15 +84,13 @@ TEMPLATES_FRONTEND= ../templates/index.o |
../templates/cam/templates_frontend.a |
PRAYER_OBJS= prayer.o prayer_login.o prayer_server.o portlist.o \ |
- ../shared/shared.a $(LIB) $(TEMPLATES_FRONTEND) |
+ ../shared/shared.a $(LIB) |
SESSION_OBJS= \ |
session_config.o session_exchange.o session_unix.o session_server.o \ |
session_main.o portlist.o ../cmd/cmd.a ../session/session.a \ |
../shared/shared.a ../lib/lib_nossl.a |
-SESSION_OBJS += $(TEMPLATES) |
- |
######################################################################### |
all: $(BIN) |
--- a/Makefile |
+++ b/Makefile |
@@ -28,7 +28,7 @@ install-cert: |
install: |
$(MAKE) -C files install |
$(MAKE) -C man install |
-# $(MAKE) -C templates install |
+ $(MAKE) -C templates install |
$(MAKE) -C servers install |
$(MAKE) -C utils install |
ifeq ($(strip $(ACCOUNTD_ENABLE)), true) |
--- a/servers/session_exchange.c |
+++ b/servers/session_exchange.c |
@@ -212,6 +212,8 @@ BOOL session_exchange(struct session * s |
else |
template_set = config->template_set; /* Safe default */ |
+ dlopen_templates(template_set, ""); |
+ |
/* Set up template_vars ready for dispatch */ |
session->template_vals = tvals |
= template_vals_create(request->pool, |
/tags/1.3.2-dfsg1-2/debian/patches/series |
---|
0,0 → 1,8 |
makefile_install_config.patch |
templates_fallback_to_compiled.patch |
kfreebsd.patch |
clean_completely.patch |
dlopen_templates.patch |
unbrand_cam_template.patch |
manpage_error.patch |
template_sdk.patch |
/tags/1.3.2-dfsg1-2/debian/patches/manpage_error.patch |
---|
0,0 → 1,11 |
--- a/man/prayer-session.8 |
+++ b/man/prayer-session.8 |
@@ -72,7 +72,7 @@ Location of standard templates. The temp |
.Nm |
for performance reasons, so the template files are actually not |
used, but they are available for customization. |
-. |
+.El |
.Sh SEE ALSO |
. |
.Xr prayer 8 , |
/tags/1.3.2-dfsg1-2/debian/patches/unbrand_cam_template.patch |
---|
0,0 → 1,38 |
--- a/templates/cam/compose_toolbar.t |
+++ b/templates/cam/compose_toolbar.t |
@@ -2,8 +2,6 @@ |
<div id="skip"> <a href="#skip-content" accesskey="2">Skip to content</a></div> |
<div id="header"> |
<div id="branding"> |
- <a href="http://www.cam.ac.uk/" accesskey="1"> |
- <img src="/icons/ucs-id-small.jpg" alt="" class="logo" /></a> |
</div> |
<div id="change-to"> |
<div class="change"> |
--- a/templates/cam/login.t |
+++ b/templates/cam/login.t |
@@ -42,11 +42,6 @@ table#login td input {margin:0 0 0.5em 0 |
href="#skip-content" accesskey="2">Skip to content</a> </div> |
<div id="header"> |
<div id="branding"> |
-<a href="http://www.cam.ac.uk/" accesskey="1"> |
- <img src="/icons/identifier.gif" |
- alt="University of Cambridge" class="ucam" /> |
- <img src="/icons/ucs.gif" alt="" class="logo" /> |
-</a> |
</div> |
</div> |
% |
--- a/templates/cam/toolbar.t |
+++ b/templates/cam/toolbar.t |
@@ -4,9 +4,7 @@ |
href="#skip-content" accesskey="2">Skip to content</a> </div> |
<div id="header"> |
<div id="branding"> |
- <a href="http://www.cam.ac.uk/" accesskey="1"> |
- <img src="/icons/ucs-id-small.jpg" alt="" class="logo" /> |
-</a></div> |
+</div> |
<div id="change-to"> |
<form method="post" accept-charset="UTF-8" |
enctype="multipart/form-data" action="<% change |s %>"> |
/tags/1.3.2-dfsg1-2/debian/patches/makefile_install_config.patch |
---|
0,0 → 1,199 |
--- a/files/etc/prayer-accountd.cf |
+++ b/files/etc/prayer-accountd.cf |
@@ -8,6 +8,10 @@ |
# Default accountd.cf file suitable for RedHat Linux only. |
# See distribution for some sample files for FreeBSD and Solaris |
+accountd_port = 145 |
+ |
+authtype = pam |
+ |
msforward_name = ".MSforward" |
forward_name = ".forward" |
aliases_name = "vacation.aliases" |
--- a/files/Makefile |
+++ b/files/Makefile |
@@ -66,21 +66,16 @@ install-aconfig: |
install-motd: |
$(INSTALL) -o $(RO_USER) -g $(RO_GROUP) -m $(PUBLIC_FILE) \ |
- etc/motd.html ${BROOT}${PREFIX}/etc |
+ etc/motd.html ${BROOT}/etc/prayer |
install: |
- PREFIX=$(BROOT)$(PREFIX) VAR_PREFIX=$(BROOT)$(VAR_PREFIX) \ |
- RO_USER=$(RO_USER) RO_GROUP=$(RO_GROUP) \ |
- RW_USER=$(RW_USER) RW_GROUP=$(RW_GROUP) \ |
- PUBLIC_DIR=$(PUBLIC_DIR) PRIVATE_DIR=$(PRIVATE_DIR) \ |
- PUBLIC_FILE=$(PUBLIC_FILE) PRIVATE_FILE=$(PRIVATE_FILE) \ |
- PUBLIC_EXEC=$(PUBLIC_FILE) PRIVATE_EXEC=$(PRIVATE_EXEC) \ |
- BIN_DIR=$(BIN_DIR) INSTALL=$(INSTALL) \ |
- ./install.sh |
- if [ ! -f $(BROOT)$(PREFIX)/certs/prayer.pem ]; then $(MAKE) install-cert; fi |
+ ${INSTALL} -d -o ${RO_USER} -g ${RO_GROUP} -m ${PUBLIC_DIR} ${BROOT}${PREFIX} |
+ ${INSTALL} -d -o ${RO_USER} -g ${RO_GROUP} -m ${PUBLIC_DIR} ${BROOT}/etc/prayer |
+ |
+ tar -c --owner ${RO_USER} --group ${RO_GROUP} --mode "a-x+X" icons static | tar -C ${BROOT}${PREFIX} -x |
if [ ! -f $(BROOT)$(PRAYER_CONFIG_FILE) ]; then $(MAKE) install-config; fi |
if [ ! -f $(BROOT)$(ACCOUNTD_CONFIG_FILE) ]; then $(MAKE) install-aconfig; fi |
- if [ ! -f $(BROOT)$(PREFIX)/etc/motd.html ]; then $(MAKE) install-motd; fi |
+ if [ ! -f $(BROOT)/etc/prayer/motd.html ]; then $(MAKE) install-motd; fi |
redhat-install-init.d: |
install -D -o root -g root -m 755 \ |
--- a/files/etc/prayer.cf.SRC |
+++ b/files/etc/prayer.cf.SRC |
@@ -20,7 +20,7 @@ var_prefix = "__VAR_PREFIX__" |
# User ID to run as if we start off as root |
prayer_user = "prayer" |
# Group ID to run as if we start off as root |
-prayer_group = "prayer" |
+prayer_group = "nogroup" |
# Run prayer as background process. |
# TRUE => will return as soon as valid configuration is found. |
@@ -53,7 +53,7 @@ directory_perms = 0750 |
imapd_user_map = "" |
# Default imapd server. |
-imapd_server = localhost |
+imapd_server = localhost/notls |
# Name of Prayer user preferences file on IMAP server |
prefs_folder_name = ".prayer" |
@@ -270,11 +270,11 @@ icon_expire_timeout = 7d |
# Locatation of SSL certificate file (only used if SSL ports defined). |
# Required if we are going to provide SSL services. |
-ssl_cert_file = "$prefix/certs/prayer.pem" |
+ssl_cert_file = "/etc/ssl/certs/ssl-cert-snakeoil.pem" |
# Locatation of SSL private key file (only used if SSL ports defined). |
# Required if we are going to provide SSL services. |
-ssl_privatekey_file = "$prefix/certs/prayer.pem" |
+ssl_privatekey_file = "/etc/ssl/private/ssl-cert-snakeoil.key" |
# Master server will regenerate shared RSA key at this interval: |
ssl_rsakey_lifespan = 15m |
@@ -282,26 +282,14 @@ ssl_rsakey_lifespan = 15m |
# RSA key remains fresh in child process for this long after first actual use. |
ssl_rsakey_freshen = 15m |
-# SSL session cache timeout. |
-ssl_session_timeout = 24h |
+# SSL session cache timeout. Uncomment to enable SSL session caching. |
+# You should also arrange for prayer-ssl-prune to be run periodically. |
+#ssl_session_timeout = 24h |
# EGD socket, if system has no /dev/urandom |
#egd_socket = "/var/prngd/urandom" |
###################################################################### |
- |
-# Direct connection stuff. Experimental! Leave this well alone unless you |
-# understand what it is for (DESIGN document provides detail for the curious). |
-direct_enable = FALSE |
- |
-# Following four options just define a set of (non-overlapping) ports for |
-# SSL and plaintext use if direct connection mode is enabled. |
-direct_ssl_first = 5000 |
-direct_ssl_count = 1000 |
-direct_plain_first = 4000 |
-direct_plain_count = 1000 |
- |
-###################################################################### |
# Session specific configuration |
# Session switches to idle mode after this much time: connections to IMAP |
@@ -376,13 +364,15 @@ sendmail_path = /usr/lib/sendmail |
ispell_path = /usr/bin/ispell |
# Message of the day file |
-motd_path = "$prefix/etc/motd.html" |
- |
-# HTML to insert into login page |
-#login_insert1_path = "$prefix/etc/ucsnews.html" |
+#motd_path = "/etc/prayer/motd.html" |
-# HTML to insert into login page |
-#login_insert2_path = "$prefix/etc/ucsnews.html" |
+# HTML to make available to login template as $login_insert1 |
+# (only used in "cam" template set). |
+#login_insert1_path = "/etc/prayer/login1.html" |
+ |
+# HTML to make available to login template as $login_insert2 |
+# (currently not used in any template set). |
+#login_insert2_path = "/etc/prayer/login2.html" |
# Login security: Prayer's front page defaults to a login form. |
# If the user does not connect via SSL then this can be changed |
@@ -411,10 +401,11 @@ bin_dir = "__BIN_DIR__" |
# Various directories used by the running system |
# Logs stored in $log_dir |
-log_dir = "$var_prefix/logs" |
+log_dir = "/var/log/prayer" |
# $lock_dir used for interlocking between prayer processes |
-lock_dir = "$var_prefix/locks" |
+# (only on Debian GNU/kFreeBSD) |
+lock_dir = "$var_prefix" |
# $socket_dir is location for unix domain sockets which connect frontend |
# to backend in proxy mode of operation. |
@@ -422,7 +413,7 @@ socket_dir = "$var_prefix/socke |
# Split socket directory into 64 subdirs keyed on first letter of sessionID |
# Code provides compatibility in both directions: can switch back and forward |
-socket_split_dir = TRUE |
+socket_split_dir = FALSE |
# Name of Unix domain socket (in $socket_dir) used for initial handshake |
# between prayer and prayer-session processes when a user logs in |
@@ -436,7 +427,7 @@ ssl_session_dir = "$var_prefix/ssl_s |
tmp_dir = "$var_prefix/tmp" |
# Location for PID files for prayer and prayer-session master processes. |
-pid_dir = "$var_prefix/pid" |
+pid_dir = "$var_prefix" |
# Interface to Hermes finger database |
#lookup_rpasswd = "/data/finger/rpasswd.cdb" |
@@ -454,7 +445,7 @@ pid_dir = "$var_prefix/pid" |
# Template stuff |
template_path = "__PREFIX__/templates" |
-template_set = "cam" |
+template_set = "old" |
template_use_compiled = TRUE |
template old "Traditional" |
@@ -603,14 +594,14 @@ hiersep = "/" |
dualuse = FALSE |
# Names of postponed_folder and sent_mail_folder, relative to maildir |
-postponed_folder = "postponed-msgs" |
-sent_mail_folder = "sent-mail" |
+postponed_folder = "Drafts" |
+sent_mail_folder = "Sent" |
# Default domain for outgoing mail. Defaults to "$hostname". |
# default_domain = "<valid mail domain>" |
# Language for ispell. |
-ispell_language = "british" |
+ispell_language = "american" |
# Size of small and large compose windows |
small_cols = 80 |
--- a/shared/config.c |
+++ b/shared/config.c |
@@ -167,7 +167,7 @@ struct config *config_create(void) |
config->fatal_dump_core = NIL; |
config->template_path = "../templates"; |
- config->template_set = "xhtml_strict"; |
+ config->template_set = "old"; |
config->template_use_compiled = T; |
config->template_list = NIL; |
/tags/1.3.2-dfsg1-2/debian/patches/templates_fallback_to_compiled.patch |
---|
0,0 → 1,45 |
--- a/lib/template_expand.c |
+++ b/lib/template_expand.c |
@@ -475,11 +475,11 @@ template_expand_call(struct template_cal |
char *s, *t; |
char *err = NIL; |
- if (tvals->use_compiled) |
+ if (tvals->use_compiled || |
+ !(template = template_parse(tvals->dir, tvals->set, |
+ item->name, tvals->pool))) |
template = template_find(tvals->set, item->name, tvals->pool); |
- else |
- template = template_parse(tvals->dir, tvals->set, |
- item->name, tvals->pool); |
+ |
if (!template) { |
str_printf(state->error, |
"Template \"%s\" not found (CALL from template \"%s\")\n", |
@@ -558,11 +558,11 @@ template_expand(char *name, struct templ |
struct str *error = tvals->error; |
char *err; |
- if (tvals->use_compiled) { |
+ if (tvals->use_compiled || |
+ !(template = template_parse(tvals->dir, tvals->set, |
+ name, tvals->pool))) |
template = template_find(tvals->set, name, tvals->pool); |
- } else { |
- template = template_parse(tvals->dir, tvals->set, name, tvals->pool); |
- } |
+ |
if (!template) { |
str_printf(tvals->error, |
"Template %s not found (top level template_expand())\n", |
--- a/files/etc/prayer.cf.SRC |
+++ b/files/etc/prayer.cf.SRC |
@@ -444,7 +444,7 @@ pid_dir = "$var_prefix" |
###################################################################### |
# Template stuff |
-template_path = "__PREFIX__/templates" |
+template_path = "/etc/prayer/templates" |
template_set = "old" |
template_use_compiled = TRUE |
/tags/1.3.2-dfsg1-2/debian/patches/clean_completely.patch |
---|
0,0 → 1,11 |
--- a/lib/Makefile |
+++ b/lib/Makefile |
@@ -71,7 +71,7 @@ mymutex.o: mymutex.c mymutex_sem.c mymu |
$(CC) $(MYCFLAGS) $(MUTEX_DEF) -c $< |
clean: |
- rm -f lib.o $(OBJS) $(WITHSSL_OBJS) $(NOSSL_OBJS) *~ \#*\# |
+ rm -f lib.o $(OBJS) $(WITHSSL_OBJS) $(NOSSL_OBJS) *~ \#*\# $(TARGETS) |
install: all |
cp template_expand template_compile ../bin |
/tags/1.3.2-dfsg1-2/debian/patches/kfreebsd.patch |
---|
0,0 → 1,38 |
--- a/lib/os.c |
+++ b/lib/os.c |
@@ -26,7 +26,7 @@ |
#include "os_linux.c" |
#elif (defined(SOLARIS)) |
#include "os_solaris.c" |
-#elif (defined(BSD) && BSD >= 199306) |
+#elif defined(__FreeBSD_kernel__) || (defined(BSD) && BSD >= 199306) |
#include "os_bsd.c" |
#else |
#error "No support for this operating system yet. Sorry!" |
--- a/lib/os_bsd.c |
+++ b/lib/os_bsd.c |
@@ -16,8 +16,12 @@ |
#include <arpa/inet.h> |
#include <signal.h> |
#include <netdb.h> |
- |
+#ifdef __GLIBC__ |
+#include <sys/file.h> |
+#include <pty.h> |
+#else |
#include <libutil.h> |
+#endif |
/* ====================================================================== */ |
--- a/lib/mymutex.c |
+++ b/lib/mymutex.c |
@@ -9,7 +9,7 @@ |
#include "lib.h" |
-#ifdef MUTEX_SEMAPHORE |
+#if defined(MUTEX_SEMAPHORE) && !defined(__stub_semtimedop) |
# include "mymutex_sem.c" |
#else |
# include "mymutex_file.c" |
/tags/1.3.2-dfsg1-2/debian/patches/sighandling.patch |
---|
0,0 → 1,75 |
Index: prayer-1.0.18/prayer/os.h |
=================================================================== |
--- prayer-1.0.18.orig/prayer/os.h 2007-03-10 19:56:40.357114747 +0100 |
+++ prayer-1.0.18/prayer/os.h 2007-03-10 19:57:56.266959171 +0100 |
@@ -44,6 +44,8 @@ BOOL os_signal_alarm_clear(void); |
BOOL os_signal_init(); |
+BOOL os_signal_hup_term_init(void (*hup_fn) (), void (*term_fn) ()); |
+ |
BOOL os_lock_exclusive(int fd); |
BOOL os_lock_shared(int fd); |
Index: prayer-1.0.18/prayer/session_server.c |
=================================================================== |
--- prayer-1.0.18.orig/prayer/session_server.c 2007-03-10 19:56:40.647152355 +0100 |
+++ prayer-1.0.18/prayer/session_server.c 2007-03-10 19:57:56.326966954 +0100 |
@@ -355,6 +355,7 @@ BOOL session_server(struct config *confi |
fd_set readfds; |
pid_t child; |
unsigned long timeout = 0L; |
+ BOOL sighup_seen = NIL; |
if (config->direct_enable) { |
ssl_portlist |
@@ -420,6 +421,18 @@ BOOL session_server(struct config *confi |
} else { |
rc = select(maxfd + 1, &readfds, NIL, NIL, NIL); |
} |
+ if (sighup_seen) { |
+ log_misc("SIGHUP received - reexec daemon"); |
+ close(sockfd); |
+ if (config->direct_enable) { |
+ /* Find some way to pass this information along |
+ to the new invocation somehow later. */ |
+ portlist_close_all(ssl_portlist); |
+ portlist_close_all(plain_portlist); |
+ } |
+ log_misc_free(); |
+ return (T); |
+ } |
} |
while ((rc < 0) && (errno == EINTR)); |
Index: prayer-1.0.18/prayer/log.c |
=================================================================== |
--- prayer-1.0.18.orig/prayer/log.c 2007-03-10 19:58:03.667919109 +0100 |
+++ prayer-1.0.18/prayer/log.c 2007-03-10 19:58:11.688959503 +0100 |
@@ -502,6 +502,13 @@ BOOL log_misc_init(struct config *config |
return (log_open(log_misc_ptr, log_name)); |
} |
+void log_misc_free() |
+{ |
+ if ((log_misc_ptr == NIL) || (log_misc_ptr->fd < 0)) |
+ return; |
+ log_free(log_misc_ptr); |
+} |
+ |
/* log_misc_ping() ******************************************************* |
* |
* Reopen misc log file if required |
Index: prayer-1.0.18/prayer/log.h |
=================================================================== |
--- prayer-1.0.18.orig/prayer/log.h 2007-03-10 19:58:04.067970999 +0100 |
+++ prayer-1.0.18/prayer/log.h 2007-03-10 19:58:11.648954314 +0100 |
@@ -45,6 +45,8 @@ void log_record_peer_pid(struct log *log |
BOOL |
log_misc_init(struct config *config, char *progname, char *misc_log_name); |
+void log_misc_free(); |
+ |
BOOL log_misc_ping(); |
void log_misc(char *fmt, ...); |
/tags/1.3.2-dfsg1-2/debian/prayer-templates-src.docs |
---|
0,0 → 1,0 |
docs/TEMPLATES |
/tags/1.3.2-dfsg1-2/debian/changelog |
---|
0,0 → 1,288 |
prayer (1.3.2-dfsg1-2) unstable; urgency=low |
* dlopen_templates.patch: |
* templates/{cam,old}/Makefile: Define the symbols template_map and |
template_map_count as aliases to the template_$(TYPE)_map and |
template_$(TYPE)_map_count when linking, so that template libraries |
can be loaded by other names than the original one. Also remove some |
cruft. |
* shared/dlopen_templates.c: Use those symbols instead. |
* Add symlinks so that template_set = xhtml_strict will still work. |
* Update the names of the directories for locally modified templates |
(under /etc/prayer/templates) to reflect the new template names. |
* template_sdk.patch (new): Create makefile for building template set |
libraries. Install it together with binaries and scripts needed. |
* Rename prayer-templates as prayer-templates-src and add new binary |
package prayer-templates-dev containing the aforementioned |
template-building tools as well as a README.Debian explaining how to |
use it all. |
* Ship NEWS.Debian only in the prayer package. Ship TEMPLATES in |
prayer-templates-src in addition to prayer-templates-dev. |
-- Magnus Holmgren <holmgren@debian.org> Sun, 25 Oct 2009 19:22:13 +0100 |
prayer (1.3.2-dfsg1-1) unstable; urgency=low |
* New upstream release (Closes: #546918). |
* The set of available template sets has changed and several |
obsolete configuration options are no longer recognized. Please |
see NEWS.Debian for more information. |
- Repacked without University of Cambridge logos with dubious |
copyright/license status (more info in debian/copyright). |
- unbrand_cam_template.patch: Remove said Cambridge-specific graphics |
from 'cam' template set. |
- Drop unlimit_login_username.patch (fixed upstream when replacing |
the old login screen with frontend templates) and |
usernames_with_at.patch (incorporated upstream). |
* clean_completely.patch: Partially implemented upstream. |
* Manpages incorporated upstream. |
* dlopen_templates.patch: Experimental support for dynamically loading |
templates. |
* Update README.Debian. |
* makefile_install_config.patch(share/config.c): Change default |
template_set to "old". |
* makefile_install_config.patch(files/Makefile): Fix permissions on |
icons and static files. |
* manpage_error.patch: Fix missing .El in prayer-session(8). |
-- Magnus Holmgren <holmgren@debian.org> Wed, 07 Oct 2009 22:50:45 +0200 |
prayer (1.2.3-2) unstable; urgency=low |
* welcome_is_template.patch wasn't fully incorporated upstream. Remove |
the help_dir setting and check in makefile_install_config.patch instead.c |
* Make Prayer work on kFreeBSD. Unfortunately there is no support for |
SysV semaphores. |
* kfreebsd.patch: Include the right headers under glibc. Detect that |
semtimedop is a stub. |
* debian/Config: Add -lutils to LIBS. |
* makefile_install_config.patch: put back a default value for |
lock_dir. |
* makefile_install_config.patch: Set imap_server to localhost/notls in |
default prayer.cf (Closes: #531801). |
* Depend on exim4 | mail-transport-agent. |
* Increase Standards-Version to 3.8.3. |
-- Magnus Holmgren <holmgren@debian.org> Mon, 31 Aug 2009 23:48:04 +0200 |
prayer (1.2.3-1) unstable; urgency=low |
* New upstream release. |
- Drop repair_ssl_session_db_on_version_mismatch.patch, |
remove_old_db_logfiles_from_prayer-ssl-prune.patch, |
welcome_is_template.patch, template_find_bug.patch; all incorporated |
upstream. |
- Update makefile_install_config.patch after welcome.html gone. |
* kfreebsd.patch (new): Try to get Prayer to work on Debian |
GNU/kFreeBSD. |
* Add ${misc:Depends} to Depends for prayer-templates. |
* Upgrade to Standards-Version 3.8.1. |
+ Add debian/README.source. |
* clean_completely.patch (new): Fix a few makefiles that didn't remove |
their build targets in the clean target (Closes: #521369). Thanks to |
Simon McVittie. |
-- Magnus Holmgren <holmgren@debian.org> Tue, 14 Apr 2009 00:50:31 +0200 |
prayer (1.2.2.1-7) unstable; urgency=high |
* Since /var/run can be a tmpfs filesystem, don't ship /var/run/prayer |
as part of the package but create it in the init script (LP: #304071). |
Also, var_prefix, pid_dir and prayer_user will by default be overriden |
from the command line to make sure that they get the values expected by |
the init script. |
-- Magnus Holmgren <holmgren@debian.org> Fri, 31 Oct 2008 18:31:28 +0100 |
prayer (1.2.2.1-6) unstable; urgency=low |
* prayer.init: Correctly check for the presence of the executables. |
* Split out templates to a separate arch-indep package. |
* Change the default value of the tmp_dir option back to |
${var_prefix}/tmp (/var/run/prayer/tmp) because using /tmp may not be |
secure. |
* usernames_with_at.patch (new, from upstream CVS): If a username |
contains an @, it will be assumed to be a valid email address and be |
used as envelope sender address and default "From" address when |
sending mail (Closes: #497016). |
-- Magnus Holmgren <holmgren@debian.org> Fri, 31 Oct 2008 18:19:34 +0100 |
prayer (1.2.2.1-5a) unstable; urgency=medium |
* Prevent dh_installman from interpreting the cf in prayer.cf.5 as a |
language code. |
-- Magnus Holmgren <holmgren@debian.org> Sun, 17 Aug 2008 19:24:10 +0200 |
prayer (1.2.2.1-4) unstable; urgency=medium |
* Urgency medium since fixing fairly serious bug(s). |
* debian/Config: Fix handling of CFLAGS, CPPFLAGS and LDFLAGS from the |
environment or command line, breaking a circular definition of |
LDFLAGS (FTBFS on Ubuntu; LP: #256220). |
* unlimit_login_username.patch (new): |
- servers/prayer_login.c: Remove 8 character username limit from login |
form (Closes: #494517). |
* prayer.init, prayer-accountd.init: Sleep 1 second between stop and |
start in restart. |
* Add manpages prayer(8), prayer-session(8), prayer.cf(5), and |
prayer-ssl-prune(8) (groff-mdoc format). Remove half-done Docbook |
versions from source package. |
-- Magnus Holmgren <holmgren@debian.org> Sun, 17 Aug 2008 17:38:00 +0200 |
prayer (1.2.2.1-3) unstable; urgency=low |
* welcome_is_template.patch: |
- shared/config.c: Don't require that the help_dir option, which was |
removed from the default prayer.cf earlier, is defined |
(Closes: #493009). |
* makefile_install_config.patch: |
- shared/config.c: Likewise don't check for lock_dir (Closes: #494011). |
-- Magnus Holmgren <holmgren@debian.org> Wed, 06 Aug 2008 21:20:17 +0200 |
prayer (1.2.2.1-2) unstable; urgency=low |
* Acknowledge NMU, but change the build dependency to |
libc-client2007b-dev | libc-client2007-dev | libc-client-dev |
(>= 7:2007~), since we need at least that version. |
-- Magnus Holmgren <holmgren@debian.org> Sun, 27 Jul 2008 20:52:18 +0200 |
prayer (1.2.2.1-1.1) unstable; urgency=low |
* Non-maintainer upload. |
* Build-depend on unversioned libc-client-dev to allow BinNMUs. |
Closes: bug#492285. |
-- Jonas Smedegaard <dr@jones.dk> Thu, 24 Jul 2008 23:42:33 +0200 |
prayer (1.2.2.1-1) unstable; urgency=low |
* New upstream release featuring XHTML templates and fixes to various |
bugs created by the reorganisation. |
- Drop accountd_makefile_typo.patch; fixed upstream. |
* makefile_install_config.patch: Changes to the default config: |
- Disable SSL session caching. |
- Clean out "direct connection stuff". Remove lock_dir since we use |
SysV semaphores. |
* Point login_prefix_path, motd_path, and login_suffix_path towards |
/etc/prayer. |
* Change postponed-mail and sent-mail to Drafts and Sent. |
* Improve SSL/TLS configuration: |
* makefile_install_config.patch: Point ssl_cert_file and |
ssl_privatekey_file to /etc/ssl/*/ssl-cert-snakeoil.*. |
+ Add dependency on ssl-cert (>= 1.0.11). |
+ prayer.postinst: Add prayer to group ssl-cert on fresh install or |
when upgrading from versions prior to this one. |
* welcome_is_template.patch (new): Although the welcome screen is now a |
template among others, cmd_welcome.c still tried to read the file |
specified by welcome_path (welcome.html by default) and wouldn't show |
the welcome screen if the option was unset or the file couldn't be |
read. This patch removes that check as well as the welcome_path and |
help_path options from prayer.cf. |
* No longer install welcome.html (see above) and motd.html (no real |
content) in /etc/prayer. Install login_prefix.html, login_suffix.html, |
and motd.html (the versions found in files/etc.hermes in the |
distribution tarball) in /usr/share/doc/prayer/examples instead. |
* Do not install prayer-chroot (too experimental, hardcoded chroot path) |
or prayer-sem-prune (does nothing that ipcrm cannot do). |
* templates_fallback_to_compiled.patch (new): If the |
template_use_compiled option is false, nevertheless use compiled-in |
templates in template_expand.c if the requested template cannot be |
found on disk. Change default template_path to /etc/prayer/templates. |
Install said directory as well as subdirectories for available |
template sets. |
* Update and improve README.Debian. |
* Add logrotate dependency. |
* makefile_install_config.patch: Remove call to install.sh from |
files/Makefile and replace it with single tar pipeline; thus |
install.sh no longer needs to be patched. |
* remove_old_db_logfiles_from_prayer-ssl-prune.patch (new): Patch |
myarchive() in lib/mydb_db3.c so that it only deletes obsolete |
transaction logs if dirname = NULL, then call it (via DB->archive()) |
from ssl_prune_sessions() in lib/ssl.c. |
- prayer-db-prune thus unnecessary. |
* template_find_bug.patch (new): Fix segfault in template_find() when |
template_set specifies a non-existing set. Also update default set. |
-- Magnus Holmgren <holmgren@debian.org> Tue, 24 Jun 2008 01:34:14 +0200 |
prayer (1.2.0-1) unstable; urgency=low |
* New upstream release featuring a major code reorganisation and a new |
template system. |
- Drop obsolete folder_list_cosmetics.patch and includes.patch. |
- Note: SSL support has been removed from prayer-accountd for now. |
* Changed defaults (manual intervention may be needed): |
- Let prayer-accountd.pid reside in /var/run; letting the two packages |
share /var/run/prayer caused too much trouble. |
- prayer.cf (makefile_install_config.patch and debian/Config): |
var_prefix set to /var/run/prayer and referred to in other |
settings. socket_split_dir disabled by default and default sockets |
directory changed to /var/run/prayer/sockets. |
* debian/control: |
+ Build-depend on latest Berkley DB library (libdb-dev). |
+ Add Homepage field. |
* repair_ssl_session_db_on_version_mismatch.patch: Recreate session DB |
environment when upgrading from a version of Prayer that used an older |
BDB library. |
* prayer.postinst: Set HOME of prayer user to /var/run/prayer. |
* prayer.postrm: Simply remove /var/run/prayer (since accountd doesn't use it) |
on remove or disappear and correctly remove statoverrides (Closes: #483176). |
Also check that deluser exists; it may be gone at purge time. |
* Package build details: |
- Reduce makefile_install_config.patch by not changing BROOT into DESTDIR. |
- Override CDBS overriding CFLAGS. |
* debian/patches/accountd_makefile_typo.patch: Fix typo that caused PAM |
not to be used. |
-- Magnus Holmgren <holmgren@debian.org> Sat, 31 May 2008 19:28:21 +0200 |
prayer (1.1.0-2) unstable; urgency=low |
* Define LDAP_DEPRECATED so that the deprecated LDAP interfaces can be |
used. |
* makefile_install_config.patch: Modify prayer/Makefile so that the |
above definition isn't lost if CFLAGS is overridden. |
* Improve prayer.postrm to clean /var/run/prayer on removal and |
disappearence. |
* Use dpkg-override to allow the administrator to change mode of |
/var/run/prayer and /var/log/prayer. |
* Add postinst and postrm scripts for prayer-accountd. |
* makefile_install_config.patch: Set authtype = pam in accountd.cf so |
that accountd will start. |
* Bump Standards-Version to 3.7.3. No changes necessary. |
* Override Lintian warnings about GPL code linked with OpenSSL. Special |
exception has been granted. |
* Don't require cdbs 0.4.27-1. Oldstable has 0.4.28-1. |
-- Magnus Holmgren <holmgren@debian.org> Thu, 15 May 2008 22:47:14 +0200 |
prayer (1.1.0-1) unstable; urgency=low |
* First upload to unstable. |
* New upstream release. |
+ Requires development version of the c-client library (libc-client2007-dev). |
- Drop pidfiles_extension.patch, session_unix_bugs.patch, |
session_server_bugs.patch; all incorporated upstream. |
- Drop ipv6.patch; incorporated upstream. |
- Drop utf8.patch; incorporated and improved upstream. |
- Drop hasnochildren_means_noinferiors.patch since upstream now |
handles dual-use mailboxes. |
* New maintainer email address. |
* Update README.Debian, removing lies about TLS not being possible to |
disable (Closes: #440462). |
* folder_list_cosmetics.patch: Remove space between expand/collapse |
arrow and folder icon in the folder list and change the alt texts so |
that the tree looks nicer in text browsers. |
-- Magnus Holmgren <holmgren@debian.org> Tue, 13 May 2008 22:31:36 +0200 |
prayer (1.0.18-1) experimental; urgency=low |
* Initial release (Closes: #392823) |
-- Magnus Holmgren <magnus@kibibyte.se> Sat, 10 Mar 2007 14:24:21 +0100 |
/tags/1.3.2-dfsg1-2/debian/prayer.docs |
---|
0,0 → 1,10 |
docs/CMD_LINE |
docs/DESIGN |
docs/DONE-OLD |
docs/FEATURES |
docs/ICONLIST |
docs/LOGS |
docs/NOTICE |
docs/README |
docs/SECURITY |
docs/TODO |
/tags/1.3.2-dfsg1-2/debian/prayer.NEWS |
---|
0,0 → 1,21 |
prayer (1.3.2-dfsg1-1) unstable; urgency=low |
* This version of Prayer Webmail (again) changes the set of available |
templates sets. The "xhtml_transitional" set is removed and |
"xhtml_strict" is now called "old". A new set is added: "cam" is the |
style used at the University of Cambridge. |
* This version also removes several obsolete configuration options: |
- login_prefix_path, login_suffix_path: login page is now a |
template. |
- session_banner_path, help_dir, contact_email: unused since |
templates were introduced in 1.2.0. |
- contact_warning: unused since before 1.0.18. |
- use_embed_http, http_icon_embed, http_icon_port: Serving icons from |
a different port is no longer supported. |
- is_netscape4: Netscape 4 is long obsolete. |
* You will probably have to edit /etc/prayer/prayer.cf to choose a new |
default template set and delete any instances of the aforementioned |
configuration options. |
-- Magnus Holmgren <holmgren@debian.org> Sun, 04 Oct 2009 20:36:42 +0200 |
/tags/1.3.2-dfsg1-2/debian/prayer-templates-dev.install |
---|
0,0 → 1,4 |
/usr/lib/prayer/template_* |
/usr/lib/prayer/*.pl |
/usr/include/prayer |
/usr/share/prayer/*.make |
/tags/1.3.2-dfsg1-2/debian/control |
---|
0,0 → 1,104 |
Source: prayer |
Section: mail |
Priority: optional |
Maintainer: Magnus Holmgren <holmgren@debian.org> |
Build-Depends: cdbs, debhelper (>= 5), quilt, |
libc-client2007b-dev | libc-client2007-dev | libc-client-dev (>= 7:2007~), |
libldap2-dev, zlib1g-dev, libssl-dev (>= 0.9.6), libdb-dev |
Standards-Version: 3.8.3 |
Vcs-Svn: svn://svn.kibibyte.se/prayer/trunk |
Vcs-Browser: http://svn.kibibyte.se/prayer |
Homepage: http://www-uxsup.csx.cam.ac.uk/~dpc22/prayer/ |
Package: prayer |
Architecture: any |
Depends: ${shlibs:Depends}, ${misc:Depends}, adduser, ssl-cert (>= 1.0.11), |
logrotate, exim4 | mail-transport-agent |
Suggests: prayer-accountd, prayer-templates-src, imap-server, aspell | ispell |
Description: standalone IMAP-based webmail server |
Prayer is yet another Webmail interface. |
. |
It is unusual in that it is a complete, standalone, HTTP server and proxy |
rather a Apache/mod_php plugin. Prayer maintains persistent connections to |
the IMAP server and is written entirely in C. Consequently it is much |
faster than most open source Webmail interfaces and puts very little load |
on either the machines running the Web server or the backend IMAP servers |
(even if traditional Unix format mailfolders are in use). |
. |
Prayer has very few external dependencies as user preferences are stored on |
the IMAP server rather than in a SQL database. It does however implement a |
full range of features and user preference settings. |
Package: prayer-templates |
Architecture: all |
Depends: prayer-templates-src, ${misc:Depends} |
Description: dummy package depending on prayer-templates-src |
The Prayer template source package is now called prayer-templates-src. |
This package can safely be removed after upgrade. |
Package: prayer-templates-src |
Architecture: all |
Depends: ${misc:Depends} |
Recommends: prayer (>= 1.3.0) |
Replaces: prayer-templates (<< 1.3.2-dfsg1-2) |
Conflicts: prayer-templates (<< 1.3.2-dfsg1-2) |
Suggests: prayer-templates-dev |
Description: templates for customizing Prayer Webmail |
Prayer is yet another Webmail interface. |
. |
It is unusual in that it is a complete, standalone, HTTP server and proxy |
rather a Apache/mod_php plugin. Prayer maintains persistent connections to |
the IMAP server and is written entirely in C. Consequently it is much |
faster than most open source Webmail interfaces and puts very little load |
on either the machines running the Web server or the backend IMAP servers |
(even if traditional Unix format mailfolders are in use). |
. |
This package contains, in source form, the templates for the HTML |
that Prayer outputs. |
. |
As all the templates are included with the main prayer package in |
compiled form, you only need to install this package if you need to |
customize one or more pages and you want something to start from. |
Package: prayer-templates-dev |
Architecture: any |
Depends: ${shlibs:Depends}, ${misc:Depends}, make, gcc |
Suggests: prayer-templates-src, prayer |
Description: tools for compiling Prayer templates |
Prayer is yet another Webmail interface. |
. |
It is unusual in that it is a complete, standalone, HTTP server and proxy |
rather a Apache/mod_php plugin. Prayer maintains persistent connections to |
the IMAP server and is written entirely in C. Consequently it is much |
faster than most open source Webmail interfaces and puts very little load |
on either the machines running the Web server or the backend IMAP servers |
(even if traditional Unix format mailfolders are in use). |
. |
Prayer uses its own macro expansion language for the HTML it |
outputs. This package contains the programs and scripts needed to |
build template libraries, as well as a makefile to facilitate the |
process. |
Package: prayer-accountd |
Architecture: any |
Depends: ${shlibs:Depends}, ${misc:Depends} |
Suggests: prayer |
Recommends: exim4 |
Description: account management daemon for Prayer |
Prayer is yet another Webmail interface. |
. |
It is unusual in that it is a complete, standalone, HTTP server and proxy |
rather a Apache/mod_php plugin. Prayer maintains persistent connections to |
the IMAP server and is written entirely in C. Consequently it is much |
faster than most open source Webmail interfaces and puts very little load |
on either the machines running the Web server or the backend IMAP servers |
(even if traditional Unix format mailfolders are in use). |
. |
This package contains a daemon that can do the following for users: |
. |
* Change passwords |
* Change their full name |
* Manage mail filtering (requires Exim) and forwarding |
* Manage vacation messages and logs |
. |
NOTE: This package is currently not very useful. |
/tags/1.3.2-dfsg1-2/debian/prayer-templates-dev.README.Debian |
---|
0,0 → 1,73 |
How to build new template packages for Prayer Webmail |
================================================= |
Prayer uses its own macro expansion language, which is documented in |
TEMPLATES. The templates (filename extension .t) are first translated |
into C code (actually no executable code, merely data structures), |
which is then compiled to object form. Originally, the object files |
had to be linked with the prayer executables, but as a Debian |
extension they can be assembled in shared libraries and loaded |
dynamically. |
This package contains the programs and scripts needed to build |
template libraries, as well as a makefile to facilitate the process. |
template-set.make |
----------------- |
/usr/share/prayer/template-set.make can be used directly (via make -f) |
or included from an ordinary Makefile. |
The variable NAME defines the name of the template set. By default |
it's set to the name of the current directory. NAME must be set on the |
command line or *before* including template-set.make. An alternative |
is to follow chapter 3.8 in the GNU Make documentation and _delegate_ |
certain or all targets to template-set.make: |
%: force |
@$(MAKE) -f /usr/share/prayer/template-set.make NAME=foobar |
force: ; |
The variables TEMPLATES and TEMPLATES_FRONTEND list the top-level |
templates that Prayer is known to use, and which should be defined |
lest the user be met with a page saying nothing but "Template not |
found". Unless all those templates are defined, or you redefine the |
variables, the build will fail, but you can set VPATH to a directory |
containing an existing template set to take the missing templates from |
there. Just be sure that there are no intermediate files lying around! |
Templates can call other templates by means of the CALL macro. They |
are scanned recursively to make sure that all referenced templates are |
included in the respective library. |
A complete template package should consist of two libraries: one for |
the session daemon and one for the front-end. The latter contains the |
templates for the login screen and certain messages when no session |
exists or none can be found, and since the users can't choose the |
front-end template set it can be considered pretty much optional. To |
skip building the front-end library, set TEMPLATE_LIBS = $(SESSION_LIB) |
(also on the command line or before including template-set.make). |
Installing |
---------- |
To help build separate architecture-independent and architecture- |
specific packages (as well as to avoid conflicts with the "install" |
target you may want to use yourself), template-set.make provides two |
install targets, "install-sources" and "install-libs", which do the |
right thing. The standard DESTDIR variable is supported (instead of |
BROOT, which is used in Prayer's own makefiles). |
Images and CSS files |
-------------------- |
This package contains no tools to organise static files. Those should |
simply be installed in /usr/share/prayer/icons and |
/usr/share/prayer/static. Note that Prayer doesn't support sub- |
directories, so files should be named in a way that avoids conflicts. |
-- Magnus Holmgren <holmgren@debian.org>, Sun, 25 Oct 2009 18:36:44 +0100 |
/tags/1.3.2-dfsg1-2/debian/prayer-templates-src.install |
---|
0,0 → 1,2 |
usr/share/prayer/templates |
usr/include/prayer |
/tags/1.3.2-dfsg1-2/debian/rules |
---|
0,0 → 1,19 |
#!/usr/bin/make -f |
# Sample debian/rules that uses cdbs. Originaly written by Robert Millan. |
# This file is public domain. |
# Add here any variable or target overrides you need |
makebuilddir/prayer:: |
cp debian/Config . |
include /usr/share/cdbs/1/class/makefile.mk |
include /usr/share/cdbs/1/rules/debhelper.mk |
include /usr/share/cdbs/1/rules/patchsys-quilt.mk |
DEB_MAKE_INVOKE = $(DEB_MAKE_ENVVARS) $(MAKE) |
DEB_MAKE_INSTALL_TARGET = install BROOT=$(CURDIR)/debian/tmp |
DEB_INSTALL_CHANGELOGS_ALL = docs/DONE |
DEB_INSTALL_DOCS_prayer-templates = --link-doc=prayer-templates-src |
DEB_DH_INSTALL_SOURCEDIR = debian/tmp |
DEB_INSTALL_MANPAGES_prayer = "--language=C" |
Property changes: |
Added: svn:executable |
## -0,0 +1 ## |
+* |
\ No newline at end of property |
Index: 1.3.2-dfsg1-2/debian/prayer-templates-dev.docs |
=================================================================== |
--- 1.3.2-dfsg1-2/debian/prayer-templates-dev.docs (nonexistent) |
+++ 1.3.2-dfsg1-2/debian/prayer-templates-dev.docs (revision 108) |
@@ -0,0 +1 @@ |
+docs/TEMPLATES |
Index: 1.3.2-dfsg1-2/debian/prayer.install |
=================================================================== |
--- 1.3.2-dfsg1-2/debian/prayer.install (nonexistent) |
+++ 1.3.2-dfsg1-2/debian/prayer.install (revision 108) |
@@ -0,0 +1,7 @@ |
+usr/sbin/prayer |
+usr/sbin/prayer-session |
+usr/sbin/prayer-ssl-prune |
+usr/share/prayer/icons |
+usr/share/prayer/static |
+usr/lib/prayer/templates/ |
+etc/prayer/prayer.cf |
Index: 1.3.2-dfsg1-2/debian/Config |
=================================================================== |
--- 1.3.2-dfsg1-2/debian/Config (nonexistent) |
+++ 1.3.2-dfsg1-2/debian/Config (revision 108) |
@@ -0,0 +1,149 @@ |
+# $Cambridge: hermes/src/prayer/defaults/Config,v 1.12 2008/05/21 13:25:13 dpc22 Exp $ |
+# |
+# Prayer - a Webmail Interface |
+# |
+# Copyright (c) University of Cambridge 2000 - 2002 |
+# See the file NOTICE for conditions of use and distribution. |
+# |
+# Conventional Configure file. |
+ |
+SSL_ENABLE = true # SSL requires OpenSSL |
+SESSION_CACHE_ENABLE = true # SSL session cache Requires Berkeley DB 3 or 4 |
+GZIP_ENABLE = true # Enable on the fly compression of pages |
+LDAP_ENABLE = true # Add LDAP interface |
+FENCE_ENABLE = false # Use Electric Fence to catch malloc problems |
+MUTEX_SEMAPHORE = true # Use SYSV mutexes rather than file locking |
+ |
+# Following depend on the way that you have configured c-client |
+CCLIENT_SSL_ENABLE = false # C-client was built with SSL support |
+CCLIENT_PAM_ENABLE = false # C-client was built with PAM support |
+CCLIENT_KERB_ENABLE = false # C-client was built with Kerberos support |
+ |
+# Probably don't need the following |
+ACCOUNTD_ENABLE = true # Only of use in Cambridge at the moment. |
+ACCOUNTD_SSL_ENABLE = true # Enable SSL support in account management daemon |
+ACCOUNTD_PAM_ENABLE = true # Enable PAM support in account management daemon |
+ACCOUNTD_USE_BSD_PTY = false # Use Berkeley PTYs rather than Sys V PTYs |
+ |
+############################################################################ |
+# Location of compiler |
+CC = gcc |
+# Location of make program (GNU make required) |
+MAKE = make |
+# Location of install program (GNU install or compatible required) |
+INSTALL = install |
+ |
+# Base Compiler options for GCC (use CFLAGS, CPPFLAGS and LDFLAGS if passed in) |
+BASECFLAGS := $(CFLAGS) |
+BASECFLAGS ?= -Wall -g -O2 |
+BASECFLAGS += $(CPPFLAGS) |
+ |
+BASELDFLAGS := $(LDFLAGS) |
+BASELDFLAGS ?= -g |
+ |
+# Minimal libraries needed by Linux |
+BASE_LIBS = -lcrypt -lutil |
+# FreeBSD needs some extra libraries: |
+# BASE_LIBS = -lcrypt -liconv -lutil |
+# Solaris needs even more libararies: |
+# BASE_LIBS = -lcrypt -lxnet -lnsl -lsocket |
+ |
+# Base Compiler options for Sun SUNWspro compiler |
+#CC = /opt/SUNWspro/bin/cc |
+#BASECFLAGS = -fast |
+#BASELDFLAGS = -s |
+ |
+############################################################################ |
+# Location of various include files and libraries. |
+############################################################################ |
+ |
+# Location of c-client library. |
+CCLIENT_DIR=/usr/include/c-client |
+CCLIENT_INCLUDE=-I$(CCLIENT_DIR) |
+CCLIENT_LIBS=-lc-client |
+ |
+# Electric fence (required if FENCE_ENABLE set) |
+FENCE_INCLUDE= |
+FENCE_LIBS=-lmcheck |
+ |
+# Zlib (required if GZIP_ENABLE set) |
+Z_INCLUDE = |
+Z_LIBS = -lz |
+ |
+# LDAP (required if LDAP_ENABLE set) |
+LDAP_INCLUDE = |
+LDAP_LIBS = -lldap |
+ |
+# Pam (required if CCLIENT_PAM_ENABLE set) |
+PAM_INCLUDE = |
+PAM_LIBS = -lpam |
+ |
+# Kerberos (required if CCLIENT_KERB_ENABLE set) |
+KERB_INCLUDE = |
+KERB_LIBS = -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err |
+ |
+# SSL definitions (required if SSL_ENABLE or CCLIENT_SSL_ENABLE set) |
+# |
+# Following suitable for Linux and FreeBSD which have SSL preinstalled |
+# (Header files from OpenSSL 0.9.7 want to include various Kerboros stuff) |
+# |
+SSL_INCLUDE= |
+SSL_LIBS=-lssl -lcrypto |
+OPENSSL=openssl |
+ |
+# Following definitions suitable for our Sun systems. |
+#SSL_BASE=/opt/local/ssl/current |
+#SSL_INCLUDE=-I ${SSL_BASE}/include |
+#SSL_LIBS=-L ${SSL_BASE}/lib -lssl -lcrypto |
+#OPENSSL=${SSL_BASE}/bin/openssl |
+ |
+# DB definitions (required if SESSION_CACHE_ENABLE set) |
+# |
+# Following suitable for Redhat Linux which has DB 3 preinstalled |
+DB_INCLUDE= |
+DB_LIBS=-ldb |
+ |
+# Following suitable for FreeBSD with DB 4 package installed |
+#DB_INCLUDE=-I/usr/local/include/db4 |
+#DB_LIBS=-L/usr/local/lib -ldb4 |
+ |
+############################################################################ |
+ |
+# Install location of prayer configuration and support files. The initial |
+# config file runs prayer processes as user "prayer" and group "prayer". |
+# If you are using SSL, the certificate file must be readable by RW_USER or |
+# RW_GROUP. It is important that nothing else can read the certificate file. |
+ |
+# Build root (used by Redhat RPM system) |
+BROOT=$(CURDIR)/../debian/tmp |
+ |
+# Directory, User and group for read-write files: log files, sockets etc |
+VAR_PREFIX = /var/run/prayer |
+RW_USER = root |
+RW_GROUP = root |
+ |
+# Root Directory, User and group for read-only configuration files. |
+# Default configuration and permissions does not allow prayer user to |
+# update prayer configuration file. |
+ |
+PREFIX = /usr/share/prayer |
+LIB_PREFIX = /usr/lib/prayer |
+SHLIBEXT = .so |
+ |
+RO_USER = root |
+RO_GROUP = root |
+ |
+# Access permissions for general objects (wrt above users and groups) |
+PUBLIC_EXEC = 0755 |
+PUBLIC_DIR = 0755 |
+PUBLIC_FILE = 0644 |
+ |
+# Access permissions for private objects (wrt above users and groups) |
+PRIVATE_EXEC = 0750 |
+PRIVATE_DIR = 0750 |
+PRIVATE_FILE = 0640 |
+ |
+# Location of configuration files and binaries |
+PRAYER_CONFIG_FILE = /etc/prayer/prayer.cf |
+BIN_DIR = /usr/sbin |
+ACCOUNTD_CONFIG_FILE = /etc/prayer/accountd.cf |
Index: 1.3.2-dfsg1-2/debian/prayer.dirs |
=================================================================== |
--- 1.3.2-dfsg1-2/debian/prayer.dirs (nonexistent) |
+++ 1.3.2-dfsg1-2/debian/prayer.dirs (revision 108) |
@@ -0,0 +1,3 @@ |
+var/log/prayer |
+etc/prayer/templates/old |
+etc/prayer/templates/cam |
Index: 1.3.2-dfsg1-2/debian/prayer.links |
=================================================================== |
--- 1.3.2-dfsg1-2/debian/prayer.links (nonexistent) |
+++ 1.3.2-dfsg1-2/debian/prayer.links (revision 108) |
@@ -0,0 +1,2 @@ |
+usr/lib/prayer/templates/old.so usr/lib/prayer/templates/xhtml_strict.so |
+usr/lib/prayer/templates/old_frontend.so usr/lib/prayer/templates/xhtml_strict_frontend.so |
Index: 1.3.2-dfsg1-2/debian/README.Debian |
=================================================================== |
--- 1.3.2-dfsg1-2/debian/README.Debian (nonexistent) |
+++ 1.3.2-dfsg1-2/debian/README.Debian (revision 108) |
@@ -0,0 +1,104 @@ |
+prayer for Debian |
+----------------- |
+ |
+The Debian version of Prayer is built with SSL support with session |
+cache using the latest libdb, gzip Content-Transfer-Encoding, LDAP, |
+and System V mutex support. The initial Debian release, which was only |
+uloaded to the experimental distribution, was heavily patched to add |
+UTF-8 and IPv6 support among other things. All that has been |
+incorporated and improved by upstream in 1.1.0. The remaining patches |
+concern changes to the default configuration as detailed below, or fix |
+bugs. You can always find information about patches in |
+changelog.Debian.gz. |
+ |
+To enable Prayer, you must edit /etc/default/prayer and change |
+ENABLED=0 to ENABLED=1. But before you do that you should go through |
+/etc/prayer/prayer.cf and adapt it to your needs. In particular, if |
+you already run a web server on this machine you need to change |
+use_http_port (and use_https_port) to something else. |
+ |
+Debian-specific configuration defaults: |
+ |
+ * Static files (templates, icons, CSS files) are installed in |
+ /usr/share/prayer in accordance with policy. The prefix option |
+ points there, while var_prefix, the location of pid files |
+ (pid_dir), sockets (socket_dir), the SSL session cache |
+ (ssl_session_dir), and temporary storage of uploaded attachments |
+ (tmp_dir), is /var/run/prayer and subdirectories. Log files are |
+ written to /var/log/prayer (log_dir). |
+ |
+ * Prayer by default runs as user prayer (created on install) and |
+ group nogroup. The prayer user is added to the ssl-cert group on |
+ installation, so that it can access keys in /etc/ssl/private. |
+ |
+ * ssl_cert_file and ssl_privatekey_file point to the "snake oil" |
+ certificate and key created by the ssl-cert package, so that you |
+ only have to uncomment use_https_port to enable encryption. For a |
+ production server you should of course install a real certificate. |
+ |
+ * Support for SSL session caching is compiled in, but caching is |
+ disabled by default, as it probably doesn't make that much a |
+ difference on modern hardware. To enable it, uncomment the |
+ ssl_session_timeout setting in prayer.cf. You should also arrange |
+ for prayer-ssl-prune to be run periodically, for example by placing |
+ a symlink to it in /etc/cron.hourly or /etc/cron.daily. |
+ |
+ * The default IMAP folders for sent mail (sent_mail_folder) and |
+ drafts (postponed_folder) are "Sent" and "Drafts", respectively, |
+ the default for Mozilla Thunderbird and others (although many IMAP |
+ clients unfortunately use localized folder names). |
+ |
+ * socket_split_dir is off by default to reduce complexity when |
+ testing. You will probably only need it if you have lots of |
+ simultaneous users and a file system without directory indexes. |
+ |
+Customizing templates: |
+ |
+To use customized templates you must set template_use_compiled to |
+FALSE in prayer.cf. Then copy the template (.t file) you wish to |
+customize from /usr/share/prayer/templates to the corresponding |
+location under /etc/prayer/templates and edit it there. Prayer will |
+still use the compiled-in versions of the remaining templates, thanks |
+to a small patch. |
+ |
+Quirks: |
+ |
+ * If your IMAP server supports STARTTLS, then Prayer (actually the |
+ libc-client IMAP client library) will use it automatically. To |
+ disable, append "/notls" to the IMAP server name(s) specified with |
+ imapd_server. To force TLS, append "/tls". Make sure that the |
+ server name you specify for imapd_server in prayer.cf matches the |
+ Common Name in the SSL certificate; otherwise libc-client will |
+ refuse to accept it. To disable that check, use "/novalidate-cert". |
+ Other switches you can append are listed in the file naming.txt.gz |
+ in the documentation directory of the C-client library. |
+ |
+ * If your IMAP server is Dovecot (or any of a number of others, |
+ probably), then you must change prefs_folder_name to something not |
+ containing a dot. Unfortunately this means that the preference |
+ folder will be fully visible. |
+ |
+ * Prayer doesn't handle signals gracefully yet, which means that it |
+ will leave SysV semaphores lying around when it is stopped or |
+ restarted. You can use ipcs to find them and ipcrm to delete them. |
+ |
+ * While Prayer does its best to remove potentially harmful tags from |
+ HTML email, it doesn't try to convert it to XHTML. This means that |
+ Prayer's output is conformant XHTML only when not viewing HTML |
+ mail. |
+ |
+ * Prayer deletes mail the IMAP way, which is by marking messages as |
+ deleted and leaving them in their folders. Prayer always lists |
+ deleted messages (with a special icon) and expunges (deletes |
+ permanently) deleted messages only when explicitly requested. |
+ Before that they can be undeleted at any time by "unmarking" them. |
+ |
+ Most mail client software deletes mail by moving it to a "trash" |
+ folder, which in reality means creating a copy in the trash folder |
+ and marking the original deleted. Messages that are marked as |
+ deleted are usually never listed, cannot be unmarked, and are often |
+ automatically expunged. These two approaches are rather |
+ incompatible, but some software can take either. |
+ |
+ -- Magnus Holmgren <holmgren@debian.org>, Wed, 30 Sep 2009 22:57:19 +0200 |
+ |
Index: 1.3.2-dfsg1-2/debian/watch |
=================================================================== |
--- 1.3.2-dfsg1-2/debian/watch (nonexistent) |
+++ 1.3.2-dfsg1-2/debian/watch (revision 108) |
@@ -0,0 +1,10 @@ |
+# Example watch control file for uscan |
+# Rename this file to "watch" and then you can run the "uscan" command |
+# to check for upstream updates and more. |
+# See uscan(1) for format |
+ |
+# Compulsory line, this is a version 3 file |
+version=3 |
+ |
+opts=dversionmangle=s/-dfsg\d*$// \ |
+ftp://ftp.csx.cam.ac.uk/pub/software/email/prayer/prayer-(.*)\.tar\.gz |
Index: 1.3.2-dfsg1-2/debian/copyright |
=================================================================== |
--- 1.3.2-dfsg1-2/debian/copyright (nonexistent) |
+++ 1.3.2-dfsg1-2/debian/copyright (revision 108) |
@@ -0,0 +1,93 @@ |
+This package was debianized by Magnus Holmgren <magnus@kibibyte.se> on |
+Tue, 24 Oct 2006 21:08:34 +0200. |
+ |
+It was downloaded from ftp://ftp.csx.cam.ac.uk/pub/software/email/prayer |
+ |
+However, due to dubious copyright/licensing status of the coat of |
+arms/logo of the University of Cambridge, the upstream (.orig) tarball |
+has been modified by removing the following files from the files/icons |
+directory: |
+ |
+ identifier.gif |
+ identifier800.gif |
+ ucs-id-small.jpg |
+ univheader.gif |
+ |
+Upstream author/maintainer: David Carter <dpc22@cam.ac.uk> et al. |
+ |
+The Debian packaging is © 2006-2008 Magnus Holmgren <holmgren@debian.org> |
+and is licensed under the GPL. |
+ |
+The original licence is as follows (from the file NOTICE in the upstream |
+distribution); the GPL should be in /usr/share/common-licenses/GPL on a debian |
+system. |
+ |
+ |
+The Prayer Webmail Interface |
+---------------------------- |
+ |
+Copyright (c) 2002 University of Cambridge |
+ |
+This program is free software; you can redistribute it and/or modify |
+it under the terms of the GNU General Public License as published by |
+the Free Software Foundation; either version 2 of the License, or |
+(at your option) any later version. |
+ |
+In addition, for the avoidance of any doubt, permission is granted to |
+link this program with OpenSSL or any other library package. |
+ |
+This program is distributed in the hope that it will be useful, |
+but WITHOUT ANY WARRANTY; without even the implied warranty of |
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
+GNU General Public License for more details. |
+ |
+You should have received a copy of the GNU General Public License |
+along with this program; if not, write to the Free Software |
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, |
+USA |
+ |
+INCORPORATED CODE |
+----------------- |
+ |
+Code implementing the SSL session cache has been adapted from code used by |
+the Cyrus IMAP server, which is distributed under the following copyright: |
+ |
+/* Copyright (c) 2000 Carnegie Mellon University. All rights reserved. |
+ * |
+ * Redistribution and use in source and binary forms, with or without |
+ * modification, are permitted provided that the following conditions |
+ * are met: |
+ * |
+ * 1. Redistributions of source code must retain the above copyright |
+ * notice, this list of conditions and the following disclaimer. |
+ * |
+ * 2. Redistributions in binary form must reproduce the above copyright |
+ * notice, this list of conditions and the following disclaimer in |
+ * the documentation and/or other materials provided with the |
+ * distribution. |
+ * |
+ * 3. The name "Carnegie Mellon University" must not be used to |
+ * endorse or promote products derived from this software without |
+ * prior written permission. For permission or any other legal |
+ * details, please contact |
+ * Office of Technology Transfer |
+ * Carnegie Mellon University |
+ * 5000 Forbes Avenue |
+ * Pittsburgh, PA 15213-3890 |
+ * (412) 268-4387, fax: (412) 268-7395 |
+ * tech-transfer@andrew.cmu.edu |
+ * |
+ * 4. Redistributions of any form whatsoever must retain the following |
+ * acknowledgment: |
+ * "This product includes software developed by Computing Services |
+ * at Carnegie Mellon University (http://www.cmu.edu/computing/)." |
+ * |
+ * CARNEGIE MELLON UNIVERSITY DISCLAIMS ALL WARRANTIES WITH REGARD TO |
+ * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY |
+ * AND FITNESS, IN NO EVENT SHALL CARNEGIE MELLON UNIVERSITY BE LIABLE |
+ * FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN |
+ * AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING |
+ * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
+ */ |
+ |
Index: 1.3.2-dfsg1-2/debian/prayer.manpages |
=================================================================== |
--- 1.3.2-dfsg1-2/debian/prayer.manpages (nonexistent) |
+++ 1.3.2-dfsg1-2/debian/prayer.manpages (revision 108) |
@@ -0,0 +1,4 @@ |
+man/prayer.8 |
+man/prayer-session.8 |
+man/prayer.cf.5 |
+man/prayer-ssl-prune.8 |
Index: 1.3.2-dfsg1-2/debian/README.source |
=================================================================== |
--- 1.3.2-dfsg1-2/debian/README.source (nonexistent) |
+++ 1.3.2-dfsg1-2/debian/README.source (revision 108) |
@@ -0,0 +1,8 @@ |
+This package uses quilt to manage all modifications to the upstream |
+source. Changes are stored in the source package as diffs in |
+debian/patches and applied during the build. For basic usage |
+information, see |
+ |
+ /usr/share/doc/quilt/README.source |
+ |
+(after installing quilt). |
Index: 1.3.2-dfsg1-2/debian/prayer.postinst |
=================================================================== |
--- 1.3.2-dfsg1-2/debian/prayer.postinst (nonexistent) |
+++ 1.3.2-dfsg1-2/debian/prayer.postinst (revision 108) |
@@ -0,0 +1,58 @@ |
+#!/bin/sh |
+# postinst script for prayer |
+# |
+# see: dh_installdeb(1) |
+ |
+set -e |
+ |
+# summary of how this script can be called: |
+# * <postinst> `configure' <most-recently-configured-version> |
+# * <old-postinst> `abort-upgrade' <new version> |
+# * <conflictor's-postinst> `abort-remove' `in-favour' <package> |
+# <new-version> |
+# * <deconfigured's-postinst> `abort-deconfigure' `in-favour' |
+# <failed-install-package> <version> `removing' |
+# <conflicting-package> <version> |
+# for details, see http://www.debian.org/doc/debian-policy/ or |
+# the debian-policy package |
+# |
+ |
+case "$1" in |
+ configure) |
+ adduser --quiet --system --no-create-home --home /var/run/prayer prayer |
+ |
+ dpkg-statoverride --list /var/log/prayer >/dev/null 2>&1 \ |
+ || dpkg-statoverride --update --add prayer adm 2750 /var/log/prayer |
+ |
+ if dpkg --compare-versions "$2" lt "1.2.2.1-7" && |
+ dpkg-statoverride --list /var/run/prayer >/dev/null 2>&1; then |
+ dpkg-statoverride --remove /var/run/prayer |
+ fi |
+ |
+ # Add prayer user to the ssl-cert group on upgrades or fresh installs |
+ if dpkg --compare-versions "$2" lt "1.2.2.1-1"; then |
+ if getent group ssl-cert >/dev/null; then |
+ adduser --quiet prayer ssl-cert |
+ fi |
+ fi |
+ |
+ ;; |
+ |
+ abort-upgrade|abort-remove|abort-deconfigure) |
+ |
+ ;; |
+ |
+ *) |
+ echo "postinst called with unknown argument \`$1'" >&2 |
+ exit 1 |
+ ;; |
+esac |
+ |
+# dh_installdeb will replace this with shell code automatically |
+# generated by other debhelper scripts. |
+ |
+#DEBHELPER# |
+ |
+exit 0 |
+ |
+ |
Index: 1.3.2-dfsg1-2/debian/prayer.postrm |
=================================================================== |
--- 1.3.2-dfsg1-2/debian/prayer.postrm (nonexistent) |
+++ 1.3.2-dfsg1-2/debian/prayer.postrm (revision 108) |
@@ -0,0 +1,50 @@ |
+#!/bin/sh |
+# postrm script for prayer |
+# |
+# see: dh_installdeb(1) |
+ |
+set -e |
+ |
+# summary of how this script can be called: |
+# * <postrm> `remove' |
+# * <postrm> `purge' |
+# * <old-postrm> `upgrade' <new-version> |
+# * <new-postrm> `failed-upgrade' <old-version> |
+# * <new-postrm> `abort-install' |
+# * <new-postrm> `abort-install' <old-version> |
+# * <new-postrm> `abort-upgrade' <old-version> |
+# * <disappearer's-postrm> `disappear' <r>overwrit>r> <new-version> |
+# for details, see http://www.debian.org/doc/debian-policy/ or |
+# the debian-policy package |
+ |
+ |
+case "$1" in |
+ upgrade|abort-install|failed-upgrade|abort-upgrade) |
+ ;; |
+ |
+ remove|disappear) |
+ rm -rf /var/run/prayer |
+ ;; |
+ |
+ purge) |
+ rm -rf /var/log/prayer |
+ if dpkg-statoverride --list /var/log/prayer >/dev/null 2>&1; then |
+ dpkg-statoverride --remove /var/log/prayer |
+ fi |
+ if [ -x /usr/sbin/deluser ]; then |
+ deluser --system --quiet prayer || true |
+ fi |
+ ;; |
+ |
+ *) |
+ echo "postrm called with unknown argument \`$1'" >&2 |
+ exit 1 |
+ |
+esac |
+ |
+# dh_installdeb will replace this with shell code automatically |
+# generated by other debhelper scripts. |
+ |
+#DEBHELPER# |
+ |
+exit 0 |
Index: 1.3.2-dfsg1-2/debian/prayer.default |
=================================================================== |
--- 1.3.2-dfsg1-2/debian/prayer.default (nonexistent) |
+++ 1.3.2-dfsg1-2/debian/prayer.default (revision 108) |
@@ -0,0 +1,17 @@ |
+# Defaults for prayer initscript |
+# sourced by /etc/init.d/prayer |
+# installed at /etc/default/prayer by the maintainer scripts |
+ |
+# This is a POSIX shell fragment |
+ |
+# Change to one to enable prayer after editing /etc/prayer/prayer.cf |
+ENABLED=0 |
+ |
+# Default values for var_prefix (also used for pid_dir) and |
+# prayer_user. These are set from the command line to make sure that |
+# prayer uses the expected values. |
+#VAR_PREFIX="/var/run/prayer" |
+#PRAYER_USER="prayer" |
+ |
+# Additional ptions. You probably won't need any. |
+DAEMON_OPTS="" |
Index: 1.3.2-dfsg1-2/debian/prayer.init |
=================================================================== |
--- 1.3.2-dfsg1-2/debian/prayer.init (nonexistent) |
+++ 1.3.2-dfsg1-2/debian/prayer.init (revision 108) |
@@ -0,0 +1,99 @@ |
+#!/bin/sh |
+# |
+### BEGIN INIT INFO |
+# Provides: prayer |
+# Required-Start: |
+# Required-Stop: |
+# Should-Start: $local_fs |
+# Should-Stop: $local_fs |
+# Default-Start: 2 3 4 5 |
+# Default-Stop: 0 1 6 |
+# Short-Description: Prayer init script |
+# Description: Init script for prayer services |
+### END INIT INFO |
+ |
+PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin |
+FRONTEND_DAEMON=/usr/sbin/prayer |
+SESSION_DAEMON=/usr/sbin/prayer-session |
+VAR_PREFIX=/var/run/prayer |
+PRAYER_USER=prayer |
+DESC="webmail server" |
+ |
+test -x $FRONTEND_DAEMON -a -x $SESSION_DAEMON || exit 0 |
+ |
+. /lib/lsb/init-functions |
+ |
+ENABLED=0 |
+ |
+# Include prayer defaults if available |
+if [ -f /etc/default/prayer ] ; then |
+ . /etc/default/prayer |
+fi |
+ |
+FRONTEND_PIDFILE="$VAR_PREFIX/prayer.pid" |
+SESSION_PIDFILE="$VAR_PREFIX/prayer-session.pid" |
+ |
+set +e |
+ |
+start() { |
+ if [ "$ENABLED" = "0" ]; then |
+ echo "Prayer is disabled. Please set ENABLED=1 in /etc/default/prayer" |
+ echo "after adapting /etc/prayer/prayer.cf to your needs." |
+ exit 0 |
+ fi |
+ |
+ log_daemon_msg "Starting $DESC" "prayer" |
+ start-stop-daemon --start --pidfile "$FRONTEND_PIDFILE" \ |
+ --exec "$FRONTEND_DAEMON" \ |
+ -- $DAEMON_OPTS --config-option "prayer_user=$PRAYER_USER" \ |
+ --config-option "var_prefix=$VAR_PREFIX" \ |
+ --config-option "pid_dir=$VAR_PREFIX" |
+ log_end_msg $? |
+} |
+ |
+stop() { |
+ log_daemon_msg "Stopping $DESC" |
+ if [ -f "$SESSION_PIDFILE" ]; then |
+ start-stop-daemon --stop --quiet --oknodo --pidfile "$SESSION_PIDFILE" |
+ log_progress_msg "prayer-session" |
+ fi |
+ if [ -f "$FRONTEND_PIDFILE" ]; then |
+ start-stop-daemon --stop --quiet --oknodo --pidfile "$FRONTEND_PIDFILE" |
+ start-stop-daemon --stop --quiet --oknodo --exec "$FRONTEND_DAEMON" |
+ log_progress_msg "prayer" |
+ fi |
+ rm -f "$FRONTEND_PIDFILE" "$SESSION_PIDFILE" |
+ log_end_msg 0 |
+} |
+ |
+case "$1" in |
+ start) |
+ # Create /var/run/prayer with prayer as owner in case /var/run is a tmpfs. |
+ # If local admin |
+ install -d -m 2750 -o "$PRAYER_USER" "$VAR_PREFIX" |
+ start |
+ ;; |
+ |
+ stop) |
+ stop |
+ ;; |
+ |
+ restart|force-reload) |
+ # |
+ # If the "reload" option is implemented, move the "force-reload" |
+ # option to the "reload" entry above. If not, "force-reload" is |
+ # just the same as "restart". |
+ # |
+ stop |
+ sleep 1 |
+ start |
+ ;; |
+ *) |
+ N=/etc/init.d/prayer |
+ # echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2 |
+ log_failure_msg "Usage: $N {start|stop|restart|force-reload}" >&2 |
+ exit 1 |
+ ;; |
+esac |
+ |
+exit 0 |
Index: 1.3.2-dfsg1-2/debian/prayer-accountd.init |
=================================================================== |
--- 1.3.2-dfsg1-2/debian/prayer-accountd.init (nonexistent) |
+++ 1.3.2-dfsg1-2/debian/prayer-accountd.init (revision 108) |
@@ -0,0 +1,72 @@ |
+#!/bin/sh |
+# |
+### BEGIN INIT INFO |
+# Provides: prayer-accountd |
+# Required-Start: |
+# Required-Stop: |
+# Should-Start: $local_fs |
+# Should-Stop: $local_fs |
+# Default-Start: 2 3 4 5 |
+# Default-Stop: 0 1 6 |
+# Short-Description: Prayer account helper daemon |
+# Description: Lets users change passwords, manage filters and other things not supported by IMAP itself |
+### END INIT INFO |
+ |
+PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin |
+DAEMON=/usr/sbin/prayer-accountd |
+PIDFILE=/var/run/prayer-accountd.pid |
+DESC="Prayer account helper server" |
+ |
+test -x $DAEMON || exit 0 |
+ |
+egrep -iq "^[[:space:]]*accountd_port[[:space:]]*=[[:space:]]*[[:digit:]]+[[:space:]]*$" /etc/prayer/accountd.cf || exit 0 |
+ |
+. /lib/lsb/init-functions |
+ |
+# Include prayer defaults if available |
+if [ -f /etc/default/prayer-accountd ] ; then |
+ . /etc/default/prayer-accountd |
+fi |
+ |
+set +e |
+ |
+start() { |
+ log_daemon_msg "Starting $DESC" "accountd" |
+ start-stop-daemon --start --background --make-pidfile --pidfile $PIDFILE \ |
+ --exec $DAEMON -- $DAEMON_OPTS |
+ log_end_msg $? |
+} |
+ |
+stop() { |
+ log_daemon_msg "Stopping $DESC" |
+ if [ -f "$PIDFILE" ]; then |
+ start-stop-daemon --stop --quiet --oknodo --pidfile $PIDFILE |
+ log_progress_msg "accountd" |
+ fi |
+ rm -f "$PIDFILE" |
+ log_end_msg 0 |
+} |
+ |
+case "$1" in |
+ start) |
+ start |
+ ;; |
+ |
+ stop) |
+ stop |
+ ;; |
+ |
+ restart|force-reload) |
+ stop |
+ sleep 1 |
+ start |
+ ;; |
+ *) |
+ N=/etc/init.d/prayer-accountd |
+ # echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2 |
+ log_failure_msg "Usage: $N {start|stop|restart|force-reload}" >&2 |
+ exit 1 |
+ ;; |
+esac |
+ |
+exit 0 |
Index: 1.3.2-dfsg1-2/debian/prayer.examples |
=================================================================== |
--- 1.3.2-dfsg1-2/debian/prayer.examples (nonexistent) |
+++ 1.3.2-dfsg1-2/debian/prayer.examples (revision 108) |
@@ -0,0 +1,3 @@ |
+files/etc.hermes/login_prefix.html |
+files/etc.hermes/login_suffix.html |
+files/etc.hermes/motd.html |
Index: 1.3.2-dfsg1-2/debian/prayer-accountd.lintian-overrides |
=================================================================== |
--- 1.3.2-dfsg1-2/debian/prayer-accountd.lintian-overrides (nonexistent) |
+++ 1.3.2-dfsg1-2/debian/prayer-accountd.lintian-overrides (revision 108) |
@@ -0,0 +1 @@ |
+prayer-accountd: possible-gpl-code-linked-with-openssl |
Index: 1.3.2-dfsg1-2/debian/prayer.lintian-overrides |
=================================================================== |
--- 1.3.2-dfsg1-2/debian/prayer.lintian-overrides (nonexistent) |
+++ 1.3.2-dfsg1-2/debian/prayer.lintian-overrides (revision 108) |
@@ -0,0 +1 @@ |
+prayer: possible-gpl-code-linked-with-openssl |
Index: 1.3.2-dfsg1-2/debian/compat |
=================================================================== |
--- 1.3.2-dfsg1-2/debian/compat (nonexistent) |
+++ 1.3.2-dfsg1-2/debian/compat (revision 108) |
@@ -0,0 +1 @@ |
+5 |
Index: 1.3.2-dfsg1-2/debian/prayer-accountd.docs |
=================================================================== |
--- 1.3.2-dfsg1-2/debian/prayer-accountd.docs (nonexistent) |
+++ 1.3.2-dfsg1-2/debian/prayer-accountd.docs (revision 108) |
@@ -0,0 +1,8 @@ |
+docs/ACCOUNTD |
+docs/DESIGN |
+docs/DONE-OLD |
+docs/FEATURES |
+docs/NOTICE |
+docs/README |
+docs/SECURITY |
+docs/TODO |
Index: 1.3.2-dfsg1-2/debian/prayer.logrotate |
=================================================================== |
--- 1.3.2-dfsg1-2/debian/prayer.logrotate (nonexistent) |
+++ 1.3.2-dfsg1-2/debian/prayer.logrotate (revision 108) |
@@ -0,0 +1,8 @@ |
+/var/log/prayer/prayer /var/log/prayer/prayer_session /var/log/prayer/access_log /var/log/prayer/session_log { |
+ rotate 28 |
+ daily |
+ compress |
+ delaycompress |
+ missingok |
+ notifempty |
+} |
Index: 1.3.2-dfsg1-2/debian/prayer-accountd.install |
=================================================================== |
--- 1.3.2-dfsg1-2/debian/prayer-accountd.install (nonexistent) |
+++ 1.3.2-dfsg1-2/debian/prayer-accountd.install (revision 108) |
@@ -0,0 +1,2 @@ |
+usr/sbin/prayer-accountd |
+etc/prayer/accountd.cf |
Index: 1.3.2-dfsg1-2/debian |
=================================================================== |
--- 1.3.2-dfsg1-2/debian (nonexistent) |
+++ 1.3.2-dfsg1-2/debian (revision 108) |
/1.3.2-dfsg1-2/debian |
---|
Property changes: |
Added: mergeWithUpstream |
## -0,0 +1 ## |
+1 |
\ No newline at end of property |
Index: 1.3.2-dfsg1-2 |
=================================================================== |
--- 1.3.2-dfsg1-2 (nonexistent) |
+++ 1.3.2-dfsg1-2 (revision 108) |
/1.3.2-dfsg1-2 |
---|
Property changes: |
Added: svn:mergeinfo |
## -0,0 +0,3 ## |
Merged /tags/1.2.2.1-1:r47-51 |
Merged /branches/lenny:r52-71 |
Merged /tags/1.2.2.1-7:r53-72 |