addstr (_("Sign"));
else
addstr (_("Clear"));
+
+ if ((WithCrypto & APPLICATION_PGP))
+ if ((msg->security & (ENCRYPT | SIGN)))
+ {
+ if ((msg->security & INLINE))
+ addstr (_(" (inline)"));
+ else
+ addstr (_(" (PGP/MIME)"));
+ }
clrtoeol ();
move (HDR_CRYPTINFO, 0);
if (!(WithCrypto & APPLICATION_PGP))
return msg->security;
- switch (mutt_multi_choice (_("PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "),
- _("esabf")))
+ switch (mutt_multi_choice (_("PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "),
+ _("esabif")))
{
case 1: /* (e)ncrypt */
- msg->security |= ENCRYPT;
+ msg->security ^= ENCRYPT;
break;
case 2: /* (s)ign */
- msg->security |= SIGN;
+ msg->security ^= SIGN;
break;
case 3: /* sign (a)s */
break;
case 4: /* (b)oth */
- msg->security = ENCRYPT | SIGN;
+ if ((msg->security & (ENCRYPT | SIGN)) == (ENCRYPT | SIGN))
+ msg->security = 0;
+ else
+ msg->security |= (ENCRYPT | SIGN);
break;
- case 5: /* (f)orget it */
+ case 5: /* (i)nline */
+ if ((msg->security & (ENCRYPT | SIGN)))
+ msg->security ^= INLINE;
+ else
+ msg->security &= ~INLINE;
+ break;
+
+ case 6: /* (f)orget it */
msg->security = 0;
break;
}
- if (msg->security && msg->security != APPLICATION_PGP)
- msg->security |= APPLICATION_PGP;
- else
- msg->security = 0;
+ if (msg->security)
+ {
+ if (! (msg->security & (ENCRYPT | SIGN)))
+ msg->security = 0;
+ else
+ msg->security |= APPLICATION_PGP;
+ }
if(*redraw)
redraw_crypt_lines (msg);
-int mutt_protect (HEADER *msg, HEADER *cur, char *keylist)
+int mutt_protect (HEADER *msg, char *keylist)
{
BODY *pbody = NULL, *tmp_pbody = NULL;
BODY *tmp_smime_pbody = NULL;
BODY *tmp_pgp_pbody = NULL;
- int traditional = 0;
int flags = (WithCrypto & APPLICATION_PGP)? msg->security: 0;
int i;
if ((msg->security & SIGN) && !crypt_valid_passphrase (msg->security))
return (-1);
- if ((WithCrypto & APPLICATION_PGP) && (msg->security & APPLICATION_PGP))
+ if ((WithCrypto & APPLICATION_PGP) && ((msg->security & PGPINLINE) == PGPINLINE))
{
- if ((msg->content->type == TYPETEXT) &&
- !ascii_strcasecmp (msg->content->subtype, "plain"))
+ /* they really want to send it inline... go for it */
+ if (!isendwin ()) mutt_endwin _("Invoking PGP...");
+ pbody = crypt_pgp_traditional_encryptsign (msg->content, flags, keylist);
+ if (pbody)
{
- if (cur && cur->security && option (OPTPGPAUTOTRAD)
- && (option (OPTCRYPTREPLYENCRYPT)
- || option (OPTCRYPTREPLYSIGN)
- || option (OPTCRYPTREPLYSIGNENCRYPTED)))
- {
- if(mutt_is_application_pgp(cur->content))
- traditional = 1;
- }
- else
- {
- if ((i = query_quadoption (OPT_PGPTRADITIONAL, _("Create a traditional (inline) PGP message?"))) == -1)
- return -1;
- else if (i == M_YES)
- traditional = 1;
- }
- }
- if (traditional)
- {
- if (!isendwin ()) mutt_endwin _("Invoking PGP...");
- if (!(pbody = crypt_pgp_traditional_encryptsign (msg->content, flags, keylist)))
- return -1;
-
msg->content = pbody;
return 0;
}
+
+ /* otherwise inline won't work...ask for revert */
+ if ((i = query_quadoption (OPT_PGPMIMEASK, _("Message can't be sent inline. Revert to using PGP/MIME?"))) != M_YES)
+ return -1;
+
+ /* go ahead with PGP/MIME */
}
if (!isendwin ()) mutt_endwin (NULL);
else if (p && !ascii_strncasecmp ("pgp-keys", p, 7))
t |= PGPKEY;
}
+ if (t)
+ t |= PGPINLINE;
+
return t;
}
** removed, while the inner multipart/signed part is retained.
** (PGP only)
*/
+ { "pgp_create_traditional", DT_SYN, R_NONE, UL "pgp_autoinline", 0 },
+ { "pgp_autoinline", DT_BOOL, R_NONE, OPTPGPAUTOINLINE, 0 },
+ /*
+ ** .pp
+ ** This option controls whether Mutt generates old-style inline
+ ** (traditional) PGP encrypted or signed messages under certain
+ ** circumstances. This can be overridden by use of the \fIpgp-menu\fP,
+ ** when inline is not required.
+ ** .pp
+ ** Note that Mutt might automatically use PGP/MIME for messages
+ ** which consist of more than a single MIME part. Mutt can be
+ ** configured to ask before sending PGP/MIME messages when inline
+ ** (traditional) would not work.
+ ** See also: ``$$pgp_mime_ask''.
+ ** .pp
+ ** Also note that using the old-style PGP message format is \fBstrongly\fP
+ ** \fBdeprecated\fP.
+ ** (PGP only)
+ */
+ { "pgp_auto_traditional", DT_SYN, R_NONE, UL "pgp_replyinline", 0 },
+ { "pgp_replyinline", DT_BOOL, R_NONE, OPTPGPREPLYINLINE, 0 },
+ /*
+ ** .pp
+ ** Setting this variable will cause Mutt to always attempt to
+ ** create an inline (traditional) message when replying to a
+ ** message which is PGP encrypted/signed inline. This can be
+ ** overridden by use of the \fIpgp-menu\fP, when inline is not
+ ** required. This option does not automatically detect if the
+ ** (replied-to) message is inline; instead it relies on Mutt
+ ** internals for previously checked/flagged messages.
+ ** .pp
+ ** Note that Mutt might automatically use PGP/MIME for messages
+ ** which consist of more than a single MIME part. Mutt can be
+ ** configured to ask before sending PGP/MIME messages when inline
+ ** (traditional) would not work.
+ ** See also: ``$$pgp_mime_ask''.
+ ** .pp
+ ** Also note that using the old-style PGP message format is \fBstrongly\fP
+ ** \fBdeprecated\fP.
+ ** (PGP only)
+ **
+ */
{ "pgp_show_unusable", DT_BOOL, R_NONE, OPTPGPSHOWUNUSABLE, 1 },
/*
** .pp
** `reverse-'.
** (PGP only)
*/
- { "pgp_create_traditional", DT_QUAD, R_NONE, OPT_PGPTRADITIONAL, M_NO },
+ { "pgp_mime_ask", DT_QUAD, R_NONE, OPT_PGPMIMEASK, M_NO },
/*
** .pp
- ** This option controls whether Mutt generates old-style inline PGP
- ** encrypted or signed messages.
- ** .pp
- ** Note that PGP/MIME will be used automatically for messages which have
- ** a character set different from us-ascii, or which consist of more than
- ** a single MIME part.
+ ** This option controls whether Mutt will prompt you for
+ ** automatically sending a (signed/encrypted) message using
+ ** PGP/MIME when inline (traditional) fails (for any reason).
** .pp
** Also note that using the old-style PGP message format is \fBstrongly\fP
** \fBdeprecated\fP.
** (PGP only)
*/
- { "pgp_auto_traditional", DT_BOOL, R_NONE, OPTPGPAUTOTRAD, 0 },
- /*
- ** .pp
- ** This option causes Mutt to generate an old-style inline PGP
- ** encrypted or signed message when replying to an old-style
- ** message, and a PGP/MIME message when replying to a PGP/MIME
- ** message. Note that this option is only meaningful when using
- ** ``$$crypt_replyencrypt'', ``$$crypt_replysign'', or
- ** ``$$crypt_replysignencrypted''.
- ** .pp
- ** Also note that PGP/MIME will be used automatically for messages
- ** which have a character set different from us-ascii, or which
- ** consist of more than a single MIME part.
- ** .pp
- ** This option overrides ``$$pgp_create_traditional''
- ** (PGP only)
- */
/* XXX Default values! */
+
/*
* Copyright (C) 1996-2002 Michael R. Elkins <me@mutt.org>
*
OPT_MIMEFWD,
OPT_MIMEFWDREST,
OPT_MOVE,
- OPT_PGPTRADITIONAL, /* create old-style PGP messages */
+ OPT_PGPMIMEASK, /* ask to revert to PGP/MIME when inline fails */
#ifdef USE_POP
OPT_POPDELETE,
OPT_POPRECONNECT,
OPTPGPIGNORESUB,
OPTPGPCHECKEXIT,
OPTPGPLONGIDS,
- OPTPGPAUTOTRAD,
#if 0
OPTPGPENCRYPTSELF,
#endif
OPTPGPSTRICTENC,
OPTFORWDECRYPT,
OPTPGPSHOWUNUSABLE,
+ OPTPGPAUTOINLINE,
+ OPTPGPREPLYINLINE,
/* pseudo options */
typedef struct header
{
- unsigned int security : 10; /* bit 0-6: flags, bit 7,8: application.
+ unsigned int security : 11; /* bit 0-6: flags, bit 7,8: application.
see: crypt.h pgplib.h, smime.h */
unsigned int mime : 1; /* has a Mime-Version header? */
#define BADSIGN (1 << 3)
#define PARTSIGN (1 << 4)
#define SIGNOPAQUE (1 << 5)
-/* (1 << 6) is used by PGPKEY below. */
+#define KEYBLOCK (1 << 6) /* KEY too generic? */
+#define INLINE (1 << 7)
-#define APPLICATION_PGP (1 << 7)
-#define APPLICATION_SMIME (1 << 8)
+#define APPLICATION_PGP (1 << 8)
+#define APPLICATION_SMIME (1 << 9)
-#define PGP_TRADITIONAL_CHECKED (1 << 9)
+#define PGP_TRADITIONAL_CHECKED (1 << 10)
#define PGPENCRYPT (APPLICATION_PGP | ENCRYPT)
#define PGPSIGN (APPLICATION_PGP | SIGN)
#define PGPGOODSIGN (APPLICATION_PGP | GOODSIGN)
-#define PGPKEY (APPLICATION_PGP | (1 << 6))
+#define PGPKEY (APPLICATION_PGP | KEYBLOCK)
+#define PGPINLINE (APPLICATION_PGP | INLINE)
#define SMIMEENCRYPT (APPLICATION_SMIME | ENCRYPT)
#define SMIMESIGN (APPLICATION_SMIME | SIGN)
/* Some prototypes -- old crypt.h. */
-int mutt_protect (HEADER *, HEADER *, char *);
+int mutt_protect (HEADER *, char *);
int mutt_is_multipart_encrypted (BODY *);
msgstr "Xifra amb: "
#: compose.c:165
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
-msgstr "PGP: (x)ifra, (s)igna, si(g)na com a, (a)mbdós, o en (c)lar? "
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
+msgstr "PGP: (x)ifra, (s)igna, si(g)na com a, (a)mbdós, en (l)ínia, o en (c)lar? "
# ivb (2003/03/26)
-# ivb (x)ifra, (s)igna, si(g)na com a, (a)mbdós, (c)lar
+# ivb (x)ifra, (s)igna, si(g)na com a, (a)mbdós, en (l)ínia, o en (c)lar
#: compose.c:166
-msgid "esabf"
-msgstr "xsgac"
+msgid "esabif"
+msgstr "xsgalc"
#. sign (a)s
#: compose.c:179 compose.c:269
#
#: compose.c:165
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
-msgstr "PGP - (¹)ifrovat, (p)odepsat, podepsat (j)ako, (o)bojí, èi (n)ic?"
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
+msgstr "PGP - (¹)ifrovat, (p)odepsat, podepsat (j)ako, (o)bojí, pøí(m)ý, èi (n)ic?"
#
#: compose.c:166
-msgid "esabf"
-msgstr "¹pjon"
+msgid "esabif"
+msgstr "¹pjomn"
#
#. sign (a)s
#: compose.c:165
#, fuzzy
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
-msgstr "(k)ryptér, (u)nderskriv, underskriv (s)om, (b)egge, (i)ngen PGP"
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
+msgstr "(k)ryptér, (u)nderskriv, underskriv (s)om, (b)egge, i(n)tegreret, (i)ngen PGP"
#: compose.c:166
-msgid "esabf"
-msgstr "kusbi"
+msgid "esabif"
+msgstr "kusbni"
#. sign (a)s
#: compose.c:179 compose.c:269
msgstr "Verschlüsseln mit: "
#: compose.c:165
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
-msgstr "PGP (v)erschl., (s)ign., sign. (a)ls, (b)eides, (k)ein PGP? "
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
+msgstr "PGP (v)erschl., (s)ign., sign. (a)ls, (b)eides, (i)nline, (k)ein PGP? "
#: compose.c:166
-msgid "esabf"
-msgstr "vsabk"
+msgid "esabif"
+msgstr "vsabik"
#. sign (a)s
#: compose.c:179 compose.c:269
#
# compose.c:132
#: compose.c:165
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
-msgstr "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, Þ (f)orget it? "
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
+msgstr "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)êåßìåíï, Þ (f)orget it? "
#
# compose.c:133
#: compose.c:166
-msgid "esabf"
-msgstr "esabf"
+msgid "esabif"
+msgstr "esabif"
#
#. sign (a)s
msgstr "Æifri per: "
#: compose.c:165
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
-msgstr "PGP æ(i)fri, (s)ubskribi, subskribi (k)iel, (a)mbaý, aý (f)orgesi? "
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
+msgstr "PGP æ(i)fri, (s)ubskribi, subskribi (k)iel, (a)mbaý, \"i(n)line\", aý (f)orgesi? "
#: compose.c:166
-msgid "esabf"
-msgstr "iskaf"
+msgid "esabif"
+msgstr "iskanf"
#. sign (a)s
#: compose.c:179 compose.c:269
#: compose.c:165
#, fuzzy
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
-msgstr "¿co(d)ificar, f(i)rmar (c)omo, amb(o)s o ca(n)celar? "
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
+msgstr "¿co(d)ificar, f(i)rmar (c)omo, amb(o)s, inc(l)uido, o ca(n)celar? "
+
#: compose.c:166
#, fuzzy
-msgid "esabf"
-msgstr "dicon"
+msgid "esabif"
+msgstr "dicoln"
#. sign (a)s
#: compose.c:179 compose.c:269
msgstr "Krüpti kasutades: "
#: compose.c:165
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
-msgstr "PGP (k)rüpti, (a)llkiri, allk. ku(i), (m)õlemad või (u)nusta? "
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
+msgstr "PGP (k)rüpti, (a)llkiri, allk. ku(i), (m)õlemad, k(e)hasse, või (u)nusta? "
#: compose.c:166
-msgid "esabf"
-msgstr "kaimu"
+msgid "esabif"
+msgstr "kaimeu"
#. sign (a)s
#: compose.c:179 compose.c:269
msgstr "Chiffrer avec : "
#: compose.c:165
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
-msgstr "(c)hiffrer PGP, (s)igner, (e)n tant que, les (d)eux, ou (o)ublier ? "
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
+msgstr "(c)hiffrer PGP, (s)igner, (e)n tant que, les (d)eux, en (l)igne, ou (o)ublier ? "
#: compose.c:166
-msgid "esabf"
-msgstr "csedo"
+msgid "esabif"
+msgstr "csedlo"
#. sign (a)s
#: compose.c:179 compose.c:269
#: compose.c:165
#, fuzzy
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
-msgstr "¿(e)ncriptar, (f)irmar, firmar (c)omo, (a)mbas ou (o)lvidar? "
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
+msgstr "¿(e)ncriptar, (f)irmar, firmar (c)omo, (a)mbas, (i)nterior, ou (o)lvidar? "
#: compose.c:166
-msgid "esabf"
-msgstr "efcao"
+msgid "esabif"
+msgstr "efcaio"
#. sign (a)s
#: compose.c:179 compose.c:269
msgstr "Titkosítás: "
#: compose.c:165
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
-msgstr "PGP (t)itkosít, (a)láír, aláír (m)int, titkosít é(s) aláír, mé(g)se? "
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
+msgstr "PGP (t)itkosít, (a)láír, aláír (m)int, titkosít é(s) aláír, (b)eágyazott, mé(g)se? "
#: compose.c:166
-msgid "esabf"
-msgstr "tamsg"
+msgid "esabif"
+msgstr "tamsbg"
#. sign (a)s
#: compose.c:179 compose.c:269
msgstr "Enkrip dengan: "
#: compose.c:165
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
-msgstr "PGP (e)nkrip, (t)andatangan, tandatangan (s)bg, ke(d)uanya, (b)atal? "
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
+msgstr "PGP (e)nkrip, (t)andatangan, tandatangan (s)bg, ke(d)uanya, (i)nline, (b)atal? "
#: compose.c:166
-msgid "esabf"
-msgstr "etsdb"
+msgid "esabif"
+msgstr "etsdib"
#. sign (a)s
#: compose.c:179 compose.c:269
#: compose.c:165
#, fuzzy
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
-msgstr "cifra(e), firma(s), firma come(a), entrambi(b), annulla(f) "
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
+msgstr "cifra(e), firma(s), firma come(a), entrambi(b), in l(i)nea , annulla(f) "
#: compose.c:166
-msgid "esabf"
-msgstr "esabf"
+msgid "esabif"
+msgstr "esabif"
#. sign (a)s
#: compose.c:179 compose.c:269
msgstr " °Å¹æ²½Êý¼°: "
#: compose.c:165
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
-msgstr "PGP (e)°Å¹æ²½,(s)½ð̾,(a)..¤È¤·¤Æ½ð̾,(b)ξ¼Ô,(f)²ò½ü?"
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
+msgstr "PGP (e)°Å¹æ²½,(s)½ð̾,(a)..¤È¤·¤Æ½ð̾,(b)ξ¼Ô,(i)nline,(f)²ò½ü?"
#: compose.c:166
-msgid "esabf"
-msgstr "esabf"
+msgid "esabif"
+msgstr "esabif"
#. sign (a)s
#: compose.c:179 compose.c:269
msgstr "¾ÏÈ£È ¹æ½Ä: "
#: compose.c:165
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
-msgstr "PGP ¾ÏÈ£È(e), ¼¸í(s), »ç¿ë ¼¸í(a), µÑ ´Ù(b), Ãë¼Ò(f)? "
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
+msgstr "PGP ¾ÏÈ£È(e), ¼¸í(s), »ç¿ë ¼¸í(a), µÑ ´Ù(b), (i)nline, Ãë¼Ò(f)? "
#: compose.c:166
-msgid "esabf"
-msgstr "esabf"
+msgid "esabif"
+msgstr "esabif"
#. sign (a)s
#: compose.c:179 compose.c:269
#: compose.c:165
#, fuzzy
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
msgstr ""
-"(u)þðifruot, pa(s)iraðyt, pasiraðyt k(a)ip, a(b)u, rinktis (m)ic algoritmà, "
+"(u)þðifruot, pa(s)iraðyt, pasiraðyt k(a)ip, a(b)u, (l)aiðke, "
"ar (p)amirðti?"
#: compose.c:166
#, fuzzy
-msgid "esabf"
-msgstr "usabmp"
+msgid "esabif"
+msgstr "usablp"
#. sign (a)s
#: compose.c:179 compose.c:269
msgid ""
"S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (f)orget it? "
msgstr ""
-"(u)þðifruot, pa(s)iraðyt, pasiraðyt k(a)ip, a(b)u, rinktis (m)ic algoritmà, "
-"ar (p)amirðti?"
+"(u)þðifruot, pa(s)iraðyt, uþðifruo(t) su, pasiraðyt k(a)ip, a(b)u, ar (p)amirðti?"
#: compose.c:228
#, fuzzy
msgid "eswabf"
-msgstr "usabmp"
+msgstr "ustabp"
#: compose.c:236
msgid ""
msgstr "Versleutelen met: "
#: compose.c:165
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
-msgstr "PGP (v)ersleutel, (o)ndertekenen, ondert. (a)ls, (b)eiden, (g)een? "
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
+msgstr "PGP (v)ersleutel, (o)ndertekenen, ondert. (a)ls, (b)eiden, ber(i)cht, (g)een? "
#: compose.c:166
-msgid "esabf"
-msgstr "voabg"
+msgid "esabif"
+msgstr "voabig"
#. sign (a)s
#: compose.c:179 compose.c:269
msgstr "Zaszyfruj u¿ywaj±c: "
#: compose.c:165
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
-msgstr "PGP: (z)aszyfruj, podpi(s)z, podpisz j(a)ko, o(b)a, b(e)z PGP? "
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
+msgstr "PGP: (z)aszyfruj, podpi(s)z, podpisz j(a)ko, o(b)a, (i)nline, b(e)z PGP? "
#: compose.c:166
-msgid "esabf"
-msgstr "zsabe"
+msgid "esabif"
+msgstr "zsabie"
#. sign (a)s
#: compose.c:179 compose.c:269
#: compose.c:165
#, fuzzy
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
msgstr ""
-"(e)ncripa, a(s)sina, assina (c)omo, (a)mbos, escolhe (m)ic, ou es(q)uece? "
+"(e)ncripa, a(s)sina, assina (c)omo, (a)mbos, em l(i)nha, ou es(q)uece? "
#: compose.c:166
#, fuzzy
-msgid "esabf"
-msgstr "escamq"
+msgid "esabif"
+msgstr "escaiq"
#. sign (a)s
#: compose.c:179 compose.c:269
msgid ""
"S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (f)orget it? "
msgstr ""
-"(e)ncripa, a(s)sina, assina (c)omo, (a)mbos, escolhe (m)ic, ou es(q)uece? "
+"(e)ncripa, a(s)sina, e(n)cripa com, assina (c)omo, (a)mbos, ou es(q)uece? "
#: compose.c:228
#, fuzzy
msgid "eswabf"
-msgstr "escamq"
+msgstr "esncaq"
#: compose.c:236
msgid ""
msgstr "úÁÛÉÆÒÏ×ÁÔØ: "
#: compose.c:165
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
-msgstr "PGP (e)ÛÉÆÒ, (s)ÐÏÄÐÉÓØ, (a)ÐÏÄÐÉÓØ ËÁË, (b)ÏÂÁ, (f)ÏÔËÁÚÁÔØÓÑ? "
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
+msgstr "PGP (e)ÛÉÆÒ, (s)ÐÏÄÐÉÓØ, (a)ÐÏÄÐÉÓØ ËÁË, (b)ÏÂÁ, (i)nline, (f)ÏÔËÁÚÁÔØÓÑ? "
#: compose.c:166
-msgid "esabf"
-msgstr "esabf"
+msgid "esabif"
+msgstr "esabif"
#. sign (a)s
#: compose.c:179 compose.c:269
#: compose.c:165
#, fuzzy
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
msgstr ""
-"(e)-¹ifr, (s)-podp, podp (a)ko, o(b)e, oznaè alg. mi(c), alebo (f)-zabudnú» "
+"(e)-¹ifr, (s)-podp, podp (a)ko, o(b)e, (i)nline, alebo (f)-zabudnú» "
"na to? "
#: compose.c:166
#, fuzzy
-msgid "esabf"
-msgstr "esabmf"
+msgid "esabif"
+msgstr "esabif"
#. sign (a)s
#: compose.c:179 compose.c:269
msgid ""
"S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (f)orget it? "
msgstr ""
-"(e)-¹ifr, (s)-podp, podp (a)ko, o(b)e, oznaè alg. mi(c), alebo (f)-zabudnú» "
-"na to? "
+"(e)-¹ifr, (s)-podp, (w)-¹ifr s, podp (a)ko, o(b)e, alebo (f)-zabudnú» na to? "
#: compose.c:228
#, fuzzy
msgid "eswabf"
-msgstr "esabmf"
+msgstr "eswabf"
#: compose.c:236
msgid ""
msgstr "Kryptera med: "
#: compose.c:165
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
-msgstr "PGP: (k)ryptera, (s)ignera, signera s(o)m, (b)åda, eller sk(i)ppa det?"
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
+msgstr "PGP: (k)ryptera, (s)ignera, signera s(o)m, (b)åda, i(n)fogat, eller sk(i)ppa det?"
#: compose.c:166
-msgid "esabf"
-msgstr "ksobi"
+msgid "esabif"
+msgstr "ksobni"
#. sign (a)s
#: compose.c:179 compose.c:269
#: compose.c:165
#, fuzzy
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
msgstr ""
-"þ(i)frele, i(m)zala, (f)arklý imzala, i(k)isi de, mi(c) algoritmini seç "
+"þ(i)frele, i(m)zala, (f)arklý imzala, i(k)isi de, (i)nline, "
"yoksa i(p)talmý? "
#: compose.c:166
-msgid "esabf"
-msgstr "imfkcp"
+msgid "esabif"
+msgstr "imfkip"
#. sign (a)s
#: compose.c:179 compose.c:269
#: compose.c:165
#, fuzzy
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
-msgstr "ÛÉÆÒ.(e), ЦÄÐ.(s), ЦÄÐ. ÑË(a), ÕÓÅ(b) ÞÉ ×¦ÄͦÎÁ(f)? "
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
+msgstr "ÛÉÆÒ.(e), ЦÄÐ.(s), ЦÄÐ. ÑË(a), ÕÓÅ(b), (i)nline ÞÉ ×¦ÄͦÎÁ(f)? "
#: compose.c:166
-msgid "esabf"
-msgstr ""
+msgid "esabif"
+msgstr "esabif"
#. sign (a)s
#: compose.c:179 compose.c:269
#: compose.c:165
#, fuzzy
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
msgstr ""
-"(e)¼ÓÃÜ, (s)Ç©Ãû, (a)ÓñðµÄÉí·ÝÇ©, (b)Á½Õß½ÔÒª, Ñ¡Ôñ (m)ic ÑÝËã·¨ »ò (f)·Å"
+"(e)¼ÓÃÜ, (s)Ç©Ãû, (a)ÓñðµÄÉí·ÝÇ©, (b)Á½Õß½ÔÒª, (i)nline, »ò (f)·Å"
"Æú£¿"
#: compose.c:166
-msgid "esabf"
-msgstr ""
+msgid "esabif"
+msgstr "esabif"
#. sign (a)s
#: compose.c:179 compose.c:269
#: compose.c:165
#, fuzzy
-msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "
+msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (i)nline, or (f)orget it? "
msgstr "(1)加密, (2)簽名, (3)用別的身份簽, (4)兩者皆要, 或 (5)放棄?"
#: compose.c:166
-msgid "esabf"
-msgstr "12345"
+msgid "esabif"
+msgstr "1234i5"
#. sign (a)s
#: compose.c:179 compose.c:269
*q = '\0';
break;
+ case 'i':
+ case 'I':
+ pgp |= INLINE;
+ break;
+
default:
mutt_error _("Illegal PGP header");
return 0;
msg->security |= SIGN;
if (option (OPTCRYPTREPLYSIGNENCRYPTED) && cur && (cur->security & ENCRYPT))
msg->security |= SIGN;
- }
+ if (WithCrypto & APPLICATION_PGP && (msg->security & (ENCRYPT | SIGN)))
+ {
+ if (option (OPTPGPAUTOINLINE))
+ msg->security |= INLINE;
+ if (option (OPTPGPREPLYINLINE) && cur && (cur->security & INLINE))
+ msg->security |= INLINE;
+ }
+ }
if (WithCrypto && msg->security)
{
clear_content = msg->content;
if ((crypt_get_keys (msg, &pgpkeylist) == -1) ||
- mutt_protect (msg, cur, pgpkeylist) == -1)
+ mutt_protect (msg, pgpkeylist) == -1)
{
msg->content = mutt_remove_multipart (msg->content);
/* this means writing only the main part */
msg->content = clear_content->parts;
- if (mutt_protect (msg, cur, pgpkeylist) == -1)
+ if (mutt_protect (msg, pgpkeylist) == -1)
{
/* we can't do much about it at this point, so
* fallback to saving the whole thing to fcc
if (PgpSignAs && *PgpSignAs)
fprintf (msg->fp, "<%s>", PgpSignAs);
}
+ if (hdr->security & INLINE)
+ fputc ('I', msg->fp);
fputc ('\n', msg->fp);
}
if (SmimeDefaultKey && *SmimeDefaultKey)
fprintf (msg->fp, "<%s>", SmimeDefaultKey);
}
+ if (hdr->security & INLINE)
+ fputc ('I', msg->fp);
fputc ('\n', msg->fp);
}