Changeset View
Changeset View
Standalone View
Standalone View
b/src/engine-gpg.c
Context not available. | |||||
static gpgme_error_t | static gpgme_error_t | ||||
append_size_arg (engine_gpg_t gpg, gpgme_data_t data) | |||||
{ | |||||
gpgme_error_t err = 0; | |||||
if (gpgme_data_get_file_size (data)) | |||||
{ | |||||
err = add_arg (gpg, "--set-filesize"); | |||||
if (!err) | |||||
{ | |||||
char *size_str; | |||||
if (asprintf (&size_str, "%llu", | |||||
gpgme_data_get_file_size (data)) < 0) | |||||
return gpg_error_from_syserror (); | |||||
err = add_arg (gpg, size_str); | |||||
free (size_str); | |||||
} | |||||
} | |||||
return err; | |||||
} | |||||
static gpgme_error_t | |||||
gpg_encrypt (void *engine, gpgme_key_t recp[], gpgme_encrypt_flags_t flags, | gpg_encrypt (void *engine, gpgme_key_t recp[], gpgme_encrypt_flags_t flags, | ||||
gpgme_data_t plain, gpgme_data_t ciph, int use_armor) | gpgme_data_t plain, gpgme_data_t ciph, int use_armor) | ||||
{ | { | ||||
Context not available. | |||||
err = add_arg (gpg, gpgme_data_get_file_name (plain)); | err = add_arg (gpg, gpgme_data_get_file_name (plain)); | ||||
} | } | ||||
if (!err) | if (!err) | ||||
err = append_size_arg (gpg, plain); | |||||
if (!err) | |||||
err = add_arg (gpg, "--"); | err = add_arg (gpg, "--"); | ||||
if (!err) | if (!err) | ||||
err = add_data (gpg, plain, -1, 0); | err = add_data (gpg, plain, -1, 0); | ||||
Context not available. | |||||
err = add_arg (gpg, gpgme_data_get_file_name (plain)); | err = add_arg (gpg, gpgme_data_get_file_name (plain)); | ||||
} | } | ||||
if (!err) | if (!err) | ||||
err = append_size_arg (gpg, plain); | |||||
if (!err) | |||||
err = add_arg (gpg, "--"); | err = add_arg (gpg, "--"); | ||||
if (!err) | if (!err) | ||||
err = add_data (gpg, plain, -1, 0); | err = add_data (gpg, plain, -1, 0); | ||||
Context not available. | |||||
if (!err) | if (!err) | ||||
err = add_arg (gpg, gpgme_data_get_file_name (in)); | err = add_arg (gpg, gpgme_data_get_file_name (in)); | ||||
} | } | ||||
if (!err) | |||||
err = append_size_arg (gpg, in); | |||||
/* Tell the gpg object about the data. */ | /* Tell the gpg object about the data. */ | ||||
if (!err) | if (!err) | ||||
Context not available. |