mirror of
git://git.gnupg.org/gnupg.git
synced 2025-07-02 22:46:30 +02:00
Use gpgrt_b64* API of libgpg-error.
* common/Makefile.am (common_sources): Remove b64enc.c and b64dec.c. (module_maint_tests): Remove t-b64. (t_b64_LDADD): Remove. * common/util.h: Remove the internal API. * common/ssh-utils.c (get_fingerprint): Use the gpgrt_b64 API. (ssh_public_key_in_base64): Likewise. * dirmngr/crlfetch.c (my_es_read, crl_close_reader): Likewise. * dirmngr/dirmngr-client.c (data_cb, do_lookup): Likewise. * dirmngr/misc.c (armor_data): Likewise. * g10/export.c (export_one_ssh_key, export_secret_ssh_key): Likewise. * tools/gpg-card.c (cmd_writecert): Likewise. * tools/mime-parser.c (parse_message_cb, mime_parser_release) (process_part_data): Likewise. * tools/wks-util.c (wks_armor_key): Likewise. -- GnuPG-bug-id: 6734 Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
This commit is contained in:
parent
34f812475e
commit
26939ea222
10 changed files with 75 additions and 99 deletions
|
@ -39,10 +39,10 @@
|
|||
2008) we need a context in the reader callback. */
|
||||
struct reader_cb_context_s
|
||||
{
|
||||
estream_t fp; /* The stream used with the ksba reader. */
|
||||
int checked:1; /* PEM/binary detection ahs been done. */
|
||||
int is_pem:1; /* The file stream is PEM encoded. */
|
||||
struct b64state b64state; /* The state used for Base64 decoding. */
|
||||
estream_t fp; /* The stream used with the ksba reader. */
|
||||
unsigned int checked:1; /* PEM/binary detection ahs been done. */
|
||||
unsigned int is_pem:1; /* The file stream is PEM encoded. */
|
||||
gpgrt_b64state_t b64state; /* The state used for Base64 decoding. */
|
||||
};
|
||||
|
||||
|
||||
|
@ -126,14 +126,16 @@ my_es_read (void *opaque, char *buffer, size_t nbytes, size_t *nread)
|
|||
else
|
||||
{
|
||||
cb_ctx->is_pem = 1;
|
||||
b64dec_start (&cb_ctx->b64state, "");
|
||||
cb_ctx->b64state = gpgrt_b64dec_start ("");
|
||||
if (!cb_ctx->b64state)
|
||||
return gpg_error_from_syserror ();
|
||||
}
|
||||
}
|
||||
if (cb_ctx->is_pem && *nread)
|
||||
{
|
||||
size_t nread2;
|
||||
|
||||
if (b64dec_proc (&cb_ctx->b64state, buffer, *nread, &nread2))
|
||||
if (gpgrt_b64dec_proc (cb_ctx->b64state, buffer, *nread, &nread2))
|
||||
{
|
||||
/* EOF from decoder. */
|
||||
*nread = 0;
|
||||
|
@ -581,7 +583,7 @@ crl_close_reader (ksba_reader_t reader)
|
|||
es_fclose (cb_ctx->fp);
|
||||
/* Release the base64 decoder state. */
|
||||
if (cb_ctx->is_pem)
|
||||
b64dec_finish (&cb_ctx->b64state);
|
||||
gpgrt_b64dec_finish (cb_ctx->b64state);
|
||||
/* Release the callback context. */
|
||||
xfree (cb_ctx);
|
||||
}
|
||||
|
|
|
@ -441,11 +441,11 @@ static gpg_error_t
|
|||
data_cb (void *opaque, const void *buffer, size_t length)
|
||||
{
|
||||
gpg_error_t err;
|
||||
struct b64state *state = opaque;
|
||||
gpgrt_b64state_t state = opaque;
|
||||
|
||||
if (buffer)
|
||||
{
|
||||
err = b64enc_write (state, buffer, length);
|
||||
err = gpgrt_b64enc_write (state, buffer, length);
|
||||
if (err)
|
||||
log_error (_("error writing base64 encoding: %s\n"),
|
||||
gpg_strerror (err));
|
||||
|
@ -853,14 +853,14 @@ do_lookup (assuan_context_t ctx, const char *pattern)
|
|||
gpg_error_t err;
|
||||
const unsigned char *s;
|
||||
char *line, *p;
|
||||
struct b64state state;
|
||||
gpgrt_b64state_t state;
|
||||
|
||||
if (opt.verbose)
|
||||
log_info (_("looking up '%s'\n"), pattern);
|
||||
|
||||
err = b64enc_start (&state, stdout, NULL);
|
||||
if (err)
|
||||
return err;
|
||||
state = gpgrt_b64enc_start (es_stdout, NULL);
|
||||
if (!state)
|
||||
return gpg_error_from_syserror ();
|
||||
|
||||
line = xmalloc (10 + 6 + 13 + strlen (pattern)*3 + 1);
|
||||
|
||||
|
@ -885,13 +885,13 @@ do_lookup (assuan_context_t ctx, const char *pattern)
|
|||
|
||||
|
||||
err = assuan_transact (ctx, line,
|
||||
data_cb, &state,
|
||||
data_cb, state,
|
||||
NULL, NULL,
|
||||
status_cb, NULL);
|
||||
if (opt.verbose > 1)
|
||||
log_info ("response of dirmngr: %s\n", err? gpg_strerror (err): "okay");
|
||||
|
||||
err = b64enc_finish (&state);
|
||||
err = gpgrt_b64enc_finish (state);
|
||||
|
||||
xfree (line);
|
||||
return err;
|
||||
|
|
|
@ -583,7 +583,7 @@ gpg_error_t
|
|||
armor_data (char **r_string, const void *data, size_t datalen)
|
||||
{
|
||||
gpg_error_t err;
|
||||
struct b64state b64state;
|
||||
gpgrt_b64state_t b64state;
|
||||
estream_t fp;
|
||||
long length;
|
||||
char *buffer;
|
||||
|
@ -595,9 +595,15 @@ armor_data (char **r_string, const void *data, size_t datalen)
|
|||
if (!fp)
|
||||
return gpg_error_from_syserror ();
|
||||
|
||||
if ((err=b64enc_start_es (&b64state, fp, "PGP PUBLIC KEY BLOCK"))
|
||||
|| (err=b64enc_write (&b64state, data, datalen))
|
||||
|| (err = b64enc_finish (&b64state)))
|
||||
b64state = gpgrt_b64enc_start (fp, "PGP PUBLIC KEY BLOCK");
|
||||
if (!b64state)
|
||||
{
|
||||
es_fclose (fp);
|
||||
return gpg_error_from_syserror ();
|
||||
}
|
||||
|
||||
if ((err = gpgrt_b64enc_write (b64state, data, datalen))
|
||||
|| (err = gpgrt_b64enc_finish (b64state)))
|
||||
{
|
||||
es_fclose (fp);
|
||||
return err;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue