aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBaptiste Daroussin <bapt@FreeBSD.org>2023-12-06 16:28:54 +0000
committerBaptiste Daroussin <bapt@FreeBSD.org>2023-12-06 16:28:54 +0000
commitb3638bad5e473e428dda8f4868964ca13028059e (patch)
treec61b5db1f2efba858ab9afc30e4a58507c3e578f
parent3464269abd052c497eacd0ea7228c32b8bb21112 (diff)
downloadports-b3638bad5e473e428dda8f4868964ca13028059e.tar.gz
ports-b3638bad5e473e428dda8f4868964ca13028059e.zip
mail/mlmmj: update to 1.4.0
-rw-r--r--mail/mlmmj/Makefile11
-rw-r--r--mail/mlmmj/distinfo6
-rw-r--r--mail/mlmmj/files/patch-gcc1020
-rw-r--r--mail/mlmmj/files/patch-nobounceprobe15
-rw-r--r--mail/mlmmj/files/patch-originalfromemail110
-rw-r--r--mail/mlmmj/files/patch-reduce-subscription-confirmation-address-length.diff88
-rw-r--r--mail/mlmmj/files/patch-send-list29
-rw-r--r--mail/mlmmj/files/patch-src_init__sockfd.c73
-rw-r--r--mail/mlmmj/files/patch-src_mlmmj-send.c115
-rw-r--r--mail/mlmmj/pkg-plist11
10 files changed, 17 insertions, 461 deletions
diff --git a/mail/mlmmj/Makefile b/mail/mlmmj/Makefile
index ae7ca3228616..ef5a4c12830c 100644
--- a/mail/mlmmj/Makefile
+++ b/mail/mlmmj/Makefile
@@ -1,8 +1,7 @@
PORTNAME= mlmmj
-PORTVERSION= 1.3.0
-PORTREVISION= 11
+PORTVERSION= 1.4.0
CATEGORIES= mail
-MASTER_SITES= http://mlmmj.org/releases/
+MASTER_SITES= https://codeberg.org/mlmmj/mlmmj/releases/download/RELEASE_${PORTVERSION:S/./_/g}/
MAINTAINER= bapt@FreeBSD.org
COMMENT= Simple and slim mailing list manager
@@ -11,7 +10,7 @@ WWW= http://mlmmj.org/
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE
-USES= cpe gmake iconv shebangfix tar:bzip2
+USES= cpe gmake iconv shebangfix tar:xz
SHEBANG_FILES= contrib/web/perl-user/mlmmj.cgi
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --enable-receive-strip
@@ -27,10 +26,6 @@ PERL_RUN_DEPENDS= p5-URI>0:net/p5-URI \
p5-HTML-Parser>0:www/p5-HTML-Parser
PHP_USES= php:web
-post-patch:
- @${REINPLACE_CMD} -e \
- '/^AM_CFLAGS/s|-g ||' ${WRKSRC}/src/Makefile.in
-
post-install-DOCS-on:
@${MKDIR} ${STAGEDIR}${DOCSDIR}
(cd ${WRKSRC} && ${INSTALL_DATA} \
diff --git a/mail/mlmmj/distinfo b/mail/mlmmj/distinfo
index 7598b4b24f77..ab5622620fed 100644
--- a/mail/mlmmj/distinfo
+++ b/mail/mlmmj/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1509526367
-SHA256 (mlmmj-1.3.0.tar.bz2) = 1c5d898143433147aa1b448fe041b2eecf6ab1601d451d426441a0a63008f242
-SIZE (mlmmj-1.3.0.tar.bz2) = 292519
+TIMESTAMP = 1701879995
+SHA256 (mlmmj-1.4.0.tar.xz) = a38c5a11e86dcc89fc2728756acf962b695860c0a75686db2d7e2b8057dd5bad
+SIZE (mlmmj-1.4.0.tar.xz) = 307072
diff --git a/mail/mlmmj/files/patch-gcc10 b/mail/mlmmj/files/patch-gcc10
deleted file mode 100644
index 847855d6a1d5..000000000000
--- a/mail/mlmmj/files/patch-gcc10
+++ /dev/null
@@ -1,20 +0,0 @@
---- include/mlmmj.h
-+++ include/mlmmj.h
-@@ -81,7 +81,7 @@ enum subtype {
- SUB_NONE /* For when an address is not subscribed at all */
- };
-
--char *subtype_strs[7]; /* count matches enum above; defined in subscriberfuncs.c */
-+extern char *subtype_strs[7]; /* count matches enum above; defined in subscriberfuncs.c */
-
- enum subreason {
- SUB_REQUEST,
-@@ -92,7 +92,7 @@ enum subreason {
- SUB_SWITCH
- };
-
--char * subreason_strs[6]; /* count matches enum above; defined in subscriberfuncs.c */
-+extern char * subreason_strs[6]; /* count matches enum above; defined in subscriberfuncs.c */
-
- void print_version(const char *prg);
-
diff --git a/mail/mlmmj/files/patch-nobounceprobe b/mail/mlmmj/files/patch-nobounceprobe
deleted file mode 100644
index d0548d25f8d9..000000000000
--- a/mail/mlmmj/files/patch-nobounceprobe
+++ /dev/null
@@ -1,15 +0,0 @@
-diff --git src/mlmmj-maintd.c src/mlmmj-maintd.c
-index 02cfd16..5ac35da 100644
---- src/mlmmj-maintd.c
-+++ src/mlmmj-maintd.c
-@@ -601,6 +601,10 @@ int probe_bouncers(const char *listdir, const char *mlmmjbounce)
- pid_t pid, childpid;
- int status;
-
-+ if (statctrl(listdir, "nobounceprobe")) {
-+ return 0;
-+ }
-+
- if(chdir(dirname) < 0) {
- log_error(LOG_ARGS, "Could not chdir(%s)", dirname);
- myfree(dirname);
diff --git a/mail/mlmmj/files/patch-originalfromemail b/mail/mlmmj/files/patch-originalfromemail
deleted file mode 100644
index c6bc45d2f129..000000000000
--- a/mail/mlmmj/files/patch-originalfromemail
+++ /dev/null
@@ -1,110 +0,0 @@
-diff --git src/listcontrol.c src/listcontrol.c
-index d0c2e14..96e98d9 100644
---- src/listcontrol.c
-+++ src/listcontrol.c
-@@ -191,7 +191,7 @@ int listcontrol(struct email_container *fromemails, const char *listdir,
- if(fromemails->emailcount != 1 && ctrl != CTRL_BOUNCES) {
- errno = 0;
- log_error(LOG_ARGS, "Ignoring mail with invalid From: "
-- "which was not a bounce");
-+ "which was not a bounce: %d", fromemails->emailcount);
- return -1;
- }
-
-diff --git src/mlmmj-process.c src/mlmmj-process.c
-index 82e4d04..a9003e7 100644
---- src/mlmmj-process.c
-+++ src/mlmmj-process.c
-@@ -473,10 +473,12 @@ int main(int argc, char **argv)
- struct stat st;
- uid_t uid;
- struct email_container fromemails = { 0, NULL };
-+ struct email_container originalfromemails = { 0, NULL };
- struct email_container toemails = { 0, NULL };
- struct email_container ccemails = { 0, NULL };
- struct email_container rpemails = { 0, NULL };
- struct email_container dtemails = { 0, NULL };
-+ struct email_container *testfrom = NULL;
- struct strlist *access_rules = NULL;
- struct strlist *delheaders = NULL;
- struct strlist allheaders;
-@@ -488,6 +490,7 @@ int main(int argc, char **argv)
- { "Return-Path:", 0, NULL },
- { "Delivered-To:", 0, NULL },
- { "Subject:", 0, NULL },
-+ { "X-Original-From:", 0, NULL },
- { NULL, 0, NULL }
- };
-
-@@ -708,6 +711,11 @@ int main(int argc, char **argv)
- for(i = 0; i < readhdrs[0].valuecount; i++) {
- find_email_adr(readhdrs[0].values[i], &fromemails);
- }
-+ /* X-Original-From: addresses */
-+ for(i = 0; i < readhdrs[6].valuecount; i++) {
-+ find_email_adr(readhdrs[6].values[i], &originalfromemails);
-+ }
-+
- /* discard malformed mail with invalid From: unless it's a bounce */
- if(fromemails.emailcount != 1 &&
- (recipextra == NULL ||
-@@ -812,7 +820,11 @@ int main(int argc, char **argv)
- log_error(LOG_ARGS, "listcontrol(from, %s, %s, %s, %s, %s, %s, %s)\n", listdir, toemails.emaillist[0], mlmmjsub, mlmmjunsub, mlmmjsend, mlmmjbounce, donemailname);
- #endif
- unlink(mailfile);
-- listcontrol(&fromemails, listdir, recipextra,
-+ if (originalfromemails.emailcount > 0)
-+ testfrom = &originalfromemails;
-+ else
-+ testfrom = &fromemails;
-+ listcontrol(testfrom, listdir, recipextra,
- mlmmjsub, mlmmjunsub, mlmmjsend, mlmmjbounce,
- donemailname);
-
-@@ -1036,7 +1048,10 @@ int main(int argc, char **argv)
- if(!send && (subonlypost || modonlypost || modnonsubposts)) {
- /* Don't send a mail about denial to the list, but silently
- * discard and exit. */
-- if (strcasecmp(listaddr, posteraddr) == 0) {
-+ char *testaddr = posteraddr;
-+ if (originalfromemails.emailcount > 0)
-+ testaddr = originalfromemails.emaillist[0];
-+ if (strcasecmp(listaddr, testaddr) == 0) {
- log_error(LOG_ARGS, "Discarding %s because"
- " there are sender restrictions but"
- " From: was the list address",
-@@ -1047,10 +1062,10 @@ int main(int argc, char **argv)
- exit(EXIT_SUCCESS);
- }
- if(subonlypost) {
-- foundaddr = (is_subbed(listdir, posteraddr, 0) !=
-+ foundaddr = (is_subbed(listdir, testaddr, 0) !=
- SUB_NONE);
- } else if (modonlypost) {
-- foundaddr = is_moderator(listdir, posteraddr, NULL);
-+ foundaddr = is_moderator(listdir, testaddr, NULL);
- }
- if(!foundaddr) {
- if(modnonsubposts) {
-@@ -1086,10 +1101,10 @@ int main(int argc, char **argv)
- }
- MY_ASSERT(txt);
- register_unformatted(txt, "subject", subject);
-- register_unformatted(txt, "posteraddr", posteraddr);
-+ register_unformatted(txt, "posteraddr", testaddr);
- register_originalmail(txt, donemailname);
- queuefilename = prepstdreply(txt, listdir,
-- "$listowner$", posteraddr, NULL);
-+ "$listowner$", testaddr, NULL);
- MY_ASSERT(queuefilename)
- close_text(txt);
- myfree(listaddr);
-@@ -1101,7 +1116,7 @@ int main(int argc, char **argv)
- execlp(mlmmjsend, mlmmjsend,
- "-L", listdir,
- "-l", "1",
-- "-T", posteraddr,
-+ "-T", testaddr,
- "-F", fromaddr,
- "-m", queuefilename, (char *)NULL);
-
diff --git a/mail/mlmmj/files/patch-reduce-subscription-confirmation-address-length.diff b/mail/mlmmj/files/patch-reduce-subscription-confirmation-address-length.diff
deleted file mode 100644
index 544c99a7621e..000000000000
--- a/mail/mlmmj/files/patch-reduce-subscription-confirmation-address-length.diff
+++ /dev/null
@@ -1,88 +0,0 @@
-$NetBSD: patch-reduce-subscription-confirmation-address-length.diff,v 1.1 2020/03/31 20:37:47 roy Exp $
-
-From cb0788bc35c471a87fc75aca6d4e405fdbaccfd8 Mon Sep 17 00:00:00 2001
-From: Geert Stappers <stappers@stappers.it>
-Date: Thu, 25 May 2017 09:17:55 +0200
-Subject: [PATCH] Reduce subscription confirmation address length to fit RFC
- 5321
-
-The local part of mailing list subscription confirmation addresses
-formed of:
-
- mailing-list-name "+confsub-" 16-random-hex "-" sender-address
-
-can get very long, especially if sender-address is long.
-However, RFC limits it at 64 characters.
-
-Closes http://mlmmj.org/bugs/bug.php?id=63
-
-Reported-by: mgorny@gentoo.org
----
- src/mlmmj-sub.c | 2 +-
- src/mlmmj-unsub.c | 2 +-
- src/strgen.c | 23 +----------------------
- 3 files changed, 3 insertions(+), 24 deletions(-)
-
-diff --git a/src/mlmmj-sub.c b/src/mlmmj-sub.c
-index 3335817..5c8c1ae 100644
---- src/mlmmj-sub.c
-+++ src/mlmmj-sub.c
-@@ -413,7 +413,7 @@ void generate_subconfirm(const char *listdir, const char *listaddr,
- do {
- myfree(confirmfilename);
- myfree(randomstr);
-- randomstr = random_plus_addr(subaddr);
-+ randomstr = random_str();
- confirmfilename = concatstr(3, listdir, "/subconf/",
- randomstr);
-
-diff --git a/src/mlmmj-unsub.c b/src/mlmmj-unsub.c
-index 0fa42a1..8e13f3c 100644
---- src/mlmmj-unsub.c
-+++ src/mlmmj-unsub.c
-@@ -171,7 +171,7 @@ void generate_unsubconfirm(const char *listdir, const char *listaddr,
- do {
- myfree(confirmfilename);
- myfree(randomstr);
-- randomstr = random_plus_addr(subaddr);
-+ randomstr = random_str();
- confirmfilename = concatstr(3, listdir, "/unsubconf/",
- randomstr);
-
-diff --git a/src/strgen.c b/src/strgen.c
-index f13db47..673f44a 100644
---- src/strgen.c
-+++ src/strgen.c
-@@ -40,31 +40,10 @@
-
- char *random_str()
- {
-- size_t len = 17;
-+ size_t len = 17; /* sixteen hex digits plus terminating zero */
- char *dest = mymalloc(len);
-
- snprintf(dest, len, "%08x%08x", random_int(), random_int());
--
-- return dest;
--}
--
--char *random_plus_addr(const char *addr)
--{
-- size_t len = strlen(addr) + 128;
-- char *dest = mymalloc(len);
-- char *atsign;
-- char *tmpstr;
--
-- tmpstr = mymalloc(len);
-- snprintf(tmpstr, len, "%s", addr);
--
-- atsign = strchr(tmpstr, '@');
-- MY_ASSERT(atsign);
-- *atsign = '=';
--
-- snprintf(dest, len, "%08x%08x-%s", random_int(), random_int(), tmpstr);
--
-- myfree(tmpstr);
-
- return dest;
- }
diff --git a/mail/mlmmj/files/patch-send-list b/mail/mlmmj/files/patch-send-list
deleted file mode 100644
index bcaaf118d975..000000000000
--- a/mail/mlmmj/files/patch-send-list
+++ /dev/null
@@ -1,29 +0,0 @@
-diff --git src/mlmmj-process.c src/mlmmj-process.c
-index 82e4d04..d324d18 100644
---- src/mlmmj-process.c
-+++ src/mlmmj-process.c
-@@ -478,6 +478,7 @@ int main(int argc, char **argv)
- struct email_container rpemails = { 0, NULL };
- struct email_container dtemails = { 0, NULL };
- struct strlist *access_rules = NULL;
-+ struct strlist *list_rules = NULL;
- struct strlist *delheaders = NULL;
- struct strlist allheaders;
- struct strlist *listaddrs = NULL;
-@@ -1027,6 +1028,16 @@ int main(int argc, char **argv)
- }
- }
-
-+ list_rules = ctrlvalues(listdir, "send");
-+ if (list_rules != NULL) {
-+ for (i = 0; i < list_rules->count; i++) {
-+ if (strcasecmp(posteraddr, list_rules->strs[i]) == 0) {
-+ send = 1;
-+ break;
-+ }
-+ }
-+ }
-+
- subonlypost = statctrl(listdir, "subonlypost");
- modonlypost = statctrl(listdir, "modonlypost");
- modnonsubposts = statctrl(listdir, "modnonsubposts");
diff --git a/mail/mlmmj/files/patch-src_init__sockfd.c b/mail/mlmmj/files/patch-src_init__sockfd.c
deleted file mode 100644
index 009c421a3f84..000000000000
--- a/mail/mlmmj/files/patch-src_init__sockfd.c
+++ /dev/null
@@ -1,73 +0,0 @@
---- src/init_sockfd.c.orig 2012-03-13 12:16:36 UTC
-+++ src/init_sockfd.c
-@@ -22,6 +22,7 @@
- */
-
- #include <stdlib.h>
-+#include <stdio.h>
- #include <sys/types.h>
- #include <sys/socket.h>
- #include <unistd.h>
-@@ -29,35 +30,50 @@
- #include <arpa/inet.h>
- #include <string.h>
- #include <inttypes.h>
-+#include <netdb.h>
-
- #include "init_sockfd.h"
- #include "log_error.h"
-
- void init_sockfd(int *sockfd, const char *relayhost, unsigned short port)
- {
-- int len, on;
-- struct sockaddr_in addr;
-+ int on, sd;
-+ struct addrinfo *ai = NULL, *curai, hints;
-+ char srv[NI_MAXSERV];
-+ *sockfd = -1;
-
- if (getenv("MLMMJ_TESTING")) {
- relayhost = "127.0.0.1";
- port = 10025;
- }
-
-- *sockfd = socket(PF_INET, SOCK_STREAM, 0);
-- if(*sockfd == -1) {
-- log_error(LOG_ARGS, "Could not get socket");
-+ memset(&hints, 0, sizeof(hints));
-+ hints.ai_socktype = SOCK_STREAM;
-+ hints.ai_family = PF_UNSPEC;
-+ snprintf(srv, sizeof(srv), "%d", port);
-+ if (getaddrinfo(relayhost, srv, &hints, &ai) != 0) {
-+ log_error(LOG_ARGS, "Unable to lookup for relayhost %s:%s",
-+ relayhost, srv);
- return;
- }
-- addr.sin_family = PF_INET;
-- addr.sin_addr.s_addr = inet_addr(relayhost);
-- addr.sin_port = htons(port);
-- len = sizeof(addr);
-- if(connect(*sockfd, (struct sockaddr *)&addr, len) == -1) {
-+
-+ for (curai = ai; curai != NULL; curai = curai->ai_next) {
-+ if ((sd = socket(ai->ai_family, ai->ai_socktype, ai->ai_protocol)) < 0) {
-+ continue;
-+ }
-+ if (connect(sd, ai->ai_addr, ai->ai_addrlen) != 0) {
-+ close(sd);
-+ sd = -1;
-+ continue;
-+ }
-+ break;
-+ }
-+ freeaddrinfo(ai);
-+ if (sd == -1) {
- log_error(LOG_ARGS, "Could not connect to %s", relayhost);
-- close(*sockfd);
-- *sockfd = -1;
- return;
- }
-+ *sockfd = sd;
-
- on = 1;
- if(setsockopt(*sockfd, SOL_SOCKET, SO_KEEPALIVE, (void *)&on,
diff --git a/mail/mlmmj/files/patch-src_mlmmj-send.c b/mail/mlmmj/files/patch-src_mlmmj-send.c
deleted file mode 100644
index 1529884b0a37..000000000000
--- a/mail/mlmmj/files/patch-src_mlmmj-send.c
+++ /dev/null
@@ -1,115 +0,0 @@
---- src/mlmmj-send.c.orig 2022-07-14 05:25:21 UTC
-+++ src/mlmmj-send.c
-@@ -817,13 +817,12 @@ int main(int argc, char **argv)
- char *listctrl = NULL, *subddirname = NULL, *listdir = NULL;
- char *mlmmjbounce = NULL, *bindir, *mailmap, *probefile, *a;
- char *body = NULL, *hdrs = NULL, *memmailsizestr = NULL, *verp = NULL;
-- char relay[16], *listname, *listfqdn, *verpfrom, *maxverprecipsstr;
-+ char *listname, *listfqdn, *verpfrom, *maxverprecipsstr;
- char strindex[32], *reply, *strport, *smtphelo, *requeuefilename;
- ssize_t memmailsize = 0;
- DIR *subddir;
- struct dirent *dp;
- struct stat st;
-- struct hostent *relayent;
- uid_t uid;
- struct strlist stl;
- unsigned short smtpport = 25;
-@@ -1080,22 +1079,11 @@ int main(int argc, char **argv)
-
- itoa(mindex, strindex);
-
-- if(!relayhost) {
-+ if(!relayhost)
- relayhost = ctrlvalue(listdir, "relayhost");
-- }
- if(!relayhost)
-- strncpy(relay, RELAYHOST, sizeof(relay));
-- else {
-- relayent = gethostbyname(relayhost);
-- if(relayent == NULL) {
-- strncpy(relay, RELAYHOST, sizeof(relay));
-- } else {
-- if(inet_ntop(relayent->h_addrtype,
-- relayent->h_addr_list[0],
-- relay, sizeof(relay)) == NULL)
-- strncpy(relay, RELAYHOST, sizeof(relay));
-- }
-- }
-+ relayhost = mystrdup(RELAYHOST);
-+
- strport = ctrlvalue(listdir, "smtpport");
- if(strport)
- smtpport = (unsigned short)atol(strport);
-@@ -1107,7 +1095,7 @@ int main(int argc, char **argv)
- switch(listctrl[0]) {
- case '1': /* A single mail is to be sent */
- case '6':
-- initsmtp(&sockfd, relay, smtpport, smtphelo);
-+ initsmtp(&sockfd, relayhost, smtpport, smtphelo);
- if(send_mail(sockfd, bounceaddr, to_addr, replyto,
- mailmap, st.st_size, listdir, NULL,
- hdrs, hdrslen, body, bodylen)) {
-@@ -1165,7 +1153,7 @@ int main(int argc, char **argv)
- }
- break;
- case '2': /* Moderators */
-- initsmtp(&sockfd, relay, smtpport, smtphelo);
-+ initsmtp(&sockfd, relayhost, smtpport, smtphelo);
- if(send_mail_many_fd(sockfd, bounceaddr, NULL, mailmap,
- st.st_size, subfd, NULL, NULL, NULL,
- listdir, NULL, hdrs, hdrslen,
-@@ -1177,7 +1165,7 @@ int main(int argc, char **argv)
- }
- break;
- case '3': /* resending earlier failed mails */
-- initsmtp(&sockfd, relay, smtpport, smtphelo);
-+ initsmtp(&sockfd, relayhost, smtpport, smtphelo);
- if(send_mail_many_fd(sockfd, NULL, NULL, mailmap, st.st_size,
- subfd, listaddr, listdelim, mailfilename,
- listdir, mlmmjbounce, hdrs, hdrslen,
-@@ -1190,7 +1178,7 @@ int main(int argc, char **argv)
- unlink(subfilename);
- break;
- case '4': /* send mails to owner */
-- initsmtp(&sockfd, relay, smtpport, smtphelo);
-+ initsmtp(&sockfd, relayhost, smtpport, smtphelo);
- if(send_mail_many_fd(sockfd, bounceaddr, NULL, mailmap,
- st.st_size, subfd, listaddr, listdelim,
- mailfilename, listdir, mlmmjbounce,
-@@ -1202,7 +1190,7 @@ int main(int argc, char **argv)
- }
- break;
- case '5': /* bounceprobe - handle relayhost local users bouncing*/
-- initsmtp(&sockfd, relay, smtpport, smtphelo);
-+ initsmtp(&sockfd, relayhost, smtpport, smtphelo);
- if(send_mail(sockfd, bounceaddr, to_addr, replyto,
- mailmap, st.st_size, listdir, NULL,
- hdrs, hdrslen, body, bodylen)) {
-@@ -1267,7 +1255,7 @@ int main(int argc, char **argv)
- }
-
- if(verp) {
-- initsmtp(&sockfd, relay, smtpport, smtphelo);
-+ initsmtp(&sockfd, relayhost, smtpport, smtphelo);
- if(sockfd > -1) {
- if(write_mail_from(sockfd, verpfrom, verp)) {
- log_error(LOG_ARGS,
-@@ -1331,7 +1319,7 @@ int main(int argc, char **argv)
- }
- }
- if(stl.count == maxverprecips) {
-- initsmtp(&sockfd, relay, smtpport, smtphelo);
-+ initsmtp(&sockfd, relayhost, smtpport, smtphelo);
- if(verp) {
- sendres = send_mail_verp(
- sockfd, &stl,
-@@ -1375,7 +1363,7 @@ int main(int argc, char **argv)
-
- }
- if(stl.count) {
-- initsmtp(&sockfd, relay, smtpport, smtphelo);
-+ initsmtp(&sockfd, relayhost, smtpport, smtphelo);
- if(verp) {
- sendres = send_mail_verp(sockfd, &stl, mailmap,
- st.st_size, verpfrom, listdir,
diff --git a/mail/mlmmj/pkg-plist b/mail/mlmmj/pkg-plist
index 69d9ff8eaf12..692e68d6435d 100644
--- a/mail/mlmmj/pkg-plist
+++ b/mail/mlmmj/pkg-plist
@@ -48,6 +48,7 @@ man/man1/mlmmj-unsub.1.gz
%%DATADIR%%/text.skel/ast/notify
%%DATADIR%%/text.skel/ast/probe
%%DATADIR%%/text.skel/ast/prologue
+%%DATADIR%%/text.skel/ast/subrelease
%%DATADIR%%/text.skel/ast/wait-post
%%DATADIR%%/text.skel/ast/wait-sub
%%DATADIR%%/text.skel/cs/confirm
@@ -64,6 +65,7 @@ man/man1/mlmmj-unsub.1.gz
%%DATADIR%%/text.skel/cs/notify
%%DATADIR%%/text.skel/cs/probe
%%DATADIR%%/text.skel/cs/prologue
+%%DATADIR%%/text.skel/cs/subrelease
%%DATADIR%%/text.skel/cs/wait-post
%%DATADIR%%/text.skel/cs/wait-sub
%%DATADIR%%/text.skel/de/confirm
@@ -80,6 +82,7 @@ man/man1/mlmmj-unsub.1.gz
%%DATADIR%%/text.skel/de/notify
%%DATADIR%%/text.skel/de/probe
%%DATADIR%%/text.skel/de/prologue
+%%DATADIR%%/text.skel/de/subrelease
%%DATADIR%%/text.skel/de/wait-post
%%DATADIR%%/text.skel/de/wait-sub
%%DATADIR%%/text.skel/en/confirm
@@ -96,6 +99,7 @@ man/man1/mlmmj-unsub.1.gz
%%DATADIR%%/text.skel/en/notify
%%DATADIR%%/text.skel/en/probe
%%DATADIR%%/text.skel/en/prologue
+%%DATADIR%%/text.skel/en/subrelease
%%DATADIR%%/text.skel/en/wait-post
%%DATADIR%%/text.skel/en/wait-sub
%%DATADIR%%/text.skel/fi/confirm
@@ -112,6 +116,7 @@ man/man1/mlmmj-unsub.1.gz
%%DATADIR%%/text.skel/fi/notify
%%DATADIR%%/text.skel/fi/probe
%%DATADIR%%/text.skel/fi/prologue
+%%DATADIR%%/text.skel/fi/subrelease
%%DATADIR%%/text.skel/fi/wait-post
%%DATADIR%%/text.skel/fi/wait-sub
%%DATADIR%%/text.skel/fr/confirm
@@ -128,6 +133,7 @@ man/man1/mlmmj-unsub.1.gz
%%DATADIR%%/text.skel/fr/notify
%%DATADIR%%/text.skel/fr/probe
%%DATADIR%%/text.skel/fr/prologue
+%%DATADIR%%/text.skel/fr/subrelease
%%DATADIR%%/text.skel/fr/wait-post
%%DATADIR%%/text.skel/fr/wait-sub
%%DATADIR%%/text.skel/gr/confirm
@@ -144,6 +150,7 @@ man/man1/mlmmj-unsub.1.gz
%%DATADIR%%/text.skel/gr/notify
%%DATADIR%%/text.skel/gr/probe
%%DATADIR%%/text.skel/gr/prologue
+%%DATADIR%%/text.skel/gr/subrelease
%%DATADIR%%/text.skel/gr/wait-post
%%DATADIR%%/text.skel/gr/wait-sub
%%DATADIR%%/text.skel/it/confirm
@@ -160,6 +167,7 @@ man/man1/mlmmj-unsub.1.gz
%%DATADIR%%/text.skel/it/notify
%%DATADIR%%/text.skel/it/probe
%%DATADIR%%/text.skel/it/prologue
+%%DATADIR%%/text.skel/it/subrelease
%%DATADIR%%/text.skel/it/wait-post
%%DATADIR%%/text.skel/it/wait-sub
%%DATADIR%%/text.skel/pt/confirm
@@ -176,6 +184,7 @@ man/man1/mlmmj-unsub.1.gz
%%DATADIR%%/text.skel/pt/notify
%%DATADIR%%/text.skel/pt/probe
%%DATADIR%%/text.skel/pt/prologue
+%%DATADIR%%/text.skel/pt/subrelease
%%DATADIR%%/text.skel/pt/wait-post
%%DATADIR%%/text.skel/pt/wait-sub
%%DATADIR%%/text.skel/sk/confirm
@@ -192,6 +201,7 @@ man/man1/mlmmj-unsub.1.gz
%%DATADIR%%/text.skel/sk/notify
%%DATADIR%%/text.skel/sk/probe
%%DATADIR%%/text.skel/sk/prologue
+%%DATADIR%%/text.skel/sk/subrelease
%%DATADIR%%/text.skel/sk/wait-post
%%DATADIR%%/text.skel/sk/wait-sub
%%DATADIR%%/text.skel/zh-cn/confirm
@@ -208,6 +218,7 @@ man/man1/mlmmj-unsub.1.gz
%%DATADIR%%/text.skel/zh-cn/notify
%%DATADIR%%/text.skel/zh-cn/probe
%%DATADIR%%/text.skel/zh-cn/prologue
+%%DATADIR%%/text.skel/zh-cn/subrelease
%%DATADIR%%/text.skel/zh-cn/wait-post
%%DATADIR%%/text.skel/zh-cn/wait-sub
%%PERL%%%%WWWDIR%%/perl-admin/README