Add GPGME_ENCRYPT_NO_COMPRESS flag.
* src/gpgme.h.in (GPGME_ENCRYPT_NO_COMPRESS): New. * src/engine-gpg.c (gpg_encrypt, gpg_encrypt_sign): Implement it. * src/gpgme-tool.c (_cmd_sign_encrypt): Add option --no-compress.
This commit is contained in:
parent
62711e5614
commit
991cde9e79
3
NEWS
3
NEWS
@ -12,6 +12,8 @@ Noteworthy changes in version 1.5.0 (unreleased)
|
|||||||
* Add feature to use the gpgme I/O subsystem to run arbitrary
|
* Add feature to use the gpgme I/O subsystem to run arbitrary
|
||||||
commands.
|
commands.
|
||||||
|
|
||||||
|
* Add flag to force encryption without the default comprtession step.
|
||||||
|
|
||||||
* Interface changes relative to the 1.4.3 release:
|
* Interface changes relative to the 1.4.3 release:
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
gpgme_get_dirinfo NEW.
|
gpgme_get_dirinfo NEW.
|
||||||
@ -20,6 +22,7 @@ Noteworthy changes in version 1.5.0 (unreleased)
|
|||||||
GPGME_PROTOCOL_SPAWN NEW.
|
GPGME_PROTOCOL_SPAWN NEW.
|
||||||
GPGME_SPAWN_DETACHED NEW.
|
GPGME_SPAWN_DETACHED NEW.
|
||||||
GPGME_SPAWN_ALLOW_SET_FG NEW.
|
GPGME_SPAWN_ALLOW_SET_FG NEW.
|
||||||
|
GPGME_ENCRYPT_NO_COMPRESS NEW.
|
||||||
|
|
||||||
|
|
||||||
Noteworthy changes in version 1.4.3 (2013-08-12)
|
Noteworthy changes in version 1.4.3 (2013-08-12)
|
||||||
|
@ -5141,6 +5141,21 @@ The @code{GPGME_ENCRYPT_NO_ENCRYPT_TO} symbol specifies that no
|
|||||||
default or hidden default recipients as configured in the crypto
|
default or hidden default recipients as configured in the crypto
|
||||||
backend should be included. This can be useful for managing different
|
backend should be included. This can be useful for managing different
|
||||||
user profiles.
|
user profiles.
|
||||||
|
|
||||||
|
@item GPGME_ENCRYPT_NO_COMPRESS
|
||||||
|
The @code{GPGME_ENCRYPT_NO_COMPRESS} symbol specifies that the
|
||||||
|
plaintext shall not be compressed before it is encrypted. This is
|
||||||
|
in some cases useful if the length of the encrypted message
|
||||||
|
may reveal information about the plaintext.
|
||||||
|
|
||||||
|
@item GPGME_ENCRYPT_PREPARE
|
||||||
|
@itemx GPGME_ENCRYPT_EXPECT_SIGN
|
||||||
|
The @code{GPGME_ENCRYPT_PREPARE} symbol is used with the UI Server
|
||||||
|
protocol to prepare an encryption (i.e. sending the
|
||||||
|
@code{PREP_ENCRYPT} command). With the
|
||||||
|
@code{GPGME_ENCRYPT_EXPECT_SIGN} symbol the UI Server is advised to
|
||||||
|
also expect a sign command.
|
||||||
|
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
If @code{GPG_ERR_UNUSABLE_PUBKEY} is returned, some recipients in
|
If @code{GPG_ERR_UNUSABLE_PUBKEY} is returned, some recipients in
|
||||||
|
@ -1662,6 +1662,9 @@ gpg_encrypt (void *engine, gpgme_key_t recp[], gpgme_encrypt_flags_t flags,
|
|||||||
if (!err && use_armor)
|
if (!err && use_armor)
|
||||||
err = add_arg (gpg, "--armor");
|
err = add_arg (gpg, "--armor");
|
||||||
|
|
||||||
|
if (!err && (flags & GPGME_ENCRYPT_NO_COMPRESS))
|
||||||
|
err = add_arg (gpg, "--compress-algo=none");
|
||||||
|
|
||||||
if (!symmetric)
|
if (!symmetric)
|
||||||
{
|
{
|
||||||
/* If we know that all recipients are valid (full or ultimate trust)
|
/* If we know that all recipients are valid (full or ultimate trust)
|
||||||
@ -1719,6 +1722,9 @@ gpg_encrypt_sign (void *engine, gpgme_key_t recp[],
|
|||||||
if (!err && use_armor)
|
if (!err && use_armor)
|
||||||
err = add_arg (gpg, "--armor");
|
err = add_arg (gpg, "--armor");
|
||||||
|
|
||||||
|
if (!err && (flags & GPGME_ENCRYPT_NO_COMPRESS))
|
||||||
|
err = add_arg (gpg, "--compress-algo=none");
|
||||||
|
|
||||||
if (!symmetric)
|
if (!symmetric)
|
||||||
{
|
{
|
||||||
/* If we know that all recipients are valid (full or ultimate trust)
|
/* If we know that all recipients are valid (full or ultimate trust)
|
||||||
|
@ -2806,6 +2806,8 @@ _cmd_sign_encrypt (assuan_context_t ctx, char *line, int sign)
|
|||||||
flags |= GPGME_ENCRYPT_PREPARE;
|
flags |= GPGME_ENCRYPT_PREPARE;
|
||||||
if (strstr (line, "--expect-sign"))
|
if (strstr (line, "--expect-sign"))
|
||||||
flags |= GPGME_ENCRYPT_EXPECT_SIGN;
|
flags |= GPGME_ENCRYPT_EXPECT_SIGN;
|
||||||
|
if (strstr (line, "--no-compress"))
|
||||||
|
flags |= GPGME_ENCRYPT_NO_COMPRESS;
|
||||||
|
|
||||||
inp_fd = server->input_fd;
|
inp_fd = server->input_fd;
|
||||||
inp_fn = server->input_filename;
|
inp_fn = server->input_filename;
|
||||||
@ -2842,7 +2844,7 @@ _cmd_sign_encrypt (assuan_context_t ctx, char *line, int sign)
|
|||||||
|
|
||||||
static const char hlp_encrypt[] =
|
static const char hlp_encrypt[] =
|
||||||
"ENCRYPT [--always-trust] [--no-encrypt-to]\n"
|
"ENCRYPT [--always-trust] [--no-encrypt-to]\n"
|
||||||
" [--prepare] [--expect-sign]\n"
|
" [--no-compress] [--prepare] [--expect-sign]\n"
|
||||||
"\n"
|
"\n"
|
||||||
"Encrypt the object set by the last INPUT command to\n"
|
"Encrypt the object set by the last INPUT command to\n"
|
||||||
"the keys specified by previous RECIPIENT commands. \n"
|
"the keys specified by previous RECIPIENT commands. \n"
|
||||||
@ -2857,7 +2859,7 @@ cmd_encrypt (assuan_context_t ctx, char *line)
|
|||||||
|
|
||||||
static const char hlp_sign_encrypt[] =
|
static const char hlp_sign_encrypt[] =
|
||||||
"SIGN_ENCRYPT [--always-trust] [--no-encrypt-to]\n"
|
"SIGN_ENCRYPT [--always-trust] [--no-encrypt-to]\n"
|
||||||
" [--prepare] [--expect-sign]\n"
|
" [--no-compress] [--prepare] [--expect-sign]\n"
|
||||||
"\n"
|
"\n"
|
||||||
"Sign the object set by the last INPUT command with the\n"
|
"Sign the object set by the last INPUT command with the\n"
|
||||||
"keys specified by previous SIGNER commands and encrypt\n"
|
"keys specified by previous SIGNER commands and encrypt\n"
|
||||||
|
@ -1283,7 +1283,8 @@ typedef enum
|
|||||||
GPGME_ENCRYPT_ALWAYS_TRUST = 1,
|
GPGME_ENCRYPT_ALWAYS_TRUST = 1,
|
||||||
GPGME_ENCRYPT_NO_ENCRYPT_TO = 2,
|
GPGME_ENCRYPT_NO_ENCRYPT_TO = 2,
|
||||||
GPGME_ENCRYPT_PREPARE = 4,
|
GPGME_ENCRYPT_PREPARE = 4,
|
||||||
GPGME_ENCRYPT_EXPECT_SIGN = 8
|
GPGME_ENCRYPT_EXPECT_SIGN = 8,
|
||||||
|
GPGME_ENCRYPT_NO_COMPRESS = 16
|
||||||
}
|
}
|
||||||
gpgme_encrypt_flags_t;
|
gpgme_encrypt_flags_t;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user