summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mail/alpine/Makefile18
-rw-r--r--mail/alpine/distinfo12
-rw-r--r--mail/alpine/patches/patch-imap_src_mtest_mtest.c216
3 files changed, 19 insertions, 227 deletions
diff --git a/mail/alpine/Makefile b/mail/alpine/Makefile
index 1594d1a882b..17311b188e1 100644
--- a/mail/alpine/Makefile
+++ b/mail/alpine/Makefile
@@ -1,16 +1,24 @@
-# $NetBSD: Makefile,v 1.47 2020/11/23 16:36:03 bsiegert Exp $
+# $NetBSD: Makefile,v 1.48 2021/10/17 09:49:09 nia Exp $
-DISTNAME= alpine-2.24
+DISTNAME= alpine-2.25
CATEGORIES= mail
MASTER_SITES= http://alpine.x10host.com/alpine/release/src/
+DIST_SUBDIR= ${DISTNAME}
EXTRACT_SUFX= .tar.xz
+PATCH_SITES= https://alpine.x10host.com/alpine/patches/alpine-${PKGVERSION_NOREV}/
+PATCHFILES+= maildir.patch.gz
+PATCH_DIST_STRIP= -p1
+
MAINTAINER= pkgsrc-users@NetBSD.org
-#HOMEPAGE= http://patches.freeiz.com/alpine/release/
+HOMEPAGE= http://alpine.x10host.com/index.html
COMMENT= Program for Internet News and E-mail
LICENSE= apache-2.0
-GNU_CONFIGURE= yes
+GNU_CONFIGURE= yes
+USE_TOOLS+= msgfmt msgmerge xgettext
+USE_LIBTOOL= yes
+
CONFIGURE_ARGS+= --with-ssl-dir=${SSLBASE}
CONFIGURE_ARGS+= --with-ssl-certs-dir=${SSLCERTS:Q}
CONFIGURE_ARGS+= --with-ssl-include-dir=${SSLBASE}/include
@@ -21,8 +29,6 @@ CONFIGURE_ARGS+= --with-passfile=.pine-passfile
# disabled, for Web Alpine Support
CONFIGURE_ARGS+= --without-tcl
-USE_LIBTOOL= yes
-
MAKE_JOBS_SAFE= no
INSTALLATION_DIRS= bin ${PKGMANDIR}/man1
diff --git a/mail/alpine/distinfo b/mail/alpine/distinfo
index 13fa11e9ae2..7e5d7735444 100644
--- a/mail/alpine/distinfo
+++ b/mail/alpine/distinfo
@@ -1,9 +1,11 @@
-$NetBSD: distinfo,v 1.26 2021/10/07 14:25:12 nia Exp $
+$NetBSD: distinfo,v 1.27 2021/10/17 09:49:09 nia Exp $
-RMD160 (alpine-2.24.tar.xz) = 1612ff9edfdd66a0ef145f338fa9db26177360e0
-SHA512 (alpine-2.24.tar.xz) = 642a51f73732ebdf7c40e2b66370aa2f48fb13b349b477871b26295c3e8b860a0cc78dec9f80efc6ea74c548a080ceff04181eb18c35a9c8cae8d8ef831178c5
-Size (alpine-2.24.tar.xz) = 7341676 bytes
+RMD160 (alpine-2.25/alpine-2.25.tar.xz) = 3035891df0de21d15adc0b1665fcb4127b9b5ffd
+SHA512 (alpine-2.25/alpine-2.25.tar.xz) = 76c214cf66f4ac7af3de40357ad3a592ff2a119e327e5f6c256125b7865d46b09197435fe6ac8077ab7a498e4821925939f3f902431ca77baa786e149466a193
+Size (alpine-2.25/alpine-2.25.tar.xz) = 7495372 bytes
+RMD160 (alpine-2.25/maildir.patch.gz) = 5c402d391c399763fcf5714cfa7cca7cfbd65964
+SHA512 (alpine-2.25/maildir.patch.gz) = eea454796cab4e96b83869e880fe17d20799bf3a606712367f42deb0f3870b30f620fc77c307e40303ffc8492e828bb7772965b21614b2c27d4fc972f18ff346
+Size (alpine-2.25/maildir.patch.gz) = 34758 bytes
SHA1 (patch-imap_src_c-client_auth_gss.c) = e6da9ee9dbe0751872d1400237a030112eaa56c6
-SHA1 (patch-imap_src_mtest_mtest.c) = 8c5282047e165fee4b6fe74c230e41d63d3cdc69
SHA1 (patch-imap_src_osdep_unix_Makefile.gss) = ca09bc26a139c68afe8ac1f99be54bd1fc0e77f0
SHA1 (patch-imap_src_osdep_unix_kerb_mit.c) = c77d5ee1e8aee30811c2df0562caa375ed270c0e
diff --git a/mail/alpine/patches/patch-imap_src_mtest_mtest.c b/mail/alpine/patches/patch-imap_src_mtest_mtest.c
deleted file mode 100644
index ec82381d148..00000000000
--- a/mail/alpine/patches/patch-imap_src_mtest_mtest.c
+++ /dev/null
@@ -1,216 +0,0 @@
-$NetBSD: patch-imap_src_mtest_mtest.c,v 1.3 2018/07/24 12:39:36 bsiegert Exp $
-
-- patch up buffer handling (required to build on openbsd)
-
---- imap/src/mtest/mtest.c.orig 2017-02-06 00:06:22.499218141 +0000
-+++ imap/src/mtest/mtest.c
-@@ -151,6 +151,7 @@ void mm (MAILSTREAM *stream,long debug)
- void *sdb = NIL;
- char cmd[MAILTMPLEN],tmp[MAILTMPLEN];
- char *s, *arg;
-+ size_t argmax;
- unsigned long i;
- unsigned long last = 0;
- BODY *body;
-@@ -158,7 +159,9 @@ void mm (MAILSTREAM *stream,long debug)
- while (stream) {
- prompt ("MTest> ",cmd, sizeof(cmd)); /* prompt user, get command */
- /* get argument */
-- if ((arg = strchr (cmd,' ')) != NULL) *arg++ = '\0';
-+ if (arg)
-+ argmax = sizeof(cmd) - (arg - cmd);
-+
- switch (*ucase (cmd)) { /* dispatch based on command */
- case 'B': /* Body command */
- if (arg) last = atoi (arg);
-@@ -185,7 +188,8 @@ void mm (MAILSTREAM *stream,long debug)
- break;
- }
- arg = cmd;
-- sprintf (arg,"%lu",last);
-+ argmax = sizeof(cmd);
-+ snprintf (arg, argmax, "%lu",last);
- }
- if (last && (last <= stream->nmsgs))
- mail_setflag (stream,arg,"\\DELETED");
-@@ -198,6 +202,7 @@ void mm (MAILSTREAM *stream,long debug)
- case 'F': /* Find command */
- if (!arg) {
- arg = "%";
-+ argmax = 0;
- if ((s = sm_read (tmp,&sdb)) != NULL) {
- puts ("Local network subscribed mailboxes:");
- do if (*s == '{') (mm_lsub (NIL,NIL,s,NIL));
-@@ -251,7 +256,7 @@ void mm (MAILSTREAM *stream,long debug)
- }
- /* get the new mailbox */
- while (!(stream = mail_open (stream,arg,debug))) {
-- prompt ("Mailbox: ",arg, sizeof(arg));
-+ prompt ("Mailbox: ",arg, argmax);
- if (!arg[0]) break;
- }
- last = 0;
-@@ -323,7 +328,8 @@ void mm (MAILSTREAM *stream,long debug)
- break;
- }
- arg = cmd;
-- sprintf (arg,"%lu",last);
-+ argmax = sizeof(cmd);
-+ snprintf (arg, argmax, "%lu",last);
- }
- if (last > 0 && last <= stream->nmsgs)
- mail_clearflag (stream,arg,"\\DELETED");
-@@ -384,7 +390,7 @@ void overview_header (MAILSTREAM *stream
- tmp[3] = elt->answered ? 'A' : ' ';
- tmp[4] = elt->deleted ? 'D' : ' ';
- mail_parse_date (&selt,ov->date);
-- sprintf (tmp+5,"%4lu) ",elt->msgno);
-+ snprintf (tmp+5, sizeof(tmp)-5, "%4lu) ",elt->msgno);
- mail_date (tmp+11,&selt);
- tmp[17] = ' ';
- tmp[18] = '\0';
-@@ -394,11 +400,12 @@ void overview_header (MAILSTREAM *stream
- for (adr = ov->from; adr && !adr->host; adr = adr->next);
- if (adr) { /* if a personal name exists use it */
- if (!(t = adr->personal))
-- sprintf (t = tmp+400,"%s@%s",adr->mailbox,adr->host);
-+ snprintf (t = tmp+400, sizeof(tmp)-400, "%s@%s",adr->mailbox,adr->host);
- memcpy (tmp+18,t,(size_t) min (20,(long) strlen (t)));
- }
- strcat (tmp," ");
- if ((i = elt->user_flags) != 0L) {
-+ /* XXX bounds? */
- strcat (tmp,"{");
- while (i) {
- strcat (tmp,stream->user_flags[find_rightmost_bit (&i)]);
-@@ -406,7 +413,7 @@ void overview_header (MAILSTREAM *stream
- }
- strcat (tmp,"} ");
- }
-- sprintf (tmp + strlen (tmp),"%.25s (%lu chars)",
-+ snprintf (tmp + strlen (tmp), 400 - strlen(tmp), "%.25s (%lu chars)",
- ov->subject ? ov->subject : " ",ov->optional.octets);
- puts (tmp);
- }
-@@ -423,6 +430,7 @@ void header (MAILSTREAM *stream,long msg
- unsigned long i;
- char tmp[MAILTMPLEN];
- char *t;
-+ size_t len;
- MESSAGECACHE *cache = mail_elt (stream,msgno);
- mail_fetchstructure (stream,msgno,NIL);
- tmp[0] = cache->recent ? (cache->seen ? 'R': 'N') : ' ';
-@@ -430,7 +438,7 @@ void header (MAILSTREAM *stream,long msg
- tmp[2] = cache->flagged ? 'F' : ' ';
- tmp[3] = cache->answered ? 'A' : ' ';
- tmp[4] = cache->deleted ? 'D' : ' ';
-- sprintf (tmp+5,"%4lu) ",cache->msgno);
-+ snprintf (tmp+5, sizeof(tmp)-5, "%4lu) ",cache->msgno);
- mail_date (tmp+11,cache);
- tmp[17] = ' ';
- tmp[18] = '\0';
-@@ -445,7 +453,9 @@ void header (MAILSTREAM *stream,long msg
- strcat (tmp,"} ");
- }
- mail_fetchsubject (t = tmp + strlen (tmp),stream,msgno,(long) 25);
-- sprintf (t += strlen (t)," (%lu chars)",cache->rfc822_size);
-+ len = strlen (t);
-+ t += len;
-+ snprintf (t, sizeof(tmp)-len, " (%lu chars)",cache->rfc822_size);
- puts (tmp);
- }
-
-@@ -459,31 +469,57 @@ void display_body (BODY *body,char *pfx,
- {
- char tmp[MAILTMPLEN];
- char *s = tmp;
-+ size_t len, smax = sizeof(tmp);
- PARAMETER *par;
- PART *part; /* multipart doesn't have a row to itself */
- if (body->type == TYPEMULTIPART) {
- /* if not first time, extend prefix */
-- if (pfx) sprintf (tmp,"%s%ld.",pfx,++i);
-+ if (pfx) snprintf (tmp, sizeof(tmp), "%s%ld.",pfx,++i);
- else tmp[0] = '\0';
- for (i = 0,part = body->nested.part; part; part = part->next)
- display_body (&part->body,tmp,i++);
- }
- else { /* non-multipart, output oneline descriptor */
- if (!pfx) pfx = ""; /* dummy prefix if top level */
-- sprintf (s," %s%ld %s",pfx,++i,body_types[body->type]);
-- if (body->subtype) sprintf (s += strlen (s),"/%s",body->subtype);
-- if (body->description) sprintf (s += strlen (s)," (%s)",body->description);
-- if ((par = body->parameter) != NULL) do
-- sprintf (s += strlen (s),";%s=%s",par->attribute,par->value);
-+ snprintf (s, smax, " %s%ld %s",pfx,++i,body_types[body->type]);
-+ if (body->subtype) {
-+ len = strlen(s);
-+ s += len;
-+ smax -= len;
-+ snprintf (s, smax, "/%s",body->subtype);
-+ }
-+ if (body->description) {
-+ len = strlen(s);
-+ s += len;
-+ smax -= len;
-+ snprintf (s, smax, " (%s)",body->description);
-+ }
-+ if (par = body->parameter) do {
-+ len = strlen(s);
-+ s += len;
-+ smax -= len;
-+ snprintf (s, smax, ";%s=%s",par->attribute,par->value);
-+ }
- while ((par = par->next) != NULL);
-- if (body->id) sprintf (s += strlen (s),", id = %s",body->id);
-+ if (body->id) {
-+ len = strlen(s);
-+ s += len;
-+ smax -= len;
-+ snprintf (s, smax, ", id = %s",body->id);
-+ }
- switch (body->type) { /* bytes or lines depending upon body type */
- case TYPEMESSAGE: /* encapsulated message */
- case TYPETEXT: /* plain text */
-- sprintf (s += strlen (s)," (%lu lines)",body->size.lines);
-+ len = strlen(s);
-+ s += len;
-+ smax -= len;
-+ snprintf (s, smax, " (%lu lines)",body->size.lines);
- break;
- default:
-- sprintf (s += strlen (s)," (%lu bytes)",body->size.bytes);
-+ len = strlen(s);
-+ s += len;
-+ smax -= len;
-+ snprintf (s, smax, " (%lu bytes)",body->size.bytes);
- break;
- }
- puts (tmp); /* output this line */
-@@ -492,7 +528,7 @@ void display_body (BODY *body,char *pfx,
- (body = body->nested.msg->body)) {
- if (body->type == TYPEMULTIPART) display_body (body,pfx,i-1);
- else { /* build encapsulation prefix */
-- sprintf (tmp,"%s%ld.",pfx,i);
-+ snprintf (tmp, sizeof(tmp), "%s%ld.",pfx,i);
- display_body (body,tmp,(long) 0);
- }
- }
-@@ -711,10 +747,13 @@ void mm_login (NETMBX *mb,char *user,cha
- if (curhst) fs_give ((void **) &curhst);
- curhst = (char *) fs_get (1+strlen (mb->host));
- strcpy (curhst,mb->host);
-- sprintf (s = tmp,"{%s/%s",mb->host,mb->service);
-- if (*mb->user) sprintf (tmp+strlen (tmp),"/user=%s",strcpy (user,mb->user));
-- if (*mb->authuser) sprintf (tmp+strlen (tmp),"/authuser=%s",mb->authuser);
-- if (*mb->user) strcat (s = tmp,"} password:");
-+ snprintf (s = tmp, sizeof(tmp), "{%s/%s",mb->host,mb->service);
-+ if (*mb->user) snprintf (tmp+strlen (tmp), sizeof(tmp)-strlen(tmp), "/user=%s",strcpy (user,mb->user));
-+ if (*mb->authuser) snprintf (tmp+strlen (tmp), sizeof(tmp)-strlen(tmp), "/authuser=%s",mb->authuser);
-+ if (*mb->user) {
-+ s = tmp;
-+ snprintf(tmp+strlen(tmp), sizeof(tmp)-strlen(tmp), "%s", "} password:");
-+ }
- else {
- printf ("%s} username: ",tmp);
- fgets (user,NETMAXUSER-1,stdin);