From 833ba5faa1340aff80a205acbb701d4ae1d594d0 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Fri, 8 Jan 2016 06:33:27 +0100 Subject: common: New put_membuf_cb to replace static membuf_data_cb. * common/membuf.c (put_membuf_cb): New. * agent/call-scd.c (membuf_data_cb): Remove. Change callers to use put_membuf_cb. * common/get-passphrase.c (membuf_data_cb): Ditto. * g10/call-agent.c (membuf_data_cb): Ditto. * sm/call-agent.c (membuf_data_cb): Ditto. -- Signed-off-by: Werner Koch --- common/membuf.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'common/membuf.c') diff --git a/common/membuf.c b/common/membuf.c index f4430a972..fde24f615 100644 --- a/common/membuf.c +++ b/common/membuf.c @@ -116,6 +116,20 @@ put_membuf (membuf_t *mb, const void *buf, size_t len) } +/* A variant of put_membuf accepting a void * and returning a + gpg_error_t (which will always return 0) to be used as a generic + callback handler. This function also allows buffer to be NULL. */ +gpg_error_t +put_membuf_cb (void *opaque, const void *buf, size_t len) +{ + membuf_t *data = opaque; + + if (buf) + put_membuf (data, buf, len); + return 0; +} + + void put_membuf_str (membuf_t *mb, const char *string) { -- cgit v1.2.3