1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-14 07:43:06 +00:00

mail/mutt: update patches

- Fix sidebar patch [1]. This version introduces a new config variable
  "sidebar_shortpath" which is set to yes by default to ensure
  backwards compatibility.

- Fix an issue with recent gpg (and gpgme) versions (GnuPG version 2.1
  stops exporting the GPG_AGENT_INFO environment variable, so mutt can't
  check for the presence of that to ensure the agent is running).

- Fix pgp key selection [2].

- Bump port revision because of major change to sidebar patch and gpg
  handling.

PR:		199727
PR:		199115 [1]
PR:		199341 [2]
Submitted by:	Udo.Schweigert@siemens.com (maintainer)
MFH:		2015Q2
This commit is contained in:
Jan Beich 2015-05-16 01:19:11 +00:00
parent 4379d3cdda
commit aa07adab44
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=386495
7 changed files with 4589 additions and 2704 deletions

View File

@ -1,7 +1,7 @@
# Created by: David O'Brien (obrien@NUXI.com)
# $FreeBSD$
PORTREVISION= 8
PORTREVISION= 9
CATEGORIES= chinese
MASTERDIR= ${.CURDIR}/../../mail/mutt

View File

@ -3,7 +3,7 @@
PORTNAME= mutt
PORTVERSION= 1.5.23
PORTREVISION?= 8
PORTREVISION?= 9
CATEGORIES+= mail ipv6
MASTER_SITES= ftp://ftp.mutt.org/mutt/ \
ftp://ftp.mutt.org/mutt/devel/ \

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,5 @@
--- mutt.orig/buffy.c 2012-11-02 13:16:39.000000000 +0100
+++ mutt/buffy.c 2012-11-02 13:20:52.000000000 +0100
--- mutt.orig/buffy.c.orig 2015-04-22 08:09:04.000000000 +0200
+++ mutt/buffy.c 2015-04-22 08:12:54.000000000 +0200
@@ -26,6 +26,7 @@
#include "mx.h"
@ -8,13 +8,13 @@
#ifdef USE_IMAP
#include "imap.h"
@@ -564,19 +565,28 @@
@@ -584,19 +585,28 @@
{
case M_MBOX:
case M_MMDF:
- buffy_mbox_update (tmp);
- buffy_mbox_update (tmp, &sb);
+ if (sidebar_should_refresh()) {
+ buffy_mbox_update (tmp);
+ buffy_mbox_update (tmp, &sb);
+ sidebar_updated();
+ }
if (buffy_mbox_hasnew (tmp, &sb) > 0)
@ -26,18 +26,18 @@
+ if (sidebar_should_refresh()) {
+ buffy_maildir_update (tmp);
+ sidebar_updated();
+ }
+ }
if (buffy_maildir_hasnew (tmp) > 0)
BuffyCount++;
break;
case M_MH:
- mh_buffy_update (tmp->path, &tmp->msgcount, &tmp->msg_unread, &tmp->msg_flagged);
- mh_buffy_update (tmp->path, &tmp->msgcount, &tmp->msg_unread, &tmp->msg_flagged, &tmp->sb_last_checked);
+ if (sidebar_should_refresh()) {
+ mh_buffy_update (tmp->path, &tmp->msgcount, &tmp->msg_unread, &tmp->msg_flagged);
+ mh_buffy_update (tmp->path, &tmp->msgcount, &tmp->msg_unread, &tmp->msg_flagged, &tmp->sb_last_checked);
+ sidebar_updated();
+ }
mh_buffy(tmp);
+ }
mh_buffy(tmp);
if (tmp->new)
BuffyCount++;
Index: mutt/globals.h

View File

