svn commit: r569163 - in head/mail/mlmmj: . files

Baptiste Daroussin bapt at FreeBSD.org
Wed Mar 24 22:13:30 UTC 2021


Author: bapt
Date: Wed Mar 24 22:13:29 2021
New Revision: 569163
URL: https://svnweb.freebsd.org/changeset/ports/569163

Log:
  mlmmj: Incorporate from NetBSD's pkgsrc
  
  The patch reduces subscription confirmation address length to fit RFC 5321

Added:
  head/mail/mlmmj/files/patch-reduce-subscription-confirmation-address-length.diff   (contents, props changed)
Modified:
  head/mail/mlmmj/Makefile

Modified: head/mail/mlmmj/Makefile
==============================================================================
--- head/mail/mlmmj/Makefile	Wed Mar 24 21:29:19 2021	(r569162)
+++ head/mail/mlmmj/Makefile	Wed Mar 24 22:13:29 2021	(r569163)
@@ -3,6 +3,7 @@
 
 PORTNAME=	mlmmj
 PORTVERSION=	1.3.0
+PORTREVISION=	1
 CATEGORIES=	mail
 MASTER_SITES=	http://mlmmj.org/releases/
 

Added: head/mail/mlmmj/files/patch-reduce-subscription-confirmation-address-length.diff
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/mail/mlmmj/files/patch-reduce-subscription-confirmation-address-length.diff	Wed Mar 24 22:13:29 2021	(r569163)
@@ -0,0 +1,88 @@
+$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 at 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 at 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;
+ }


More information about the svn-ports-all mailing list