@ -0,0 +1,95 @@
# HG changeset patch
# User Kevin McCarthy <kevin@8t8.us>
# Date 1422238196 28800
# Node ID df55f14f45858193a4cc506065ae2c6989138c2e
# Parent a0a5e505463e9db9b365e244452eab7301c1827c
Remove GPG_AGENT_INFO check for GnuPG 2.1 compatibility. (closes #3715)
GnuPG version 2.1 stops exporting the GPG_AGENT_INFO environment
variable, so mutt can't check for the presence of that to ensure the
agent is running.
For GPGME, we can check for the OpenPGP protocol being present. For
classic pgp, we have to trust the user setting.
This patch is based on the patches sent by CustaiCo and muffins. Thank
you both for reporting the problem and creating a patch.
diff -r a0a5e505463e -r df55f14f4585 crypt-gpgme.c
--- crypt-gpgme.c Tue Jan 27 00:52:02 2015 +0100
+++ crypt-gpgme.c Sun Jan 25 18:09:56 2015 -0800
@@ -4548,27 +4548,36 @@
}
}
-/* Initialization. */
-static void init_gpgme (void)
+static void init_pgp (void)
{
- /* Make sure that gpg-agent is running. */
- if (! getenv ("GPG_AGENT_INFO"))
- {
- mutt_error (_("\nUsing GPGME backend, although no gpg-agent is running"));
- if (mutt_any_key_to_continue (NULL) == -1)
- mutt_exit(1);
- }
+ if (gpgme_engine_check_version (GPGME_PROTOCOL_OpenPGP) != GPG_ERR_NO_ERROR)
+ {
+ mutt_error (_("GPGME: OpenPGP protocol not available"));
+ if (mutt_any_key_to_continue (NULL) == -1)
+ mutt_exit(1);
+ }
+}
+
+static void init_smime (void)
+{
+ if (gpgme_engine_check_version (GPGME_PROTOCOL_CMS) != GPG_ERR_NO_ERROR)
+ {
+ mutt_error (_("GPGME: CMS protocol not available"));
+ if (mutt_any_key_to_continue (NULL) == -1)
+ mutt_exit(1);
+ }
}
void pgp_gpgme_init (void)
{
- init_common();
- init_gpgme ();
+ init_common ();
+ init_pgp ();
}
void smime_gpgme_init (void)
{
- init_common();
+ init_common ();
+ init_smime ();
}
static int gpgme_send_menu (HEADER *msg, int *redraw, int is_smime)
diff -r a0a5e505463e -r df55f14f4585 init.h
--- init.h Tue Jan 27 00:52:02 2015 +0100
+++ init.h Sun Jan 25 18:09:56 2015 -0800
@@ -1970,6 +1970,8 @@
/*
** .pp
** If \fIset\fP, mutt will use a possibly-running \fCgpg-agent(1)\fP process.
+ ** Note that as of version 2.1, GnuPG no longer exports GPG_AGENT_INFO, so
+ ** mutt no longer verifies if the agent is running.
** (PGP only)
*/
{ "pgp_verify_command", DT_STR, R_NONE, UL &PgpVerifyCommand, 0},
diff -r a0a5e505463e -r df55f14f4585 pgp.c
--- pgp.c Tue Jan 27 00:52:02 2015 +0100
+++ pgp.c Sun Jan 25 18:09:56 2015 -0800
@@ -108,7 +108,8 @@
{
char *tty;
- if (!option (OPTUSEGPGAGENT) || !getenv ("GPG_AGENT_INFO"))
+ /* GnuPG 2.1 no longer exports GPG_AGENT_INFO */
+ if (!option (OPTUSEGPGAGENT))
return 0;
if ((tty = ttyname(0)))

View File

@ -0,0 +1,18 @@
--- pgpkey.c.orig 2014-03-12 17:03:44.000000000 +0100
+++ pgpkey.c 2015-04-13 17:50:05.000000000 +0200
@@ -985,13 +985,13 @@
pgp_remove_key (&matches, k);
pgp_free_key (&matches);
- if (!p[l-1])
+ if (l && !p[l-1])
p[l-1] = '!';
return k;
}
out:
- if (!p[l-1])
+ if (l && !p[l-1])
p[l-1] = '!';
return NULL;
}